diff options
author | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-10-29 12:23:52 +0000 |
---|---|---|
committer | sje <sje@4f64403b-2f21-0410-a795-97e2b3489a10> | 2007-10-29 12:23:52 +0000 |
commit | 24472a77e5cf7619a284134d4eea7da8849b98ad (patch) | |
tree | 3db00f0eefa80cf5473564ef5ded17e13ea0d932 /message_notify/options.cpp | |
parent | aec9ec8b670b3bb9a719377b75a53ff009b07c3d (diff) |
improved efficiency
added speech support
git-svn-id: https://server.scottellis.com.au/svn/mim_plugs@372 4f64403b-2f21-0410-a795-97e2b3489a10
Diffstat (limited to 'message_notify/options.cpp')
-rw-r--r-- | message_notify/options.cpp | 37 |
1 files changed, 35 insertions, 2 deletions
diff --git a/message_notify/options.cpp b/message_notify/options.cpp index c2f42b7..cb2058c 100644 --- a/message_notify/options.cpp +++ b/message_notify/options.cpp @@ -66,8 +66,23 @@ static BOOL CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM l break;
};
}
- CheckDlgButton(hwndDlg, IDC_CHK_CLOSE, options.close_win ? TRUE : FALSE);
- CheckDlgButton(hwndDlg, IDC_CHK_MSG, options.show_msg ? TRUE : FALSE);
+
+ {
+ CheckDlgButton(hwndDlg, IDC_CHK_CLOSE, options.close_win ? TRUE : FALSE);
+ CheckDlgButton(hwndDlg, IDC_CHK_MSG, options.show_msg ? TRUE : FALSE);
+
+ CheckDlgButton(hwndDlg, IDC_CHK_SPEECH, (options.flags & MNNF_SPEAK));
+ if(options.flags & MNNF_POPUP) {
+ CheckDlgButton(hwndDlg, IDC_CHK_POPUPS, TRUE);
+ HWND hwnd = GetDlgItem(hwndDlg, IDC_CHK_CLOSE);
+ EnableWindow(hwndDlg, FALSE);
+ hwnd = GetDlgItem(hwndDlg, IDC_CHK_MSG);
+ EnableWindow(hwndDlg, FALSE);
+ } else {
+ CheckDlgButton(hwndDlg, IDC_CHK_POPUPS, FALSE);
+ }
+ }
+
return FALSE;
case WM_COMMAND:
@@ -93,6 +108,16 @@ static BOOL CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM l case IDC_CHK_TABS:
SendMessage( GetParent( hwndDlg ), PSM_CHANGED, 0, 0 );
return TRUE;
+ case IDC_CHK_POPUPS:
+ {
+ bool checked = IsDlgButtonChecked(hwndDlg, IDC_CHK_POPUPS) ? true : false;
+ HWND hwnd = GetDlgItem(hwndDlg, IDC_CHK_CLOSE);
+ EnableWindow(hwndDlg, checked ? TRUE : FALSE);
+ hwnd = GetDlgItem(hwndDlg, IDC_CHK_MSG);
+ EnableWindow(hwndDlg, checked ? TRUE : FALSE);
+ }
+ SendMessage( GetParent( hwndDlg ), PSM_CHANGED, 0, 0 );
+ return TRUE;
}
}
break;
@@ -124,6 +149,11 @@ static BOOL CALLBACK DlgProcOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM l for(int i = 0; i < 9; i++)
options.disable_status[i] = (ListView_GetCheckState(GetDlgItem(hwndDlg, IDC_LST_STATUS), i) ? true : false);
+
+ options.flags = 0;
+ options.flags |= (IsDlgButtonChecked(hwndDlg, IDC_CHK_POPUPS) ? MNNF_POPUP : 0);
+ options.flags |= (IsDlgButtonChecked(hwndDlg, IDC_CHK_SPEECH) ? MNNF_SPEAK : 0);
+
SaveOptions();
if(options.notify_when == NOTIFY_NFORE)
@@ -172,6 +202,8 @@ void LoadOptions() { sprintf(buff, "DisableStatus%d", i);
options.disable_status[i] = (DBGetContactSettingByte(0, MODULE, buff, 0) == 1);
}
+
+ options.flags = (int)DBGetContactSettingDword(0, MODULE, "Flags", MNNF_POPUP);
}
void SaveOptions() {
@@ -184,6 +216,7 @@ void SaveOptions() { sprintf(buff, "DisableStatus%d", i);
DBWriteContactSettingByte(0, MODULE, buff, options.disable_status[i] ? 1 : 0);
}
+ DBWriteContactSettingDword(0, MODULE, "Flags", (DWORD)options.flags);
}
|