00001 // DasherSettingsInterface.h 00002 // 00004 // 00005 // Copyright (c) 2002 Iain Murray 00006 // 00008 00009 00010 #ifndef __DasherSettingsInterface_h__ 00011 #define __DasherSettingsInterface_h__ 00012 00013 #include "DasherTypes.h" 00014 #include "SettingsStore.h" 00015 00016 namespace Dasher {class CDasherSettingsInterface;} 00017 class Dasher::CDasherSettingsInterface 00018 { 00019 public: 00020 void SettingsDefaults(CSettingsStore* Store); 00021 00022 // These actually affect the way Dasher works 00024 virtual void ChangeAlphabet(const std::string& NewAlphabetID) {}; 00025 00027 virtual void ChangeMaxBitRate(double NewMaxBitRate) {}; 00028 00030 virtual void ChangeLanguageModel(unsigned int NewLanguageModelID) {}; 00031 00033 virtual void ChangeView(unsigned int NewViewID) {}; 00034 00036 virtual void ChangeOrientation(Opts::ScreenOrientations Orientation) {}; 00037 00039 virtual void SetFileEncoding(Opts::FileEncodingFormats Encoding) {}; 00040 00042 virtual void SetScreenSize(long Width, long Height) {}; 00043 00045 virtual void SetDasherFontSize(Dasher::Opts::FontSize fontsize) {}; 00046 00048 virtual void SetDasherDimensions(int dimensions) {}; 00049 00050 // These are recommended options for the Dasher GUI. {{{ They don't actually 00051 // change the way Dasher works. They are part of the Dasher interface 00052 // anyway so that it can handle option saving for you, and to make it 00053 // easy for the Dasher engine to control the GUI later on. }}} 00054 00056 virtual void ShowToolbar(bool Value) {}; 00057 00059 virtual void ShowToolbarText(bool Value) {}; 00060 00062 virtual void ShowToolbarLargeIcons(bool Value) {}; 00063 00065 virtual void ShowSpeedSlider(bool Value) {}; 00066 00068 virtual void FixLayout(bool Value) {}; 00069 00071 virtual void TimeStampNewFiles(bool Value) {}; 00072 00074 virtual void CopyAllOnStop(bool Value) {}; 00075 00077 virtual void SetEditFont(std::string Name, long Size) {}; 00078 00080 virtual void SetDasherFont(std::string Name) {}; 00081 00083 virtual void SetEditHeight(long Value) {}; 00084 }; 00085 00086 00087 #include <string> 00088 00089 namespace Dasher 00090 { 00091 namespace Keys 00092 { 00093 // Standard Option strings. You are encouraged to use these constants. 00094 // ------------------------------------------------------------------- 00095 00096 // bool options 00097 extern const std::string TIME_STAMP; 00098 extern const std::string SHOW_TOOLBAR; 00099 extern const std::string SHOW_TOOLBAR_TEXT; 00100 extern const std::string SHOW_LARGE_ICONS; 00101 extern const std::string FIX_LAYOUT; 00102 extern const std::string SHOW_SLIDER; 00103 extern const std::string COPY_ALL_ON_STOP; 00104 00105 // long options 00106 extern const std::string FILE_ENCODING; 00107 extern const std::string MAX_BITRATE_TIMES100; 00108 extern const std::string SCREEN_ORIENTATION; 00109 extern const std::string VIEW_ID; 00110 extern const std::string LANGUAGE_MODEL_ID; 00111 extern const std::string EDIT_FONT_SIZE; 00112 extern const std::string EDIT_HEIGHT; 00113 extern const std::string SCREEN_WIDTH; 00114 extern const std::string SCREEN_HEIGHT; 00115 extern const std::string DASHER_FONTSIZE; 00116 extern const std::string DASHER_DIMENSIONS; 00117 00118 // string options 00119 extern const std::string ALPHABET_ID; 00120 extern const std::string DASHER_FONT; 00121 extern const std::string EDIT_FONT; 00122 } 00123 } // namespace Dasher 00124 00125 00126 #endif /* #ifndef __DasherSettingsInterface_h__ */
1.3-rc3