From bed6bee936ff79d32c08245f0fedaee9d839f76f Mon Sep 17 00:00:00 2001 From: mataes2007 Date: Thu, 28 Apr 2011 12:14:32 +0000 Subject: test rename git-svn-id: http://miranda-plugins.googlecode.com/svn/trunk@64 e753b5eb-9565-29b2-b5c5-2cc6f99dfbcb --- dbeditorpp/options.cpp | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 dbeditorpp/options.cpp (limited to 'dbeditorpp/options.cpp') diff --git a/dbeditorpp/options.cpp b/dbeditorpp/options.cpp new file mode 100644 index 0000000..fb0224b --- /dev/null +++ b/dbeditorpp/options.cpp @@ -0,0 +1,97 @@ +#include "headers.h" +BOOL CALLBACK DlgProcOpts(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) +{ + switch(msg) + { + case WM_INITDIALOG: + { + DBVARIANT dbv; + CheckDlgButton(hwnd,IDC_EXPANDSETTINGS,DBGetContactSettingByte(NULL,modname,"ExpandSettingsOnOpen",0)); + CheckDlgButton(hwnd,IDC_RESTORESETTINGS,DBGetContactSettingByte(NULL,modname,"RestoreOnOpen",0)); + CheckDlgButton(hwnd,IDC_USEKNOWNMODS,DBGetContactSettingByte(NULL,modname,"UseKnownModList",1)); + CheckDlgButton(hwnd,IDC_WARNONDEL,DBGetContactSettingByte(NULL,modname,"WarnOnDelete",1)); + CheckDlgButton(hwnd,IDC_MENU,DBGetContactSettingByte(NULL,modname,"UserMenuItem",1)); + CheckDlgButton(hwnd,IDC_POPUPS,usePopUps); + if (!DBGetContactSetting(NULL,modname,"CoreModules",&dbv) && dbv.type == DBVT_ASCIIZ) + SetDlgItemText(hwnd,IDC_MODULES,dbv.pszVal); + DBFreeVariant(&dbv); + SetDlgItemInt(hwnd,IDC_POPUPTIMEOUT,DBGetContactSettingWord(NULL,modname,"PopupDelay",4),0); + SendDlgItemMessage(hwnd, IDC_COLOUR, CPM_SETCOLOUR, 0, (LPARAM)DBGetContactSettingDword(NULL,modname,"PopupColour",RGB(255,0,0))); + TranslateDialogDefault(hwnd); + } + return TRUE; + case WM_COMMAND: + switch(LOWORD(wParam)) + { + case IDC_RESTORESETTINGS: + case IDC_EXPANDSETTINGS: + case IDC_USEKNOWNMODS: + case IDC_MODULES: + case IDC_MENU: + case IDC_POPUPS: + case IDC_WARNONDEL: + case IDC_COLOUR: + case IDC_POPUPTIMEOUT: + SendMessage(GetParent(hwnd), PSM_CHANGED, 0, 0); + break; + } + break; + case WM_NOTIFY: + switch(((LPNMHDR)lParam)->idFrom) + { + case 0: + switch (((LPNMHDR)lParam)->code) + { + case PSN_APPLY: + { + CLISTMENUITEM mi = {0}; + char mods[4096]; + DBWriteContactSettingByte(NULL,modname,"ExpandSettingsOnOpen",(BYTE)IsDlgButtonChecked(hwnd,IDC_EXPANDSETTINGS)); + DBWriteContactSettingByte(NULL,modname,"RestoreOnOpen",(BYTE)IsDlgButtonChecked(hwnd,IDC_RESTORESETTINGS)); + DBWriteContactSettingByte(NULL,modname,"WarnOnDelete",(BYTE)IsDlgButtonChecked(hwnd,IDC_WARNONDEL)); + DBWriteContactSettingByte(NULL,modname,"UserMenuItem",(BYTE)IsDlgButtonChecked(hwnd,IDC_MENU)); + DBWriteContactSettingByte(NULL,modname,"UseKnownModList",(BYTE)IsDlgButtonChecked(hwnd,IDC_USEKNOWNMODS)); + usePopUps = IsDlgButtonChecked(hwnd,IDC_POPUPS); + DBWriteContactSettingByte(NULL,modname,"UsePopUps",(BYTE)usePopUps); + if (GetDlgItemText(hwnd,IDC_MODULES,mods,4096)) + DBWriteContactSettingString(NULL,modname,"CoreModules",mods); + DBWriteContactSettingWord(NULL,modname,"PopupDelay",(WORD)GetDlgItemInt(hwnd,IDC_POPUPTIMEOUT,NULL,0)); + DBWriteContactSettingDword(NULL,modname,"PopupColour",(DWORD)SendDlgItemMessage(hwnd, IDC_COLOUR, CPM_GETCOLOUR, 0, 0)); + + mi.cbSize = sizeof(mi); + + if (!IsDlgButtonChecked(hwnd,IDC_MENU)) + mi.flags = CMIM_FLAGS | CMIF_HIDDEN; + else + mi.flags = CMIM_FLAGS; + + CallService(MS_CLIST_MODIFYMENUITEM, (WPARAM) hUserMenu, (LPARAM) & mi); + + } + return TRUE; + } + break; + } + break; + } + return FALSE; +} + +int OptInit(WPARAM wParam,LPARAM lParam) +{ + OPTIONSDIALOGPAGE odp; + + ZeroMemory(&odp,sizeof(odp)); + odp.cbSize=sizeof(odp); + odp.position=0; + odp.hInstance=hInst; + odp.pszTemplate=MAKEINTRESOURCE(IDD_OPTIONS); + odp.pszGroup= Translate("Plugins"); + odp.pszTitle=Translate(modFullname); + odp.pfnDlgProc=DlgProcOpts; + odp.flags = ODPF_BOLDGROUPS; + odp.expertOnlyControls=NULL; + CallService(MS_OPT_ADDPAGE,wParam,(LPARAM)&odp); + + return 0; +} \ No newline at end of file -- cgit v1.2.3