1 #pragma once 2 #include "afxwin.h" 3 #include "afxcmn.h" 4 #include "resource.h" 5 6 #define MAX_STRING_TABLE_STRINGS (10 * 1024) 7 8 // config_languages_dlg dialog 9 10 class config_languages_dlg : public express_dialog 11 { 12 DECLARE_DYNAMIC(config_languages_dlg) 13 14 public: 15 config_languages_dlg(CWnd* pParent = NULL); // standard constructor 16 virtual ~config_languages_dlg(); 17 virtual BOOL OnInitDialog(); 18 static int GetLanguageNameIndex(CString &findname); 19 static int GetLanguageIdIndex(CString &findid); 20 static CString BuildCombinedLanguageName(char *name, char *symbol); 21 static CString BuildCombinedLanguageName(int index); 22 static CString GetLanguageId(CString &findname); 23 static CString GetLanguageId(int index); 24 static CString GetLanguageName(int index); 25 static int GetStringTableIndexFromLanguageIndex(studiox_project *project, int seek_language); 26 static CString ConvertOldLanguageName(CString &old_language_name); 27 28 protected: 29 void AnnounceLanguageNumberChange(); 30 31 // Dialog Data 32 enum { IDD = IDD_CONFIG_LANGUAGES }; 33 34 protected: 35 virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support 36 DECLARE_MESSAGE_MAP() 37 public: 38 express_combobox mLanguageNameCombo; 39 CButton mStaticallyDefined; 40 CButton mBidiTextSupportBox; 41 CButton mBidiTextGenerateBox; 42 CButton mThaiGlyphShapingSupport; 43 CButton mGenAdjustedThaiString; 44 45 private: 46 int mNumLanguages; 47 int mStartLanguages; 48 49 CArray<language_info> mLanguages; 50 51 public: 52 CSpinButtonCtrl mSpinLanguageIndex; 53 afx_msg void OnBnClickedAddLanguage(); 54 afx_msg void OnBnClickedDeleteLanguage(); 55 afx_msg void OnBnClickedCancel(); 56 afx_msg void OnBnClickedOk(); 57 afx_msg void OnDeltaposSpinLanguageIndex(NMHDR *pNMHDR, LRESULT *pResult); 58 afx_msg void OnClickSupportBidiTextBox(); 59 afx_msg void OnClickedThaiGlyphShapingSupport(); 60 afx_msg LRESULT OnTestMessage(WPARAM wParam, LPARAM lParam); 61 }; 62