My Project
|
00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 #pragma once 00029 #include "Define.h" 00030 #include <shlobj.h> 00031 #include "Theme.h" 00032 #include "LanguageManager.h" 00033 #include "KeyboardLayout.h" 00034 #include "SmartKeyboard.h" 00035 #include "Option.h" 00036 #include "SmartThreadPool.h" 00037 00038 namespace SallyAPI 00039 { 00040 namespace Config 00041 { 00050 00051 class DLL_API_SALLY CConfig 00052 { 00053 private: 00054 static SallyAPI::Config::CConfig* m_pObject; 00055 00056 SallyAPI::System::COption* m_pOption; 00057 SallyAPI::Config::CTheme* m_pTheme; 00058 SallyAPI::Config::CLanguageManager* m_pLanguageLocalization; 00059 SallyAPI::Config::CLanguageManager* m_pSpeechOutputLocalization; 00060 SallyAPI::Config::CLanguageManager* m_pSpeechInputLocalization; 00061 SallyAPI::Config::CKeyboardLayout* m_pKeyboardLayout; 00062 SallyAPI::Config::CSmartKeyboard* m_pSmartKeyboard; 00063 00064 CConfig(); 00065 ~CConfig(); 00066 public: 00067 static SallyAPI::Config::CConfig* GetInstance(); 00068 static void DeleteInstance(); 00069 00070 static std::string GetDefaultLanguage(); 00071 00072 SallyAPI::System::COption* GetOption(); 00073 CTheme* GetTheme(); 00074 SallyAPI::Config::CLanguageManager* GetLanguageLocalization(); 00075 SallyAPI::Config::CLanguageManager* GetSpeechOutputLocalization(); 00076 SallyAPI::Config::CLanguageManager* GetSpeechInputLocalization(); 00077 SallyAPI::Config::CKeyboardLayout* GetKeyboardLayout(); 00078 SallyAPI::Config::CSmartKeyboard* GetSmartKeyboard(); 00079 00080 void ReloadTheme(); 00081 void ReloadLanguage(); 00082 void ReloadOutputLanguage(); 00083 void ReloadInputLanguage(); 00084 void ReloadKeyboard(); 00085 }; 00086 } 00087 }