svnno****@sourc*****
svnno****@sourc*****
2010年 1月 8日 (金) 12:36:30 JST
Revision: 3724 http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=3724 Author: doda Date: 2010-01-08 12:36:30 +0900 (Fri, 08 Jan 2010) Log Message: ----------- ã³ã³ããã¼ã«ã¡ãã¥ã¼ããæå¹/ç¡å¹ãå¶å¾¡åºæ¥ãããã«ããã Modified Paths: -------------- trunk/TTXSamples/TTXRecurringCommand/TTXRecurringCommand.c -------------- next part -------------- Modified: trunk/TTXSamples/TTXRecurringCommand/TTXRecurringCommand.c =================================================================== --- trunk/TTXSamples/TTXRecurringCommand/TTXRecurringCommand.c 2010-01-07 10:23:31 UTC (rev 3723) +++ trunk/TTXSamples/TTXRecurringCommand/TTXRecurringCommand.c 2010-01-08 03:36:30 UTC (rev 3724) @@ -16,6 +16,7 @@ #define IdRecurringTimer 3001 #define ID_MENU_SETUP 55500 +#define ID_MENU_CONTROL 55501 #define SECTION "TTXRecurringCommand" @@ -29,6 +30,7 @@ PReadIniFile origReadIniFile; PWriteIniFile origWriteIniFile; HMENU SetupMenu; + HMENU ControlMenu; int interval; BOOL enable; int cmdLen; @@ -390,10 +392,29 @@ UINT flag = MF_BYCOMMAND | MF_STRING | MF_ENABLED; pvar->SetupMenu = GetSetupMenu(menu); + pvar->ControlMenu = GetControlMenu(menu); InsertMenu(pvar->SetupMenu, ID_SETUP_ADDITIONALSETTINGS, flag, ID_MENU_SETUP, "Rec&urring command"); + + if (pvar->enable) { + flag |= MF_CHECKED; + } + + InsertMenu(pvar->ControlMenu, ID_CONTROL_MACRO, flag, ID_MENU_CONTROL, "Rec&urring command"); + InsertMenu(pvar->ControlMenu, ID_CONTROL_MACRO, MF_BYCOMMAND | MF_SEPARATOR, 0, NULL); } +static void PASCAL FAR TTXModifyPopupMenu(HMENU menu) { + if (menu==pvar->ControlMenu) { + if (pvar->enable) { + CheckMenuItem(pvar->ControlMenu, ID_MENU_CONTROL, MF_BYCOMMAND | MF_CHECKED); + } + else { + CheckMenuItem(pvar->ControlMenu, ID_MENU_CONTROL, MF_BYCOMMAND | MF_UNCHECKED); + } + } +} + // // RecurringCommandÝè_CAOÌR[obNÖB // @@ -461,6 +482,17 @@ break; } return 1; + + case ID_MENU_CONTROL: + pvar->enable = !pvar->enable; + if (pvar->enable) { + SetTimer(pvar->cv->HWin, IdRecurringTimer, + pvar->interval * 1000, RecurringTimerProc); + } + else { + KillTimer(pvar->cv->HWin, IdRecurringTimer); + } + return 1; } return 0; } @@ -476,7 +508,7 @@ TTXCloseTCP, NULL, // TTXSetWinSize, TTXModifyMenu, - NULL, // TTXModifyPopupMenu, + TTXModifyPopupMenu, TTXProcessCommand, NULL, // TTXEnd, NULL, // TTXSetCommandLine,