/*------------------------------------------------ Apply changes --------------------------------------------------*/ void OnApply(HWND hDlg) { char s[BUFSIZE_FORMAT]; int i; if(!m_bChanged) return; m_bChanged = FALSE; SetMyRegLong("", "Locale", CBGetItemData(hDlg, IDC_LOCALE, CBGetCurSel(hDlg, IDC_LOCALE))); for(i = IDC_YEAR4; i <= IDC_CUSTOM; i++) { SetMyRegLong("", ENTRY(i), IsDlgButtonChecked(hDlg, i)); } GetDlgItemText(hDlg, IDC_FORMAT, s, BUFSIZE_FORMAT); SetMyRegStr("", "Format", s); if(IsDlgButtonChecked(hDlg, IDC_CUSTOM)) { strcpy(m_CustomFormat, s); SetMyRegStr("", "CustomFormat", m_CustomFormat); } #if TC_ENABLE_SYSINFO SetMyRegLong(NULL, "IntervalSysInfo", UpDown_GetPos(hDlg,IDC_SYSIISPIN)); #endif }
/*------------------------------------------------ Apply --------------------------------------------------*/ void OnApply(HWND hDlg) { char s[80]; #if TC_ENABLE_CLOCKDECORATION int i; #endif // settings of "background" and "text" if(!m_bChanged) return; m_bChanged = FALSE; SetMyRegLong(NULL, "UseBackColor", IsDlgButtonChecked(hDlg, IDC_CHKCOLOR)); SetMyRegLong(NULL, "BackColor", CBGetItemData(hDlg, IDC_COLBACK, CBGetCurSel(hDlg, IDC_COLBACK))); SetMyRegLong(NULL, "UseBackColor2", IsDlgButtonChecked(hDlg, IDC_CHKCOLOR2)); SetMyRegLong(NULL, "BackColor2", CBGetItemData(hDlg, IDC_COLBACK2, CBGetCurSel(hDlg, IDC_COLBACK2))); SetMyRegLong(NULL, "GradDir", IsDlgButtonChecked(hDlg, IDC_GRAD1) ? 0 : 1); SetMyRegLong(NULL, "FillTray", IsDlgButtonChecked(hDlg, IDC_FILLTRAY)); SetMyRegLong(NULL, "ForeColor", CBGetItemData(hDlg, IDC_COLFORE, CBGetCurSel(hDlg, IDC_COLFORE))); #if TC_ENABLE_CLOCKDECORATION // settings of decoration if(IsDlgButtonChecked(hDlg, IDC_DECOSHADOW)) i = 1; else if(IsDlgButtonChecked(hDlg, IDC_DECOBORDER)) i = 2; else i = 0; SetMyRegLong(NULL, "ClockDecoration", i); SetMyRegLong(NULL, "ShadowColor", CBGetItemData(hDlg, IDC_COLSHADOW, CBGetCurSel(hDlg, IDC_COLSHADOW))); SetMyRegLong(NULL, "ShadowRange", UpDown_GetPos(hDlg,IDC_SHADOWRANGESPIN)); #endif // settings of "font" and "font size" CBGetLBText(hDlg, IDC_FONT, CBGetCurSel(hDlg, IDC_FONT), s); SetMyRegStr(NULL, "Font", s); GetDlgItemText(hDlg, IDC_FONTSIZE, s, 10); if(s[0]) SetMyRegStr(NULL, "FontSize", s); else SetMyRegStr(NULL, "FontSize", "9"); SetMyRegLong(NULL, "Bold", IsDlgButtonChecked(hDlg, IDC_BOLD)); SetMyRegLong(NULL, "Italic", IsDlgButtonChecked(hDlg, IDC_ITALIC)); }
int GetMyRegStrEx(char* section, char* entry, char* val, int cbData, char* defval) { char key[80]; HKEY hkey; DWORD regtype; DWORD size; BOOL b; int r; if(g_bIniSetting) key[0] = 0; else strcpy(key, mykey); if(section && *section) { if(!g_bIniSetting) strcat(key, "\\"); strcat(key, section); } else { if(g_bIniSetting) strcpy(key, "Main"); } if(g_bIniSetting) { r = GetPrivateProfileString(key, entry, defval, val, cbData, g_inifile); if(r == cbData) SetMyRegStr(section, entry, defval); } else { b = FALSE; if(RegOpenKey(HKEY_CURRENT_USER, key, &hkey) == 0) { size = cbData; if(RegQueryValueEx(hkey, entry, 0, ®type, (LPBYTE)val, &size) == 0) { if(size == 0) *val = 0; r = size; b = TRUE; } RegCloseKey(hkey); } if(b == FALSE) { SetMyRegStr(section, entry, defval); strcpy(val, defval); r = (INT)strlen(defval); } } return r; }
/*------------------------------------------------ save settings of an alarm --------------------------------------------------*/ void SaveAutoExecToReg(PAUTOEXECSTRUCT pAS, int num) { char subkey[20]; wsprintf(subkey, "AutoExec%d", num + 1); SetMyRegStr(subkey, "Name", pAS->name); SetMyRegLong(subkey, "AutoExec", pAS->bAutoExec); SetMyRegLong(subkey, "Hour", pAS->hour); SetMyRegLong(subkey, "Minute1", pAS->minute1); SetMyRegLong(subkey, "Minute2", pAS->minute2); SetMyRegStr(subkey, "File", pAS->fname); SetMyRegLong(subkey, "Days", pAS->days); SetMyRegLong(subkey, "OnBoot", pAS->bOnBoot); }
/*------------------------------------------------ "Apply" button --------------------------------------------------*/ void OnApply(HWND hDlg) { char s[MAX_PATH], s2[MAX_PATH]; GetDlgItemText(hDlg, IDC_HELPURL, s, MAX_PATH); SetMyRegStr("", "HelpURL", s); GetDlgItemText(hDlg, IDC_HELP2CH, s, MAX_PATH); SetMyRegStr("", "2chHelpURL", s); GetMyRegStr("", "LangDLL", s2, MAX_PATH, ""); GetDlgItemText(hDlg, IDC_LANGDLL, s, MAX_PATH); if(strcmp(s, s2) != 0) g_bApplyLangDLL = TRUE; // reload language dll SetMyRegStr("", "LangDLL", s); }
/*------------------------------------------------ [OnContextMenu] AppN=TClockPlayerClass,PLAYERM_REQUESTMENU -------------------------------------------------*/ void SetOnContextMenu(void) { char entry[20], buf[100], cname[80], num[20]; BOOL b; int i; for(i = 0; ; i++) { wsprintf(entry, "App%d", i + 1); GetMyRegStr("OnContextMenu", entry, buf, 100, ""); b = FALSE; if(buf[0]) { parse(cname, buf, 0, 80); parse(num, buf, 1, 20); if(strcmp(cname, CLASS_TCLOCKPLAYER) == 0) { if(PLAYERM_REQUESTMENU == atoi(num)) break; else b = TRUE; } } else b = TRUE; if(b) { wsprintf(buf, "%s,%d", CLASS_TCLOCKPLAYER, PLAYERM_REQUESTMENU); SetMyRegStr("OnContextMenu", entry, buf); break; } } }
/*------------------------------------------------ apply --------------------------------------------------*/ void OnApply(HWND hDlg) { char s[MAX_PATH]; SetMyRegLong(NULL, "NoClock", IsDlgButtonChecked(hDlg, IDC_NOCLOCK)); SetMyRegLong(NULL, "MCIWave", IsDlgButtonChecked(hDlg, IDC_MCIWAVE)); SetMyRegLong(NULL, "DelayStart", GetDlgItemInt(hDlg, IDC_DELAYSTART, NULL, FALSE)); SetMyRegLong(NULL, "TaskbarRestart", IsDlgButtonChecked(hDlg, IDC_TASKBARRESTART)); #if TC_ENABLE_DESKTOPICON SetMyRegLong(NULL, "DeskTopIcon", IsDlgButtonChecked(hDlg, IDC_DESKTOPICON)); SetMyRegLong(NULL, "TransDeskTopIconBK", IsDlgButtonChecked(hDlg, IDC_TRANSDESKTOPICONBK)); #endif GetDlgItemText(hDlg, IDC_HELPURL, s, MAX_PATH); SetMyRegStr(NULL, "HelpURL", s); #if TC_ENABLE_DESKTOPICON SetDesktopIcons(); #endif }
/*------------------------------------------- "Start" button ---------------------------------------------*/ void OnOK(HWND hDlg) { PTIMERSTRUCT pitem; char section[20]; int i, nOldTimer; /* save settings */ GetTimerFromDlg(hDlg, get_listitem(m_pTimer, m_nCurrent)); nOldTimer = GetMyRegLong(NULL, "TimerNum", 0); pitem = m_pTimer; for(i = 0; pitem; i++) { wsprintf(section, "Timer%d", i + 1); SetMyRegStr(section, "Name", pitem->name); SetMyRegLong(section, "Minute", pitem->minute); SetMyRegLong(section, "Second", pitem->second); SetMyRegStr(section, "File", pitem->fname); SetMyRegLong(section, "Repeat", pitem->bRepeat); SetMyRegLong(section, "Blink", pitem->bBlink); SetMyRegLong(section, "Disp", pitem->bDisp); SetMyRegLong(section, "DispType", pitem->nDispType); SetMyRegLong(section, "UserStr", pitem->nUserStr); pitem = pitem->next; } SetMyRegLong(NULL, "TimerNum", i); for(; i < nOldTimer; i++) { wsprintf(section, "Timer%d", i + 1); DelMyRegKey(section); } /* start a timer */ TimerStart(get_listitem(m_pTimer, m_nCurrent)); DestroyWindow(hDlg); }
/*------------------------------------------------ 更新 --------------------------------------------------*/ void OnApply(HWND hDlg) { char s[1024]; DWORD dw; SetMyRegLong("", "NoClock", IsDlgButtonChecked(hDlg, IDC_NOCLOCK)); SetMyRegLong("", "MCIWave", IsDlgButtonChecked(hDlg, IDC_MCIWAVE)); SetMyRegLong("", "DelayStart", SendDlgItemMessage(hDlg, IDC_SPINDELAYSTART, UDM_GETPOS, 0, 0)); SetMyRegLong("", "DelayNet", SendDlgItemMessage(hDlg, IDC_SPINDELAYNET, UDM_GETPOS, 0, 0)); SetMyRegLong("", "DoNetRestart", IsDlgButtonChecked(hDlg, IDC_CHECKNETWORK)); SetMyRegLong("", "NetRestartInterval", SendDlgItemMessage(hDlg, IDC_SPINCHECKNETINTERVAL, UDM_GETPOS, 0, 0)); SetMyRegLong("", "Deskcal", IsDlgButtonChecked(hDlg, IDC_DESKCAL)); GetDlgItemText(hDlg, IDC_COMDESKCAL, s, 1024); SetMyRegStr("", "DeskcalCommand", s); SetMyRegLong("", "DeskcalOnlyDate", IsDlgButtonChecked(hDlg, IDC_ONLYDATECHANGED)); SetMyRegLong("", "DeskcalResumeSuspend", IsDlgButtonChecked(hDlg, IDC_RESUMESUSPEND)); SetMyRegLong("", "DeskcalTonikaku", IsDlgButtonChecked(hDlg, IDC_TONIKAKU)); SetMyRegLong("", "WatchWallpaper", IsDlgButtonChecked(hDlg, IDC_WATCHWALL)); SetMyRegLong("", "WatchTaskbarWindow", IsDlgButtonChecked(hDlg, IDC_TASKWNDCTRL)); dw = GetDlgItemInt(hDlg, IDC_CONFMAX, NULL, FALSE); if(dw > 30) dw = 30; if(dw < 1 ) dw = 1; SetDlgItemInt(hDlg, IDC_CONFMAX, dw, FALSE); SetMyRegLong("", "ConfigMax", dw); InitWatchWallpaper(); // deskcal.c }
/*------------------------------------------------ Apply changes --------------------------------------------------*/ void OnApply(HWND hDlg) { int i; char s[MAX_PATH]; if(!m_bChanged) return; m_bChanged = FALSE; SetMyRegLong(m_section, "UseAnalogClock", IsDlgButtonChecked(hDlg, IDC_ANALOGCLOCK)); SetMyRegLong(m_section, "HourHandColor", CBGetItemData(hDlg, IDC_COLHOUR, CBGetCurSel(hDlg, IDC_COLHOUR))); SetMyRegLong(m_section, "MinHandColor", CBGetItemData(hDlg, IDC_COLMIN, CBGetCurSel(hDlg, IDC_COLMIN))); SetMyRegLong(m_section, "HourHandBold", IsDlgButtonChecked(hDlg, IDC_HOURHANDBOLD)); SetMyRegLong(m_section, "MinHandBold", IsDlgButtonChecked(hDlg, IDC_MINHANDBOLD)); if(IsDlgButtonChecked(hDlg, IDC_ANALOGPOSLEFT)) i = 1; else if(IsDlgButtonChecked(hDlg, IDC_ANALOGPOSRIGHT)) i = 2; else i = 0; SetMyRegLong(m_section, "AnalogClockPos", i); SetMyRegLong(m_section, "HorizontalPos", UpDown_GetPos(hDlg,IDC_ANALOGHPOSSPIN)); SetMyRegLong(m_section, "VerticalPos", UpDown_GetPos(hDlg,IDC_ANALOGVPOSSPIN)); SetMyRegLong(m_section, "Size", UpDown_GetPos(hDlg,IDC_ANALOGSIZESPIN)); GetDlgItemText(hDlg, IDC_ANALOGBMP, s, MAX_PATH); SetMyRegStr(m_section, "Bitmap", s); }
//================================================================================================ //-----------------------------------------------+++--> Save the New HotKey Configuration Settings: void OnApply(HWND hDlg) { //----------------------------------------------------------------+++--> char subkey[TNY_BUFF] = {0}; int i; if(tchk[0].bValid) { // Add/Edit Active Timers RegisterHotKey(g_hWnd, HOT_TIMER, tchk[0].fsMod, tchk[0].vk); }else{ tchk[0].vk = 0; tchk[0].fsMod = 0; strcpy(tchk[0].szText, "None"); UnregisterHotKey(g_hWnd, HOT_TIMER); } if(tchk[1].bValid) { // Display StopWatch RegisterHotKey(g_hWnd, HOT_STOPW, tchk[1].fsMod, tchk[1].vk); }else{ tchk[1].vk = 0; tchk[1].fsMod = 0; strcpy(tchk[1].szText, "None"); UnregisterHotKey(g_hWnd, HOT_STOPW); } if(tchk[2].bValid) { // Display Watched (and active) Timers RegisterHotKey(g_hWnd, HOT_WATCH, tchk[2].fsMod, tchk[2].vk); }else{ tchk[2].vk = 0; tchk[2].fsMod = 0; strcpy(tchk[2].szText, "None"); UnregisterHotKey(g_hWnd, HOT_WATCH); } if(tchk[3].bValid) { // Display Watched (and active) Timers RegisterHotKey(g_hWnd, HOT_PROPR, tchk[3].fsMod, tchk[3].vk); }else{ tchk[3].vk = 0; tchk[3].fsMod = 0; strcpy(tchk[3].szText, "None"); UnregisterHotKey(g_hWnd, HOT_PROPR); } if(tchk[4].bValid) { // Display Watched (and active) Timers RegisterHotKey(g_hWnd, HOT_CALEN, tchk[4].fsMod, tchk[4].vk); }else{ tchk[4].vk = 0; tchk[4].fsMod = 0; strcpy(tchk[4].szText, "None"); UnregisterHotKey(g_hWnd, HOT_CALEN); } /////////////////////////////////////////////////////////////////////////////////// for(i = 0; i <= 4; i++) { wsprintf(subkey, "%s\\HK%d", szHotKeySubKey, i); SetMyRegLong(subkey, "bValid", tchk[i].bValid); SetMyRegLong(subkey, "fsMod", tchk[i].fsMod); SetMyRegStr(subkey, "szText", tchk[i].szText); SetMyRegLong(subkey, "vk", tchk[i].vk); } ////////////////////////////////////////////////////////////////////////////////// bFirstTime = FALSE; // DO NOT Let Property Sheet Manager Fire OnApply(...) Twice! EnableWindow(GetDlgItem(hDlg, IDCE_HK_ADD), FALSE); EnableWindow(GetDlgItem(hDlg, IDCE_HK_STOP), FALSE); EnableWindow(GetDlgItem(hDlg, IDCE_HK_TIME), FALSE); EnableWindow(GetDlgItem(hDlg, IDCE_HK_PROP), FALSE); EnableWindow(GetDlgItem(hDlg, IDCE_HK_CALN), FALSE); EnableWindow(GetDlgItem(hDlg, IDCB_HK_ADD), TRUE); EnableWindow(GetDlgItem(hDlg, IDCB_HK_STOP), TRUE); EnableWindow(GetDlgItem(hDlg, IDCB_HK_TIME), TRUE); EnableWindow(GetDlgItem(hDlg, IDCB_HK_PROP), TRUE); EnableWindow(GetDlgItem(hDlg, IDCB_HK_CALN), TRUE); }