Revision: 10474 https://osdn.net/projects/ttssh2/scm/svn/commits/10474 Author: zmatsuo Date: 2023-01-11 23:41:29 +0900 (Wed, 11 Jan 2023) Log Message: ----------- TTGetLangStrW()のlngファイル引数をUnicodeへ変更 - TTGetLangStrW() - 引数iniファイル(UILanguageFile) を wchar_t * に変更 - プロトタイプを ttlib.h から i18n.h へ移動 - TTMessageBoxA() を TTMessageBoxW() へ置き換え - すぐに直せるか所のみ Modified Paths: -------------- trunk/teraterm/common/i18n.h trunk/teraterm/common/i18n_static.c trunk/teraterm/common/ttlib.h trunk/teraterm/common/ttlib_static_cpp.cpp trunk/teraterm/teraterm/addsetting.cpp trunk/teraterm/teraterm/commlib.c trunk/teraterm/teraterm/filesys.cpp -------------- next part -------------- Modified: trunk/teraterm/common/i18n.h =================================================================== --- trunk/teraterm/common/i18n.h 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/common/i18n.h 2023-01-11 14:41:29 UTC (rev 10474) @@ -82,6 +82,7 @@ int GetI18nLogfontAW(const char *section, const char *key, PLOGFONTA logfont, int ppi, const wchar_t *iniFile); int GetI18nLogfontAA(const char *section, const char *key, PLOGFONTA logfont, int ppi, const char *iniFile); int GetI18nLogfontW(const wchar_t *section, const wchar_t *key, PLOGFONTW logfont, int ppi, const wchar_t *iniFile); +wchar_t *TTGetLangStrW(const char *section, const char *key, const wchar_t *def, const wchar_t *UILanguageFile); #ifdef __cplusplus } Modified: trunk/teraterm/common/i18n_static.c =================================================================== --- trunk/teraterm/common/i18n_static.c 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/common/i18n_static.c 2023-01-11 14:41:29 UTC (rev 10474) @@ -77,10 +77,10 @@ return size; } -wchar_t *TTGetLangStrW(const char *section, const char *key, const wchar_t *def, const char *UILanguageFile) +wchar_t *TTGetLangStrW(const char *section, const char *key, const wchar_t *def, const wchar_t *UILanguageFile) { wchar_t *str; - GetI18nStrWA(section, key, def, UILanguageFile, &str); + GetI18nStrWW(section, key, def, UILanguageFile, &str); return str; } Modified: trunk/teraterm/common/ttlib.h =================================================================== --- trunk/teraterm/common/ttlib.h 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/common/ttlib.h 2023-01-11 14:41:29 UTC (rev 10474) @@ -196,7 +196,6 @@ int TTMessageBoxA(HWND hWnd, const TTMessageBoxInfoW *info, const char *UILanguageFile, ...); int TTMessageBoxW(HWND hWnd, const TTMessageBoxInfoW *info, const wchar_t *UILanguageFile, ...); -wchar_t *TTGetLangStrW(const char *section, const char *key, const wchar_t *def, const char *UILanguageFile); wchar_t *GetClipboardTextW(HWND hWnd, BOOL empty); char *GetClipboardTextA(HWND hWnd, BOOL empty); BOOL CBSetTextW(HWND hWnd, const wchar_t *str_w, size_t str_len); Modified: trunk/teraterm/common/ttlib_static_cpp.cpp =================================================================== --- trunk/teraterm/common/ttlib_static_cpp.cpp 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/common/ttlib_static_cpp.cpp 2023-01-11 14:41:29 UTC (rev 10474) @@ -124,12 +124,13 @@ { const char *section = info->section; const UINT uType = info->uType; + wchar_t *UILanguageFileW = ToWcharA(UILanguageFile); wchar_t *title; if (info->title_key == NULL) { title = _wcsdup(info->title_default); } else { - title = TTGetLangStrW(section, info->title_key, info->title_default, UILanguageFile); + title = TTGetLangStrW(section, info->title_key, info->title_default, UILanguageFileW); } wchar_t *message = NULL; @@ -141,7 +142,7 @@ vaswprintf(&message, format, ap); } else { - wchar_t *format = TTGetLangStrW(section, info->message_key, info->message_default, UILanguageFile); + wchar_t *format = TTGetLangStrW(section, info->message_key, info->message_default, UILanguageFileW); va_list ap; va_start(ap, UILanguageFile); vaswprintf(&message, format, ap); @@ -152,6 +153,7 @@ free(title); free(message); + free(UILanguageFileW); return r; } Modified: trunk/teraterm/teraterm/addsetting.cpp =================================================================== --- trunk/teraterm/teraterm/addsetting.cpp 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/teraterm/addsetting.cpp 2023-01-11 14:41:29 UTC (rev 10474) @@ -596,9 +596,9 @@ TTOPENFILENAMEW ofn = {}; ofn.hwndOwner = m_hWnd;GetSafeHwnd(); - ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_FILTER", L"txt(*.txt)\\0*.txt\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile); + ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_FILTER", L"txt(*.txt)\\0*.txt\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFileW); ofn.lpstrFile = def; - ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_TITLE", L"Choose a file including strings for ConfirmChangePaste", ts.UILanguageFile); + ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_CONFIRM_STRING_APP_TITLE", L"Choose a file including strings for ConfirmChangePaste", ts.UILanguageFileW); ofn.lpstrInitialDir = ts.HomeDirW; ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY; wchar_t *filename; @@ -1576,9 +1576,9 @@ TTOPENFILENAMEW ofn = {}; ofn.hwndOwner = m_hWnd; - ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_FILTER", L"exe(*.exe)\\0*.exe\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFile); + ofn.lpstrFilter = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_FILTER", L"exe(*.exe)\\0*.exe\\0all(*.*)\\0*.*\\0\\0", ts.UILanguageFileW); ofn.lpstrFile = editor; - ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_TITLE", L"Choose a executing file with launching logging file", ts.UILanguageFile); + ofn.lpstrTitle = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGVIEW_APP_TITLE", L"Choose a executing file with launching logging file", ts.UILanguageFileW); ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY; wchar_t *filew; BOOL ok = TTGetOpenFileNameW(&ofn, &filew); @@ -1595,7 +1595,7 @@ case IDC_DEFAULTPATH_PUSH | (BN_CLICKED << 16): // \x83\x8D\x83O\x83f\x83B\x83\x8C\x83N\x83g\x83\x8A\x82̑I\x91\xF0\x83_\x83C\x83A\x83\x8D\x83O { - wchar_t *title = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGDIR_TITLE", L"Select log folder", ts.UILanguageFile); + wchar_t *title = TTGetLangStrW("Tera Term", "FILEDLG_SELECT_LOGDIR_TITLE", L"Select log folder", ts.UILanguageFileW); wchar_t *default_path; hGetDlgItemTextW(m_hWnd, IDC_DEFAULTPATH_EDITOR, &default_path); if (default_path[0] == 0) { @@ -2176,7 +2176,7 @@ switch (wParam) { case IDC_SELECT_FILE | (BN_CLICKED << 16): // Cygwin install \x83f\x83B\x83\x8C\x83N\x83g\x83\x8A\x82̑I\x91\xF0\x83_\x83C\x83A\x83\x8D\x83O - wchar_t *title = TTGetLangStrW("Tera Term", "DIRDLG_CYGTERM_DIR_TITLE", L"Select Cygwin directory", ts.UILanguageFile); + wchar_t *title = TTGetLangStrW("Tera Term", "DIRDLG_CYGTERM_DIR_TITLE", L"Select Cygwin directory", ts.UILanguageFileW); wchar_t *buf; hGetDlgItemTextW(m_hWnd, IDC_CYGWIN_PATH, &buf); wchar_t *path; @@ -2287,7 +2287,7 @@ page = FontPageCreate(hInstance, &ts); AddPage(page); - wchar_t *title = TTGetLangStrW("Tera Term", "DLG_TABSHEET_TITLE", L"Tera Term: Additional settings", ts.UILanguageFile); + wchar_t *title = TTGetLangStrW("Tera Term", "DLG_TABSHEET_TITLE", L"Tera Term: Additional settings", ts.UILanguageFileW); SetCaption(title); free(title); } Modified: trunk/teraterm/teraterm/commlib.c =================================================================== --- trunk/teraterm/teraterm/commlib.c 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/teraterm/commlib.c 2023-01-11 14:41:29 UTC (rev 10474) @@ -356,7 +356,7 @@ "MSG_WINSOCK_ERROR", L"Cannot use winsock", MB_TASKMODAL | MB_ICONEXCLAMATION, }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); } InvalidHost = TRUE; } @@ -416,7 +416,7 @@ "MSG_INVALID_HOST_ERROR", L"Invalid host", MB_TASKMODAL | MB_ICONEXCLAMATION }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); } goto BreakSC; } @@ -455,15 +455,15 @@ switch (err) { case ERROR_FILE_NOT_FOUND: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_NOTFOUND", L"Cannot open %s. Not found.", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_NOTFOUND", L"Cannot open %s. Not found.", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW); break; case ERROR_ACCESS_DENIED: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_DENIED", L"Cannot open %s. Access denied.", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_DENIED", L"Cannot open %s. Access denied.", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW); break; default: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR", L"Cannot open %s. (0x%08x)", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR", L"Cannot open %s. (0x%08x)", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW, err); break; } @@ -470,7 +470,7 @@ free(format); free(PW); - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile, ErrMsgW); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW, ErrMsgW); } InvalidHost = TRUE; } @@ -503,7 +503,7 @@ "MSG_CANTOPEN_FILE_ERROR", L"Cannot open file", MB_TASKMODAL | MB_ICONEXCLAMATION }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); } } else { @@ -534,7 +534,7 @@ L"A valid pipe name has the form\n" L"\"\\\\<ServerName>\\pipe\\<PipeName>\"", GetLastError()); - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile, ErrMsgW); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW, ErrMsgW); break; } @@ -555,19 +555,19 @@ switch (err) { case ERROR_FILE_NOT_FOUND: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_NOTFOUND", L"Cannot open %s. Not found.", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_NOTFOUND", L"Cannot open %s. Not found.", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW); break; case ERROR_ACCESS_DENIED: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_DENIED", L"Cannot open %s. Access denied.", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_DENIED", L"Cannot open %s. Access denied.", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW); break; case ERROR_PIPE_BUSY: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_PIPEBUSY", L"Cannot open %s. Pipe is busy.", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR_PIPEBUSY", L"Cannot open %s. Pipe is busy.", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW); break; default: - format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR", L"Cannot open %s. (0x%08x)", ts->UILanguageFile); + format = TTGetLangStrW("Tera Term", "MSG_CANTOPEN_ERROR", L"Cannot open %s. (0x%08x)", ts->UILanguageFileW); _snwprintf_s(ErrMsgW, _countof(ErrMsgW), _TRUNCATE, format, PW, err); break; } @@ -574,7 +574,7 @@ free(format); free(PW); - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile, ErrMsgW); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW, ErrMsgW); } InvalidHost = TRUE; } @@ -736,7 +736,7 @@ NULL, NULL, MB_TASKMODAL | MB_ICONEXCLAMATION }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile, ErrMsgW); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW, ErrMsgW); } PostMessage(cv->HWin, WM_USER_COMMNOTIFY, 0, FD_CLOSE); cv->RetryWithOtherProtocol = FALSE; @@ -768,7 +768,7 @@ "MSG_TT_ERROR", L"Can't create thread", MB_TASKMODAL | MB_ICONEXCLAMATION }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); } break; @@ -795,7 +795,7 @@ "MSG_TT_ERROR", L"Can't create thread", MB_TASKMODAL | MB_ICONEXCLAMATION }; - TTMessageBoxA(cv->HWin, &info, ts->UILanguageFile); + TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); } break; } Modified: trunk/teraterm/teraterm/filesys.cpp =================================================================== --- trunk/teraterm/teraterm/filesys.cpp 2023-01-11 14:41:17 UTC (rev 10473) +++ trunk/teraterm/teraterm/filesys.cpp 2023-01-11 14:41:29 UTC (rev 10474) @@ -97,7 +97,7 @@ } wchar_t *DlgCaption; - wchar_t *uimsg = TTGetLangStrW("Tera Term", "FILEDLG_TRANS_TITLE_SENDFILE", L"Send file", ts.UILanguageFile); + wchar_t *uimsg = TTGetLangStrW("Tera Term", "FILEDLG_TRANS_TITLE_SENDFILE", L"Send file", ts.UILanguageFileW); aswprintf(&DlgCaption, L"Tera Term: %s", uimsg); free(uimsg);