Index: src/ch/OptionsDlg.cpp =================================================================== diff -u -N -rcb4e9d4b60d62b25ae2cf556c0642601af56c787 -r44a2ec5f1eb0a435b56daef42ef5fe3b7a91da0d --- src/ch/OptionsDlg.cpp (.../OptionsDlg.cpp) (revision cb4e9d4b60d62b25ae2cf556c0642601af56c787) +++ src/ch/OptionsDlg.cpp (.../OptionsDlg.cpp) (revision 44a2ec5f1eb0a435b56daef42ef5fe3b7a91da0d) @@ -48,7 +48,7 @@ DDX_Control(pDX, IDC_PROPERTIES_LIST, m_ctlProperties); } -BEGIN_MESSAGE_MAP(COptionsDlg,ictranslate::CLanguageDialog) +BEGIN_MESSAGE_MAP(COptionsDlg, ictranslate::CLanguageDialog) ON_BN_CLICKED(IDC_APPLY_BUTTON, OnApplyButton) END_MESSAGE_MAP() @@ -63,7 +63,13 @@ m_ctlProperties.AddString(text, ID_PROPERTY_COMBO_LIST, IDS_BOOLTEXT_STRING, (value)) #define PROP_UINT(text, value)\ - m_ctlProperties.AddString(text, ID_PROPERTY_TEXT, _itot(boost::numeric_cast((value)), m_szBuffer, 10), 0) + do\ + {\ + const size_t stBufferSize = 16;\ + wchar_t szBuffer[stBufferSize];\ + m_ctlProperties.AddString(text, ID_PROPERTY_TEXT, _itot(boost::numeric_cast((value)), szBuffer, stBufferSize), 0);\ + }\ + while(false) #define PROP_COMBO(text, prop_text, value)\ m_ctlProperties.AddString(text, ID_PROPERTY_COMBO_LIST, prop_text, boost::numeric_cast((value))) @@ -75,7 +81,13 @@ m_ctlProperties.AddString(text, ID_PROPERTY_PATH, (value)+CString(GetResManager().LoadString(prop_text)), 0) #define PROP_CUSTOM_UINT(text, value, callback, param)\ - m_ctlProperties.AddString(text, ID_PROPERTY_CUSTOM, CString(_itot(boost::numeric_cast((value)), m_szBuffer, 10)), callback, this, param, 0) + do\ + {\ + const size_t stBufferSize = 16;\ + wchar_t szBuffer[stBufferSize];\ + m_ctlProperties.AddString(text, ID_PROPERTY_CUSTOM, CString(_itot(boost::numeric_cast((value)), szBuffer, stBufferSize)), callback, this, param, 0);\ + }\ + while(false) #define SKIP_SEPARATOR(pos)\ pos++ @@ -103,11 +115,8 @@ m_cvShortcuts.clear(); GetPropValue(rConfig, m_cvShortcuts); - _tcscpy(m_szLangPath, _T("\\Langs\\")); - GetApp().ExpandPath(m_szLangPath); + GetResManager().Scan(GetApp().ExpandPath(_T("\\Langs\\")), &m_vld); - GetResManager().Scan(m_szLangPath, &m_vld); - // some attributes m_ctlProperties.SetBkColor(RGB(255, 255, 255)); m_ctlProperties.SetTextColor(RGB(80, 80, 80)); @@ -451,38 +460,43 @@ assert(lpszSeparator); if(!lpszSeparator) return _T(""); - _tcscpy(m_szBuffer, GetResManager().LoadString(uiBase+0)); - for (int i=1;i