Revision: 11012 https://osdn.net/projects/ttssh2/scm/svn/commits/11012 Author: zmatsuo Date: 2023-10-19 21:51:38 +0900 (Thu, 19 Oct 2023) Log Message: ----------- VTウィンドウでF1が使用できなかったので修正 - F1キーに設定されたキーのシーケンスは送出されない。 - WM_KEYDOWN メッセージが送られてこなくなる - WM_HELP で処理を追加したため - ヘルプを出す必要がない時は WM_HELP で何も処理を行わないようにした - 何も処理しないと WM_KEYDOWN + VK_F1 が送られてきて従来通りの動作となる - ヘルプファイルがあるのに開けませんというエラーが出ていた - 無効な help id を指定していたため Modified Paths: -------------- trunk/teraterm/teraterm/commlib.c trunk/teraterm/teraterm/vtwin.cpp -------------- next part -------------- Modified: trunk/teraterm/teraterm/commlib.c =================================================================== --- trunk/teraterm/teraterm/commlib.c 2023-10-16 21:21:42 UTC (rev 11011) +++ trunk/teraterm/teraterm/commlib.c 2023-10-19 12:51:38 UTC (rev 11012) @@ -418,6 +418,7 @@ }; VtwinSetHelpId(HlpAboutQandaConnection); TTMessageBoxW(cv->HWin, &info, ts->UILanguageFileW); + VtwinSetHelpId(0); } goto BreakSC; } Modified: trunk/teraterm/teraterm/vtwin.cpp =================================================================== --- trunk/teraterm/teraterm/vtwin.cpp 2023-10-16 21:21:42 UTC (rev 11011) +++ trunk/teraterm/teraterm/vtwin.cpp 2023-10-19 12:51:38 UTC (rev 11012) @@ -141,7 +141,7 @@ typedef struct { char dbcs_lead_byte; UINT monitor_DPI; // \x83E\x83B\x83\x93\x83h\x83E\x82\xAA\x95\\x8E\xA6\x82\xB3\x82\xEA\x82Ă\xA2\x82\xE9\x83f\x83B\x83X\x83v\x83\x8C\x83C\x82\xCCDPI - DWORD help_data; + DWORD help_id; // WM_HELP\x83\x81\x83b\x83Z\x81[\x83W\x8E\x9E\x81A\x95\\x8E\xA6\x82\xB7\x82\xE9\x83w\x83\x8B\x83vID(0\x82ŕ\\x8E\xA6\x82\xB5\x82Ȃ\xA2) } vtwin_work_t; static vtwin_work_t vtwin_work; @@ -329,6 +329,7 @@ #endif vtwin_work.dbcs_lead_byte = 0; vtwin_work.monitor_DPI = 0; + vtwin_work.help_id = 0; // UnicodeDebugParam { @@ -5328,11 +5329,21 @@ break; } case WM_HELP: { + // \x8E\x9F\x82̏ꍇ\x82ɔ\xAD\x90\xB6\x82\xB7\x82\xE9 + // - F1 \x83L\x81[\x89\x9F\x89\xBA + // - MessageBox() \x82\xCC MB_HELP \x82\xCC HELP \x83{\x83^\x83\x93\x89\x9F\x89\xBA + // - F1\x83L\x81[\x89\x9F\x89\xBA\x8E\x9E\x81AWM_HELP, WM_KEYDOWN, KEYUP \x82ƃ\x81\x83b\x83Z\x81[\x83W\x82\xAA\x94\xAD\x90\xB6\x82\xB7\x82\xE9 + // - WM_HELP \x82ʼn\xBD\x82\xA9\x8F\x88\x97\x9D\x82\xF0\x82\xB5\x82Ă\xA2\x82\xE9\x82\xC6 WM_KEYDOWN \x82\xAA\x82Ȃ\xAD\x82Ȃ\xE9\x82悤\x82\xBE vtwin_work_t *w = &vtwin_work; - OpenHelpCV(&cv, HH_HELP_CONTEXT, w->help_data); - break; + if (w->help_id != 0) { + // \x83w\x83\x8B\x83v\x82\xAA\x83Z\x83b\x83g\x82\xB3\x82\xEA\x82Ă\xA2\x82\xE9 + OpenHelpCV(&cv, HH_HELP_CONTEXT, w->help_id); + break; + } + goto default_proc; } default: + default_proc: retval = DefWindowProc(msg, wp, lp); break; } @@ -5340,14 +5351,18 @@ } /** - * WM_HELP \x83\x81\x83b\x83Z\x81[\x83W\x82\xF0\x8E\xF3\x90M\x82\xB5\x82\xBD\x82Ƃ\xAB\x95\\x8E\xA6\x82\xB7\x82\xE9\x83w\x83\x8B\x83v\x82̃w\x83\x8B\x83vID\x82\xF0\x90ݒ肷\x82\xE9 + * WM_HELP \x83\x81\x83b\x83Z\x81[\x83W\x82\xF0\x8E\xF3\x90M\x82\xB5\x82\xBD\x82Ƃ\xAB\x95\\x8E\xA6\x82\xB7\x82\xE9\x83w\x83\x8B\x83v\x82̃w\x83\x8B\x83vID\x82\xF0\x90ݒ\xE8/\x89\xF0\x8F\x9C\x82\xB7\x82\xE9 * - * MessageBox() \x82\xCC uType \x82\xC9 MB_HELP \x82\xF0\x90ݒ肷\x82\xE9\x82\xC6 - * \x95\\x8E\xA6\x82\xB3\x82\xEA\x82\xE9HELP\x83{\x83^\x83\x93\x82\xF0\x89\x9F\x82\xB5\x82\xBD\x82Ƃ\xAB\x82\xC9 - * WM_HELP \x82\xAA\x90e\x83E\x83B\x83\x93\x83h\x83E\x82ɑ\x97\x82\xE7\x82\xEA\x82\xE9 + * @param data 0 \x83w\x83\x8B\x83v\x89\xF0\x8F\x9C + * 0\x88ȊO \x83w\x83\x8B\x83vID + * + * - MessageBox() \x82\xCC uType \x82\xC9 MB_HELP \x82\xF0\x90ݒ莞\x81AHELP\x83{\x83^\x83\x93\x82\xAA\x95\\x8E\xA6\x82\xB3\x82\xEA\x82\xE9 + * - VTWindows \x82\xF0\x90e\x82ɂ\xB5\x82\xBD MessageBox() \x82\xCC HELP\x83{\x83^\x83\x93\x82\xAA\x89\x9F\x82\xB3\x82ꂽ\x82Ƃ\xAB\x81A + * \x82\xB1\x82\xCCAPI\x82Őݒ肵\x82\xBD\x83w\x83\x8B\x83vID\x82̃w\x83\x8B\x83v\x82\xAA\x95\\x8E\xA6\x82\xB3\x82\xEA\x82\xE9 + * - MessageBox() \x82\xF0\x95\xB6\x82\xBD\x82Ƃ\xAB\x82\xC9 0\x82\xF0\x83Z\x83b\x83g\x82\xB7\x82邱\x82\xC6 */ -void VtwinSetHelpId(DWORD data) +void VtwinSetHelpId(DWORD help_id) { vtwin_work_t *w = &vtwin_work; - w->help_data = data; + w->help_id = help_id; }