From 60338d55bb73d0c45b6e092703c4bb88a3c49755 Mon Sep 17 00:00:00 2001 From: Vadim Dashevskiy Date: Mon, 23 Jul 2012 13:03:18 +0000 Subject: Rate, RecentContacts, Scriver: changed folder structure git-svn-id: http://svn.miranda-ng.org/main/trunk@1121 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/RecentContacts/src/options.cpp | 73 ++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 plugins/RecentContacts/src/options.cpp (limited to 'plugins/RecentContacts/src/options.cpp') diff --git a/plugins/RecentContacts/src/options.cpp b/plugins/RecentContacts/src/options.cpp new file mode 100644 index 0000000000..d8f09adb9b --- /dev/null +++ b/plugins/RecentContacts/src/options.cpp @@ -0,0 +1,73 @@ +#include "RecentContacts.h" +#include "resource.h" + +extern HINSTANCE hInst; +void LoadDBSettings(); + +INT_PTR CALLBACK DlgProcOptions(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lParam) +{ + char str[32]; + + switch (msg) { + case WM_INITDIALOG: + TranslateDialogDefault(hwndDlg); + CheckDlgButton(hwndDlg, IDC_HIDEOFFLINE, (LastUCOpt.HideOffline ? BST_CHECKED : BST_UNCHECKED)); + + mir_snprintf(str, SIZEOF(str), "%d", LastUCOpt.MaxShownContacts); + SetDlgItemTextA(hwndDlg, IDC_SHOWNCONTACTS, str); + + mir_snprintf(str, SIZEOF(str), "%s", LastUCOpt.DateTimeFormat.c_str()); + SetDlgItemTextA(hwndDlg, IDC_DATETIME, str); + + SetWindowLongPtr(hwndDlg,GWLP_USERDATA,lParam); + return TRUE; + + case WM_COMMAND: + switch(HIWORD(wParam)) { + case EN_CHANGE: + case BN_CLICKED: + case CBN_EDITCHANGE: + case CBN_SELCHANGE: + SendMessage(GetParent(hwndDlg),PSM_CHANGED,0,0); + } + break; + + case WM_NOTIFY: + { + LPNMHDR phdr = (LPNMHDR)(lParam); + if (phdr->idFrom == 0 && phdr->code == PSN_APPLY) { + BOOL bSuccess = FALSE; + + LastUCOpt.HideOffline = (BOOL)IsDlgButtonChecked(hwndDlg, IDC_HIDEOFFLINE); + DBWriteContactSettingByte(NULL, dbLastUC_ModuleName, dbLastUC_HideOfflineContacts, (BYTE)LastUCOpt.HideOffline); + + GetDlgItemTextA(hwndDlg, IDC_SHOWNCONTACTS, str, SIZEOF(str)); + LastUCOpt.MaxShownContacts= atoi(str); + DBWriteContactSettingByte(0,dbLastUC_ModuleName, dbLastUC_MaxShownContacts, LastUCOpt.MaxShownContacts); + + GetDlgItemTextA(hwndDlg, IDC_DATETIME, str, SIZEOF(str)); + DBWriteContactSettingString(0,dbLastUC_ModuleName, dbLastUC_DateTimeFormat, str ); + + LoadDBSettings(); + return TRUE; + } + break; + } + } + return FALSE; +} + +int onOptInitialise(WPARAM wParam, LPARAM lParam) +{ + OPTIONSDIALOGPAGE odp = { 0 }; + odp.cbSize = sizeof(odp); + odp.hInstance = hInst; + odp.pszGroup = LPGEN("Contact List"); + odp.pszTemplate = MAKEINTRESOURCEA(IDD_LASTUC_OPT); + odp.pszTitle = msLastUC_ShowListName; + odp.pfnDlgProc = DlgProcOptions; + odp.flags = ODPF_BOLDGROUPS; + Options_AddPage(wParam, &odp); + + return 0; +} -- cgit v1.2.3