void Creds_OnCheckRemind (HWND hDlg) { LPTSTR pszCell = (LPTSTR)GetWindowLongPtr (hDlg, DWLP_USER); lock_ObtainMutex(&g.credsLock); size_t iCreds; for (iCreds = 0; iCreds < g.cCreds; ++iCreds) { if (!lstrcmpi (g.aCreds[ iCreds ].szCell, pszCell)) break; } if (iCreds != g.cCreds) { g.aCreds[ iCreds ].fRemind = IsDlgButtonChecked (hDlg, IDC_CREDS_REMIND); SaveRemind (iCreds); } lock_ReleaseMutex(&g.credsLock); }
void NewCreds_OnCancel (HWND hDlg) { TCHAR szText[ cchRESOURCE ] = ""; LPTSTR pszCell = NULL; if (GetDlgItem (hDlg, IDC_NEWCREDS_CELL)) { GetDlgItemText (hDlg, IDC_NEWCREDS_CELL, szText, cchRESOURCE); if ( szText[0] ) pszCell = szText; } if ( !pszCell ) pszCell = (LPTSTR)GetWindowLongPtr (hDlg, DWLP_USER); if (pszCell) { HWND hTab = GetDlgItem (g.hMain, IDC_TABS); LPTSTR pszTab = (LPTSTR)GetTabParam (hTab, TabCtrl_GetCurSel(hTab)); HWND hChildDlg = NULL; lock_ObtainMutex(&g.credsLock); for (size_t iCreds = 0; iCreds < g.cCreds; ++iCreds) { if (!lstrcmpi (g.aCreds[ iCreds ].szCell, pszCell)) { g.aCreds[ iCreds ].fRemind = FALSE; SaveRemind (iCreds); // Check the active tab, and fix its checkbox if necessary // if (pszTab && HIWORD(pszTab) && (!lstrcmpi (pszTab, pszCell))) { hChildDlg = GetTabChild (hTab); } } } lock_ReleaseMutex(&g.credsLock); if (hChildDlg) CheckDlgButton (hChildDlg, IDC_CREDS_REMIND, FALSE); } }
void Main_OnCheckMenuRemind (void) { BOOL fRemind = FALSE; lock_ObtainMutex(&g.credsLock); size_t iCreds; for (iCreds = 0; iCreds < g.cCreds; ++iCreds) { if (g.aCreds[ iCreds ].fRemind) fRemind = TRUE; } fRemind = !fRemind; for (iCreds = 0; iCreds < g.cCreds; ++iCreds) { if (g.aCreds[ iCreds ].fRemind != fRemind) { g.aCreds[ iCreds ].fRemind = fRemind; SaveRemind (iCreds); } } lock_ReleaseMutex(&g.credsLock); // Check the active tab, and fix its checkbox if necessary // HWND hTab = GetDlgItem (g.hMain, IDC_TABS); LPTSTR pszTab = (LPTSTR)GetTabParam (hTab, TabCtrl_GetCurSel(hTab)); if (ISCELLTAB(pszTab) && (*pszTab)) { HWND hDlg = GetTabChild (hTab); if (hDlg) CheckDlgButton (hDlg, IDC_CREDS_REMIND, fRemind); } // Make sure the reminder timer is going // Main_EnableRemindTimer (fRemind); }