Tera Termの個人的な作業用リポジトリ
Revision | c8ab6a09c888ce4d3e536d968035c7685f226982 (tree) |
---|---|
Time | 2019-03-15 00:54:31 |
Author | zmatsuo <zmatsuo@user...> |
Commiter | zmatsuo |
LoadIME()#ttime.cのエラー表示処理を呼び元のvtdisp.cに移動した
git-svn-id: svn+ssh://svn.osdn.net/svnroot/ttssh2/trunk@7486 f5f01b69-1e22-0410-acbf-894ab4bd6246
@@ -45,7 +45,8 @@ | ||
45 | 45 | #include "buffer.h" // for BuffGetCurrentLineData() |
46 | 46 | #endif |
47 | 47 | |
48 | -#if 0 // #ifndef _IMM_ | |
48 | +// imm.h が include できれば _IMM_ が define される → このブロック不要? | |
49 | +#ifndef _IMM_ | |
49 | 50 | #define _IMM_ |
50 | 51 | |
51 | 52 | typedef DWORD HIMC; |
@@ -81,32 +82,7 @@ static TImmSetOpenStatus PImmSetOpenStatus; | ||
81 | 82 | static HANDLE HIMEDLL = NULL; |
82 | 83 | static LOGFONTA lfIME; |
83 | 84 | |
84 | -#if 1 | |
85 | -static void show_message() | |
86 | -{ | |
87 | -#if 0 | |
88 | - PTTSet tempts; | |
89 | -#endif | |
90 | - char uimsg[MAX_UIMSG]; | |
91 | - get_lang_msg("MSG_TT_ERROR", uimsg, sizeof(uimsg), "Tera Term: Error", ts.UILanguageFile); | |
92 | - get_lang_msg("MSG_USE_IME_ERROR", ts.UIMsg, sizeof(ts.UIMsg), "Can't use IME", ts.UILanguageFile); | |
93 | - MessageBoxA(0,ts.UIMsg,uimsg,MB_ICONEXCLAMATION); | |
94 | - WritePrivateProfileStringA("Tera Term","IME","off",ts.SetupFName); | |
95 | - ts.UseIME = 0; | |
96 | -#if 0 | |
97 | - tempts = (PTTSet)malloc(sizeof(TTTSet)); | |
98 | - if (tempts!=NULL) | |
99 | - { | |
100 | - GetDefaultSet(tempts); | |
101 | - tempts->UseIME = 0; | |
102 | - ChangeDefaultSet(tempts,NULL); | |
103 | - free(tempts); | |
104 | - } | |
105 | -#endif | |
106 | -} | |
107 | -#endif | |
108 | - | |
109 | -BOOL LoadIME() | |
85 | +BOOL LoadIME(void) | |
110 | 86 | { |
111 | 87 | BOOL Err; |
112 | 88 | char imm32_dll[MAX_PATH]; |
@@ -117,7 +93,6 @@ BOOL LoadIME() | ||
117 | 93 | HIMEDLL = LoadLibraryA(imm32_dll); |
118 | 94 | if (HIMEDLL == NULL) |
119 | 95 | { |
120 | - show_message(); | |
121 | 96 | return FALSE; |
122 | 97 | } |
123 | 98 |
@@ -179,7 +154,7 @@ void FreeIME(HWND hWnd) | ||
179 | 154 | FreeLibrary(HTemp); |
180 | 155 | } |
181 | 156 | |
182 | -BOOL CanUseIME() | |
157 | +BOOL CanUseIME(void) | |
183 | 158 | { |
184 | 159 | return (HIMEDLL != NULL); |
185 | 160 | } |
@@ -280,7 +255,8 @@ BOOL GetIMEOpenStatus(HWND hWnd) | ||
280 | 255 | |
281 | 256 | } |
282 | 257 | |
283 | -void SetIMEOpenStatus(HWND hWnd, BOOL stat) { | |
258 | +void SetIMEOpenStatus(HWND hWnd, BOOL stat) | |
259 | +{ | |
284 | 260 | HIMC hIMC; |
285 | 261 | |
286 | 262 | if (HIMEDLL==NULL) return; |
@@ -34,9 +34,9 @@ extern "C" { | ||
34 | 34 | #endif |
35 | 35 | |
36 | 36 | /* proto types */ |
37 | -BOOL LoadIME(); | |
37 | +BOOL LoadIME(void); | |
38 | 38 | void FreeIME(HWND hWnd); |
39 | -BOOL CanUseIME(); | |
39 | +BOOL CanUseIME(void); | |
40 | 40 | void SetConversionWindow(HWND HWnd, int X, int Y); |
41 | 41 | void SetConversionLogFont(HWND HWnd, PLOGFONTA lf); |
42 | 42 | BOOL GetIMEOpenStatus(HWND hWnd); |
@@ -2058,8 +2058,14 @@ void ResetIME() | ||
2058 | 2058 | { |
2059 | 2059 | if (ts.UseIME==0) |
2060 | 2060 | FreeIME(HVTWin); |
2061 | - else if (! LoadIME()) | |
2061 | + else if (! LoadIME()) { | |
2062 | + char uimsg[MAX_UIMSG]; | |
2063 | + get_lang_msg("MSG_TT_ERROR", uimsg, sizeof(uimsg), "Tera Term: Error", ts.UILanguageFile); | |
2064 | + get_lang_msg("MSG_USE_IME_ERROR", ts.UIMsg, sizeof(ts.UIMsg), "Can't use IME", ts.UILanguageFile); | |
2065 | + MessageBoxA(0,ts.UIMsg,uimsg,MB_ICONEXCLAMATION); | |
2066 | + WritePrivateProfileStringA("Tera Term","IME","off",ts.SetupFName); | |
2062 | 2067 | ts.UseIME = 0; |
2068 | + } | |
2063 | 2069 | |
2064 | 2070 | if (ts.UseIME>0) |
2065 | 2071 | { |
@@ -3226,22 +3226,23 @@ LRESULT CVTWindow::OnIMEComposition(WPARAM wParam, LPARAM lParam) | ||
3226 | 3226 | size_t len; |
3227 | 3227 | const wchar_t *lpstr = GetConvString(HVTWin, wParam, lParam, &len); |
3228 | 3228 | if (lpstr != NULL) { |
3229 | + const wchar_t *output_wstr = lpstr; | |
3229 | 3230 | if (len == 1 && ControlKey()) { |
3230 | 3231 | const static wchar_t code_ctrl_space = 0; |
3231 | 3232 | const static wchar_t code_ctrl_backslash = 0x1c; |
3232 | 3233 | switch(*lpstr) { |
3233 | 3234 | case 0x20: |
3234 | - lpstr = &code_ctrl_space; | |
3235 | + output_wstr = &code_ctrl_space; | |
3235 | 3236 | break; |
3236 | 3237 | case 0x5c: // Ctrl-\ support for NEC-PC98 |
3237 | - lpstr = &code_ctrl_backslash; | |
3238 | + output_wstr = &code_ctrl_backslash; | |
3238 | 3239 | break; |
3239 | 3240 | } |
3240 | 3241 | } |
3241 | 3242 | if (ts.LocalEcho>0) { |
3242 | - CommTextEchoW(&cv,lpstr,len); | |
3243 | + CommTextEchoW(&cv,output_wstr,len); | |
3243 | 3244 | } |
3244 | - CommTextOutW(&cv,lpstr,len); | |
3245 | + CommTextOutW(&cv,output_wstr,len); | |
3245 | 3246 | free((void *)lpstr); |
3246 | 3247 | return 0; |
3247 | 3248 | } |