#ifndef _GoogleTranslatorDemo_main_h_ #define _GoogleTranslatorDemo_main_h_ #include #include #include "NeedAdd.h" using namespace Upp; #define IMAGECLASS GoogleTranslatorDemoImg #define IMAGEFILE #include #define LAYOUTFILE #include class GoogleTranslatorDemo : public WithMainWindow { public: typedef GoogleTranslatorDemo CLASSNAME; GoogleTranslatorDemo(); ~GoogleTranslatorDemo(); void TranslateText(bool show_progress=true); void CorrectTranslatedText(); void Exit(); void Options(); void About(); const VectorMap GetLanguages; Splitter verticalsplitter; WithInputTextForm inputwindow; WithGoogleTranslatorDemoLayout outputwindow; VectorMap languageslist; Progress progress; String sourcetext; String result; String languagefrom; String languageto; String resultuser; volatile Atomic translating, test_test; enum { TIMEID_PROGRESS = Ctrl::TIMEID_COUNT , TIMEID_COUNT , TIMEID_KEYBOARD }; void HttpThread(Gate2 _progress = false); void UpdateProgress(); bool CheckCancel(int, int); void swap(); void Serialize(Stream &s); void OLD_GlobalShortCutHandle(); void GlobalShortCutHandle(); void SetLanguageFromToPos(String lang_from, String lang_to, bool& need_translate); void SetLanguageFromToPos(); void SetLanguagePos(DropList& ctrl, String& lang_key, String& def_key); void TranslateTextInBaloon(); GoogleTranslator googletranslator; //callbacks void useProxyOnChange(); void useProxyAuthOnChange(); private: enum { LAUNCH }; void refreshData(); void mainMenu(Bar& CurrentBar); void menuFile(Bar& CurrentBar); void menuTools(Bar& CurrentBar); void menuHelp(Bar& CurrentBar); void hide(); void launch(); void perform(int NewState); void trayMenu(Bar& CurrentBar); void trayBallonLeftClick(); void MenuSetLanguageFrom(Bar& currentBar, bool& need_translate); void MenuSetLanguageTo(Bar& currentBar, VectorMap &cur_parameter); void MenuTextManagement(Bar& currentBar, bool need_translate); bool trayiconvisible; bool trayiconAlwaysShowTrayIcon; bool hideInTrayIconOnMinimize; bool hideInTrayIconOnClose; bool doNotFormatText; bool isHidden; void onMinimize(); void onClose(); MenuBar menu; int currentLanguage; ArrayMap suportedLanguagies; TrayIcon trayicon; bool useProxy; String proxyHTTPAddress; int proxyHTTPPort; bool useProxyAuth; String proxyHTTPUsername; String proxyHTTPPassword; TimeStop time_stop_shortcut; int time_count_shortcut1, time_count_shortcut2, time_count_shortcut3, time_count_shortcut4; int shortcut_stage; bool AskWhenCloseApplication; int TranslateHotKeyId; TabDlg option_dlg; bool option_dlg_initialized; WithOptionsConnectionLayout tab_options_connection; WithOptionsGeneralLayout tab_options_general; }; #endif