From fb74b51d6642fcf4c34a5594873eec152cc48b05 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 22 Jan 2021 22:03:31 +0300 Subject: further clist options optimization --- include/m_clist.h | 2 - include/m_clistint.h | 8 +- libs/win32/mir_app.lib | Bin 217822 -> 218472 bytes libs/win64/mir_app.lib | Bin 213630 -> 214280 bytes plugins/Clist_modern/res/resource.rc | 108 +++++--------------------- plugins/Clist_modern/src/modern_clcopts.cpp | 5 -- plugins/Clist_modern/src/modern_clisttray.cpp | 2 +- plugins/Clist_modern/src/modern_defsettings.h | 1 - plugins/Clist_modern/src/resource.h | 2 - plugins/Clist_nicer/res/resource.rc | 106 ++----------------------- plugins/Clist_nicer/src/clistopts.cpp | 4 - plugins/Clist_nicer/src/resource.h | 2 - src/core/stdclist/res/resource.rc | 38 ++++----- src/core/stdclist/src/clistopts.cpp | 4 - src/core/stdclist/src/resource.h | 2 - src/mir_app/res/resource.rc | 8 +- src/mir_app/src/clistopts.cpp | 8 ++ src/mir_app/src/clisttray.cpp | 6 +- src/mir_app/src/mir_app.def | 2 + src/mir_app/src/mir_app64.def | 2 + src/mir_app/src/resource.h | 2 + 21 files changed, 72 insertions(+), 240 deletions(-) diff --git a/include/m_clist.h b/include/m_clist.h index d5e3bce218..a27b0ac292 100644 --- a/include/m_clist.h +++ b/include/m_clist.h @@ -538,7 +538,6 @@ EXTERN_C MIR_APP_DLL(int) Clist_TrayNotifyW(const char *szProto, const wchar_t * #define SETTING_CLIENTDRAG_DEFAULT 1 #define SETTING_ONTOP_DEFAULT 1 #define SETTING_MIN2TRAY_DEFAULT 1 -#define SETTING_TRAY1CLICK_DEFAULT (IsWinVer7Plus()?1:0) #define SETTING_SORTBYSTATUS_DEFAULT 0 #define SETTING_SORTBYPROTO_DEFAULT 0 #define SETTING_TRANSPARENT_DEFAULT 0 @@ -548,7 +547,6 @@ EXTERN_C MIR_APP_DLL(int) Clist_TrayNotifyW(const char *szProto, const wchar_t * #define SETTING_HIDETIME_DEFAULT 30 #define SETTING_CYCLETIME_DEFAULT 4 #define SETTING_TRAYICON_DEFAULT SETTING_TRAYICON_SINGLE -#define SETTING_ALWAYSSTATUS_DEFAULT 0 #define SETTING_ALWAYSMULTI_DEFAULT 0 #define SETTING_TRAYICON_SINGLE 0 diff --git a/include/m_clistint.h b/include/m_clistint.h index e4e4f79c43..103a27f4a4 100644 --- a/include/m_clistint.h +++ b/include/m_clistint.h @@ -444,12 +444,14 @@ extern MIR_APP_EXPORT CLIST_INTERFACE g_clistApi; namespace Clist { - extern MIR_APP_EXPORT CMOption + extern MIR_APP_EXPORT CMOption HideOffline, UseGroups, FilterSearch, - HideEmptyGroups, - ConfirmDelete; + HideEmptyGroups, + ConfirmDelete, + Tray1Click, + TrayAlwaysStatus; extern MIR_APP_EXPORT CMOption OfflineModes; diff --git a/libs/win32/mir_app.lib b/libs/win32/mir_app.lib index 13cc053858..613bba09d5 100644 Binary files a/libs/win32/mir_app.lib and b/libs/win32/mir_app.lib differ diff --git a/libs/win64/mir_app.lib b/libs/win64/mir_app.lib index eed2ea175f..ca54bbc718 100644 Binary files a/libs/win64/mir_app.lib and b/libs/win64/mir_app.lib differ diff --git a/plugins/Clist_modern/res/resource.rc b/plugins/Clist_modern/res/resource.rc index c15fa12b88..58244f6039 100644 --- a/plugins/Clist_modern/res/resource.rc +++ b/plugins/Clist_modern/res/resource.rc @@ -408,38 +408,36 @@ BEGIN CONTROL "Tree1",IDC_GREYOUTOPTS,"SysTreeView32",TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | TVS_NONEVENHEIGHT | WS_BORDER | WS_HSCROLL | WS_TABSTOP,165,168,130,46 END -IDD_OPT_TRAY DIALOGEX 0, 0, 296, 200 +IDD_OPT_TRAY DIALOGEX 0, 0, 296, 176 STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD EXSTYLE WS_EX_CONTROLPARENT FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN - CONTROL "Single click interface",IDC_ONECLK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,19,156,10 - CONTROL "Always show status in tooltip",IDC_ALWAYSSTATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP,10,32,156,11 - CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,45,156,9 - EDITTEXT IDC_BLINKTIME,12,59,35,12,ES_NUMBER - CONTROL "",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,33,59,11,12 - LTEXT "ms, delay between icon blinking",IDC_STATIC,51,61,104,8 - GROUPBOX "System tray icon",IDC_STATIC,2,6,292,73 + CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,19,156,9 + EDITTEXT IDC_BLINKTIME,12,33,35,12,ES_NUMBER + CONTROL "",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,42,34,11,12 + LTEXT "ms, delay between icon blinking",IDC_STATIC,51,35,104,8 + GROUPBOX "System tray icon",IDC_STATIC,2,6,292,54 CONTROL "Use xStatus icon",IDC_SHOWXSTATUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,171,19,117,10 CONTROL "Show normal status as overlay",IDC_SHOWNORMAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,171,32,117,10 CONTROL "Status overlay opacity is 75%",IDC_TRANSPARENTOVERLAY, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,171,45,117,10 - GROUPBOX "Icon mode",IDC_STATIC,2,80,292,110 - GROUPBOX "For similar statuses",IDC_STATIC,8,90,138,74 - CONTROL "Global status",IDC_ICON_GLOBAL_S,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,100,97,10 - CONTROL "Single account",IDC_ICON_ACC_S,"Button",BS_AUTORADIOBUTTON,14,116,60,10 - CONTROL "Cycle icons",IDC_ICON_CYCLE_S,"Button",BS_AUTORADIOBUTTON,14,132,97,10 - CONTROL "All accounts",IDC_ICON_ALL_S,"Button",BS_AUTORADIOBUTTON,14,148,97,10 + GROUPBOX "Icon mode",IDC_STATIC,2,61,292,110 + GROUPBOX "For similar statuses",IDC_STATIC,8,71,138,74 + CONTROL "Global status",IDC_ICON_GLOBAL_S,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,14,81,97,10 + CONTROL "Single account",IDC_ICON_ACC_S,"Button",BS_AUTORADIOBUTTON,14,97,60,10 + CONTROL "Cycle icons",IDC_ICON_CYCLE_S,"Button",BS_AUTORADIOBUTTON,14,113,97,10 + CONTROL "All accounts",IDC_ICON_ALL_S,"Button",BS_AUTORADIOBUTTON,14,129,97,10 COMBOBOX IDC_PRIMARYSTATUS_S,80,114,60,101,CBS_DROPDOWNLIST | WS_DISABLED | WS_VSCROLL | WS_TABSTOP GROUPBOX "For different statuses",IDC_STATIC,150,90,138,74 - CONTROL "Global status",IDC_ICON_GLOBAL_V,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,156,100,97,10 - CONTROL "Single account",IDC_ICON_ACC_V,"Button",BS_AUTORADIOBUTTON,156,116,60,10 - CONTROL "Cycle icons",IDC_ICON_CYCLE_V,"Button",BS_AUTORADIOBUTTON,156,132,97,10 - CONTROL "All accounts",IDC_ICON_ALL_V,"Button",BS_AUTORADIOBUTTON,156,148,97,10 - COMBOBOX IDC_PRIMARYSTATUS_V,222,114,60,101,CBS_DROPDOWNLIST | WS_DISABLED | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_CYCLETIME,88,170,29,12,ES_RIGHT | ES_NUMBER - CONTROL "",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,80,170,11,14 - LTEXT "Cycle period, seconds",IDC_STATIC,8,172,80,8 + CONTROL "Global status",IDC_ICON_GLOBAL_V,"Button",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,156,81,97,10 + CONTROL "Single account",IDC_ICON_ACC_V,"Button",BS_AUTORADIOBUTTON,156,97,60,10 + CONTROL "Cycle icons",IDC_ICON_CYCLE_V,"Button",BS_AUTORADIOBUTTON,156,113,97,10 + CONTROL "All accounts",IDC_ICON_ALL_V,"Button",BS_AUTORADIOBUTTON,156,129,97,10 + COMBOBOX IDC_PRIMARYSTATUS_V,222,95,60,101,CBS_DROPDOWNLIST | WS_DISABLED | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_CYCLETIME,88,151,29,12,ES_RIGHT | ES_NUMBER + CONTROL "",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,120,150,11,14 + LTEXT "Cycle period, seconds",IDC_STATIC,8,153,80,8 END IDD_OPT_META_CLC DIALOGEX 0, 0, 225, 186 @@ -800,81 +798,15 @@ END #endif // APSTUDIO_INVOKED - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - IDD_OPT_SKIN, DIALOG - BEGIN - END - - IDD_OPT_CLIST, DIALOG - BEGIN - END - - IDD_OPT_CLUI_2, DIALOG - BEGIN - RIGHTMARGIN, 285 - VERTGUIDE, 12 - VERTGUIDE, 130 - VERTGUIDE, 148 - VERTGUIDE, 263 - VERTGUIDE, 268 - VERTGUIDE, 276 - END - - IDD_OPT_CLC, DIALOG - BEGIN - END - - IDD_OPT_CLUI, DIALOG - BEGIN - END - - IDD_OPT_ITEM_ICON, DIALOG - BEGIN - END -END -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// AFX_DIALOG_LAYOUT -// - -IDD_OPT_SKIN AFX_DIALOG_LAYOUT -BEGIN - 0 -END - -IDD_OPT_CLIST AFX_DIALOG_LAYOUT -BEGIN - 0 -END - -IDD_OPT_ITEM_ICON AFX_DIALOG_LAYOUT -BEGIN - 0 -END - #endif // Russian (Russia) resources ///////////////////////////////////////////////////////////////////////////// - - #ifndef APSTUDIO_INVOKED ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 3 resource. // - ///////////////////////////////////////////////////////////////////////////// #endif // not APSTUDIO_INVOKED diff --git a/plugins/Clist_modern/src/modern_clcopts.cpp b/plugins/Clist_modern/src/modern_clcopts.cpp index 8450f8df2f..bd3048dcad 100644 --- a/plugins/Clist_modern/src/modern_clcopts.cpp +++ b/plugins/Clist_modern/src/modern_clcopts.cpp @@ -564,7 +564,6 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L CheckDlgButton(hwndDlg, IDC_NOOFFLINEMOVE, g_plugin.getByte("NoOfflineBottom", SETTING_NOOFFLINEBOTTOM_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(hwndDlg, IDC_OFFLINETOROOT, g_plugin.getByte("PlaceOfflineToRoot", SETTING_PLACEOFFLINETOROOT_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); - CheckDlgButton(hwndDlg, IDC_ONECLK, g_plugin.getByte("Tray1Click", SETTING_TRAY1CLICK_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); { BYTE trayOption = db_get_b(0, "CLUI", "XStatusTray", SETTING_TRAYOPTION_DEFAULT); CheckDlgButton(hwndDlg, IDC_SHOWXSTATUS, (trayOption & 3) ? BST_CHECKED : BST_UNCHECKED); @@ -575,7 +574,6 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L EnableWindow(GetDlgItem(hwndDlg, IDC_TRANSPARENTOVERLAY), IsDlgButtonChecked(hwndDlg, IDC_SHOWXSTATUS) && IsDlgButtonChecked(hwndDlg, IDC_SHOWNORMAL)); } - CheckDlgButton(hwndDlg, IDC_ALWAYSSTATUS, g_plugin.getByte("AlwaysStatus", SETTING_ALWAYSSTATUS_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(hwndDlg, IDC_DISABLEBLINK, g_plugin.getByte("DisableTrayFlash", SETTING_DISABLETRAYFLASH_DEFAULT) == 1 ? BST_CHECKED : BST_UNCHECKED); SendDlgItemMessage(hwndDlg, IDC_BLINKSPIN, UDM_SETRANGE, 0, MAKELONG(0x3FFF, 250)); @@ -678,9 +676,6 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L case 0: switch (((LPNMHDR)lParam)->code) { case PSN_APPLY: - g_plugin.setByte("Tray1Click", (BYTE)IsDlgButtonChecked(hwndDlg, IDC_ONECLK)); - g_plugin.setByte("AlwaysStatus", (BYTE)IsDlgButtonChecked(hwndDlg, IDC_ALWAYSSTATUS)); - g_plugin.setWord("IconFlashTime", (WORD)SendDlgItemMessage(hwndDlg, IDC_BLINKSPIN, UDM_GETPOS, 0, 0)); g_plugin.setByte("DisableTrayFlash", (BYTE)IsDlgButtonChecked(hwndDlg, IDC_DISABLEBLINK)); diff --git a/plugins/Clist_modern/src/modern_clisttray.cpp b/plugins/Clist_modern/src/modern_clisttray.cpp index c0aa1ac613..b1c690adac 100644 --- a/plugins/Clist_modern/src/modern_clisttray.cpp +++ b/plugins/Clist_modern/src/modern_clisttray.cpp @@ -141,7 +141,7 @@ INT_PTR cli_TrayIconProcessMessage(WPARAM wParam, LPARAM lParam) break; case TIM_CALLBACK: - if ((GetAsyncKeyState(VK_CONTROL) & 0x8000) && msg->lParam == WM_LBUTTONDOWN && !g_plugin.getByte("Tray1Click", SETTING_TRAY1CLICK_DEFAULT)) { + if ((GetAsyncKeyState(VK_CONTROL) & 0x8000) && msg->lParam == WM_LBUTTONDOWN && !Clist::Tray1Click) { POINT pt; HMENU hMenu = Menu_GetStatusMenu(); g_mutex_bOnTrayRightClick = 1; diff --git a/plugins/Clist_modern/src/modern_defsettings.h b/plugins/Clist_modern/src/modern_defsettings.h index c56fb6911b..98a689399c 100644 --- a/plugins/Clist_modern/src/modern_defsettings.h +++ b/plugins/Clist_modern/src/modern_defsettings.h @@ -196,7 +196,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define SETTING_HIDETIME_DEFAULT 30 #define SETTING_CYCLETIME_DEFAULT 4 #define SETTING_TRAYICON_DEFAULT SETTING_TRAYICON_SINGLE -#define SETTING_ALWAYSSTATUS_DEFAULT 0 #define SETTING_BLENDINACTIVESTATE_DEFAULT 0 diff --git a/plugins/Clist_modern/src/resource.h b/plugins/Clist_modern/src/resource.h index 4c0ab1f200..bf18e49539 100644 --- a/plugins/Clist_modern/src/resource.h +++ b/plugins/Clist_modern/src/resource.h @@ -112,12 +112,10 @@ #define IDC_CLIENTDRAG 1076 #define IDC_EVENTAREA 1077 #define IDC_TOOLWND 1097 -#define IDC_ONECLK 1098 #define IDC_SHOWCAPTION 1098 #define IDC_FADEINOUT 1101 #define IDC_AUTOSIZE 1102 #define IDC_AUTOSIZEUPWARD 1103 -#define IDC_ALWAYSSTATUS 1103 #define IDC_LOCKSIZING 1111 #define IDC_TRANSPARENT 1124 #define IDC_TRANSINACTIVE 1126 diff --git a/plugins/Clist_nicer/res/resource.rc b/plugins/Clist_nicer/res/resource.rc index 572da15180..6f7edb34de 100644 --- a/plugins/Clist_nicer/res/resource.rc +++ b/plugins/Clist_nicer/res/resource.rc @@ -65,12 +65,10 @@ BEGIN "Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,12,121,10 CONTROL "Draw sunken edge",IDC_CLISTSUNKEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,25,121,10 GROUPBOX "System tray icon",IDC_STATIC,1,54,163,63 - CONTROL "Single click interface",IDC_ONECLK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,64,147,10 - CONTROL "Always show status in tooltip",IDC_ALWAYSSTATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP,10,76,147,10 - CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,88,147,10 - EDITTEXT IDC_BLINKTIME,69,99,57,12,ES_RIGHT | ES_NUMBER - CONTROL "Spin5",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,116,97,11,16 - LTEXT "ms",IDC_STATIC,131,101,24,8 + CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,67,147,10 + EDITTEXT IDC_BLINKTIME,69,78,57,12,ES_RIGHT | ES_NUMBER + CONTROL "Spin5",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,120,77,11,16 + LTEXT "ms",IDC_STATIC,131,80,24,8 GROUPBOX "Event area",IDC_STATIC,169,54,133,63 LTEXT "Set base visibility on the frames menu",IDC_STATIC,176,65,121,20 CONTROL "Auto mode",IDC_EVENTAREAAUTOHIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,176,88,121,10 @@ -444,7 +442,7 @@ END 1 TEXTINCLUDE BEGIN - "..\\src\\include\\resource.h\0" + "..\\src\\resource.h\0" END 2 TEXTINCLUDE @@ -530,100 +528,6 @@ IDC_DROP CURSOR "..\\..\\..\\src\\mir_app\\res\\ IDC_DROPUSER CURSOR "..\\..\\..\\src\\mir_app\\res\\cursor_drop_user.cur" - -///////////////////////////////////////////////////////////////////////////// -// -// DESIGNINFO -// - -#ifdef APSTUDIO_INVOKED -GUIDELINES DESIGNINFO -BEGIN - IDD_EXCEPTION, DIALOG - BEGIN - END - - IDD_DELETECONTACT, DIALOG - BEGIN - END - - IDD_OPT_CLIST, DIALOG - BEGIN - END - - IDD_OPT_DSPGROUPS, DIALOG - BEGIN - END - - IDD_OPT_DSPITEMS, DIALOG - BEGIN - END - - IDD_OPT_DSPADVANCED, DIALOG - BEGIN - END - - IDD_OPT_ICONS, DIALOG - BEGIN - VERTGUIDE, 5 - VERTGUIDE, 11 - VERTGUIDE, 20 - VERTGUIDE, 288 - VERTGUIDE, 298 - END - - IDD_OPT_CLUI, DIALOG - BEGIN - HORZGUIDE, 127 - END - - IDD_OPT_CLC, DIALOG - BEGIN - END - - IDD_OPT_CLCBKG, DIALOG - BEGIN - END - - IDD_OPT_SBAR, DIALOG - BEGIN - END - - IDD_OPT_VIEWMODES, DIALOG - BEGIN - END - - IDD_OPT_SKIN, DIALOG - BEGIN - END - - IDD_OPT, DIALOG - BEGIN - END -END -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// AFX_DIALOG_LAYOUT -// - -IDD_OPT_SKIN AFX_DIALOG_LAYOUT -BEGIN - 0 -END - -IDD_OPT_CLIST AFX_DIALOG_LAYOUT -BEGIN - 0 -END - -IDD_OPT_CLC AFX_DIALOG_LAYOUT -BEGIN - 0 -END - #endif // Neutral resources ///////////////////////////////////////////////////////////////////////////// diff --git a/plugins/Clist_nicer/src/clistopts.cpp b/plugins/Clist_nicer/src/clistopts.cpp index ad572e27a1..f89078344c 100644 --- a/plugins/Clist_nicer/src/clistopts.cpp +++ b/plugins/Clist_nicer/src/clistopts.cpp @@ -53,8 +53,6 @@ public: CheckDlgButton(m_hwnd, IDC_CLISTSUNKEN, cfg::dat.dwFlags & CLUI_FRAME_CLISTSUNKEN ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(m_hwnd, IDC_EVENTAREAAUTOHIDE, cfg::dat.dwFlags & CLUI_FRAME_AUTOHIDENOTIFY ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(m_hwnd, IDC_EVENTAREASUNKEN, (cfg::dat.dwFlags & CLUI_FRAME_EVENTAREASUNKEN) ? BST_CHECKED : BST_UNCHECKED); - CheckDlgButton(m_hwnd, IDC_ONECLK, g_plugin.getByte("Tray1Click", SETTING_TRAY1CLICK_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); - CheckDlgButton(m_hwnd, IDC_ALWAYSSTATUS, g_plugin.getByte("AlwaysStatus", SETTING_ALWAYSSTATUS_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(m_hwnd, IDC_ALWAYSMULTI, !g_plugin.getByte("AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT) ? BST_CHECKED : BST_UNCHECKED); CheckDlgButton(m_hwnd, IDC_DISABLEBLINK, g_plugin.getByte("DisableTrayFlash", 0) == 1 ? BST_CHECKED : BST_UNCHECKED); @@ -92,8 +90,6 @@ public: bool OnApply() override { - g_plugin.setByte("Tray1Click", (BYTE)IsDlgButtonChecked(m_hwnd, IDC_ONECLK)); - g_plugin.setByte("AlwaysStatus", (BYTE)IsDlgButtonChecked(m_hwnd, IDC_ALWAYSSTATUS)); g_plugin.setByte("AlwaysMulti", (BYTE)BST_UNCHECKED == IsDlgButtonChecked(m_hwnd, IDC_ALWAYSMULTI)); g_plugin.setByte("TrayIcon", (BYTE)(chkDontCycle.GetState() ? SETTING_TRAYICON_SINGLE : (chkCycle.GetState() ? SETTING_TRAYICON_CYCLE : SETTING_TRAYICON_MULTI))); g_plugin.setWord("CycleTime", (WORD)SendDlgItemMessage(m_hwnd, IDC_CYCLETIMESPIN, UDM_GETPOS, 0, 0)); diff --git a/plugins/Clist_nicer/src/resource.h b/plugins/Clist_nicer/src/resource.h index 851b1edcc3..18610d4d7e 100644 --- a/plugins/Clist_nicer/src/resource.h +++ b/plugins/Clist_nicer/src/resource.h @@ -28,7 +28,6 @@ #define IDD_OPT_DSPGROUPS 303 #define IDC_ACTIVEPERC 1000 #define IDC_OPTIONSTAB 1000 -#define IDC_ALWAYSSTATUS 1009 #define IDC_APPLY 1011 #define IDC_AUTOSIZE 1013 #define IDC_AUTOSIZEUPWARD 1014 @@ -84,7 +83,6 @@ #define IDC_CRIGHTSPIN 1081 #define IDC_LEFTMARGINSPIN 1092 #define IDC_NOGROUPICON 1102 -#define IDC_ONECLK 1105 #define IDC_RIGHTMARGIN 1121 #define IDC_ROWGAP 1122 #define IDC_TRANSPARENT 1124 diff --git a/src/core/stdclist/res/resource.rc b/src/core/stdclist/res/resource.rc index 614c54ac26..45f06891dc 100644 --- a/src/core/stdclist/res/resource.rc +++ b/src/core/stdclist/res/resource.rc @@ -40,7 +40,7 @@ BEGIN LTEXT "This will erase all history and settings for this contact!",IDC_STATIC,7,18,239,16 END -IDD_OPT_CLIST DIALOGEX 0, 0, 314, 219 +IDD_OPT_CLIST DIALOGEX 0, 0, 314, 189 STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD EXSTYLE WS_EX_CONTROLPARENT FONT 8, "MS Shell Dlg", 0, 0, 0x1 @@ -48,23 +48,21 @@ BEGIN CONTROL "Sort contacts by name",IDC_SORTBYNAME,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,14,287,10 CONTROL "Sort contacts by status",IDC_SORTBYSTATUS,"Button",BS_AUTORADIOBUTTON,10,26,287,10 CONTROL "Sort contacts by protocol",IDC_SORTBYPROTO,"Button",BS_AUTORADIOBUTTON,10,38,287,10 - CONTROL "Single click interface",IDC_ONECLK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,83,298,10 - CONTROL "Always show status in tooltip",IDC_ALWAYSSTATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP,10,96,151,11 - CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,110,86,9 - EDITTEXT IDC_BLINKTIME,12,123,35,12,ES_NUMBER - CONTROL "Spin5",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,39,123,11,14 - LTEXT "ms delay",IDC_STMSDELAY,52,126,113,8 - CONTROL "Show",IDC_DONTCYCLE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,158,90,10 - COMBOBOX IDC_PRIMARYSTATUS,104,157,78,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - LTEXT "icon when statuses differ",IDC_STATIC,189,159,116,8,NOT WS_GROUP - CONTROL "Cycle icons every",IDC_CYCLE,"Button",BS_AUTORADIOBUTTON,10,175,89,10 - EDITTEXT IDC_CYCLETIME,103,174,30,12,ES_RIGHT | ES_NUMBER - CONTROL "Spin1",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,127,158,10,14 - LTEXT "seconds, when statuses differ",IDC_STATIC,141,176,165,8,NOT WS_GROUP - CONTROL "Show multiple icons",IDC_MULTITRAY,"Button",BS_AUTORADIOBUTTON,10,192,91,10 - CONTROL "Only when statuses differ",IDC_ALWAYSMULTI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,108,192,198,10 - GROUPBOX "System tray icon",IDC_STATIC,2,72,310,70 - GROUPBOX "System tray icon when using multiple protocols",IDC_STATIC,2,146,310,66 + CONTROL "Disable icon blinking",IDC_DISABLEBLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,86,86,9 + EDITTEXT IDC_BLINKTIME,12,99,35,12,ES_NUMBER + CONTROL "Spin5",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,43,99,11,14 + LTEXT "ms delay",IDC_STMSDELAY,52,102,113,8 + CONTROL "Show",IDC_DONTCYCLE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,133,90,10 + COMBOBOX IDC_PRIMARYSTATUS,104,132,78,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "icon when statuses differ",IDC_STATIC,189,134,116,8,NOT WS_GROUP + CONTROL "Cycle icons every",IDC_CYCLE,"Button",BS_AUTORADIOBUTTON,10,150,89,10 + EDITTEXT IDC_CYCLETIME,103,149,30,12,ES_RIGHT | ES_NUMBER + CONTROL "Spin1",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,127,133,10,14 + LTEXT "seconds, when statuses differ",IDC_STATIC,141,151,165,8,NOT WS_GROUP + CONTROL "Show multiple icons",IDC_MULTITRAY,"Button",BS_AUTORADIOBUTTON,10,167,91,10 + CONTROL "Only when statuses differ",IDC_ALWAYSMULTI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,108,167,198,10 + GROUPBOX "System tray icon",IDC_STATIC,2,72,310,47 + GROUPBOX "System tray icon when using multiple protocols",IDC_STATIC,2,121,310,61 GROUPBOX "Contact list sorting",IDC_STATIC,2,2,310,68,WS_GROUP CONTROL "Don't move offline user to bottom",IDC_NOOFFLINEMOVE, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,53,287,10 @@ -230,9 +228,7 @@ BEGIN VERTGUIDE, 2 VERTGUIDE, 308 TOPMARGIN, 2 - BOTTOMMARGIN, 217 - HORZGUIDE, 179 - HORZGUIDE, 196 + BOTTOMMARGIN, 187 END IDD_OPT_CLUI, DIALOG diff --git a/src/core/stdclist/src/clistopts.cpp b/src/core/stdclist/src/clistopts.cpp index 9f7ee3c2b6..fa86e449df 100644 --- a/src/core/stdclist/src/clistopts.cpp +++ b/src/core/stdclist/src/clistopts.cpp @@ -57,8 +57,6 @@ public: sortByStatus.SetState(g_plugin.getByte("SortByStatus", SETTING_SORTBYSTATUS_DEFAULT)); chkOfflineBottom.SetState(g_plugin.getByte("NoOfflineBottom")); - CheckDlgButton(m_hwnd, IDC_ONECLK, g_plugin.getByte("Tray1Click", SETTING_TRAY1CLICK_DEFAULT)); - CheckDlgButton(m_hwnd, IDC_ALWAYSSTATUS, g_plugin.getByte("AlwaysStatus", SETTING_ALWAYSSTATUS_DEFAULT)); CheckDlgButton(m_hwnd, IDC_ALWAYSMULTI, !g_plugin.getByte("AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT)); int iTrayIcon = g_plugin.getByte("TrayIcon", SETTING_TRAYICON_DEFAULT); @@ -92,8 +90,6 @@ public: g_plugin.setByte("SortByStatus", g_bSortByStatus = sortByStatus.GetState()); g_plugin.setByte("SortByProto", g_bSortByProto = sortByProto.GetState()); g_plugin.setByte("NoOfflineBottom", g_bNoOfflineBottom = chkOfflineBottom.GetState()); - g_plugin.setByte("Tray1Click", IsDlgButtonChecked(m_hwnd, IDC_ONECLK)); - g_plugin.setByte("AlwaysStatus", IsDlgButtonChecked(m_hwnd, IDC_ALWAYSSTATUS)); g_plugin.setByte("AlwaysMulti", !IsDlgButtonChecked(m_hwnd, IDC_ALWAYSMULTI)); g_plugin.setByte("TrayIcon", (chkDontCycle.GetState() ? SETTING_TRAYICON_SINGLE : (chkCycle.GetState() ? SETTING_TRAYICON_CYCLE : SETTING_TRAYICON_MULTI))); g_plugin.setWord("CycleTime", cycleTime.GetPosition()); diff --git a/src/core/stdclist/src/resource.h b/src/core/stdclist/src/resource.h index 76473f5926..6f22f577d9 100644 --- a/src/core/stdclist/src/resource.h +++ b/src/core/stdclist/src/resource.h @@ -18,7 +18,6 @@ #define IDC_SHOWMAINMENU 1075 #define IDC_CLIENTDRAG 1076 #define IDC_TOOLWND 1097 -#define IDC_ONECLK 1098 #define IDC_SHOWCAPTION 1098 #define IDC_SHOWHIDE 1100 #define IDC_SORTBYSTATUS 1101 @@ -26,7 +25,6 @@ #define IDC_READMSG 1102 #define IDC_AUTOSIZE 1102 #define IDC_AUTOSIZEUPWARD 1103 -#define IDC_ALWAYSSTATUS 1103 #define IDC_NETSEARCH 1104 #define IDC_SORTBYPROTO 1105 #define IDC_SHOWOPTIONS 1105 diff --git a/src/mir_app/res/resource.rc b/src/mir_app/res/resource.rc index cd5f6037e3..8a87c31d8d 100644 --- a/src/mir_app/res/resource.rc +++ b/src/mir_app/res/resource.rc @@ -777,7 +777,7 @@ BEGIN EDITTEXT IDC_CREDITSFILE,4,32,202,67,ES_CENTER | ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | NOT WS_BORDER | WS_VSCROLL END -IDD_OPT_CLIST DIALOGEX 0, 0, 302, 202 +IDD_OPT_CLIST DIALOGEX 0, 0, 302, 214 STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD EXSTYLE WS_EX_CONTROLPARENT FONT 8, "MS Shell Dlg", 0, 0, 0x1 @@ -793,6 +793,9 @@ BEGIN CONTROL "Search works as filter",IDC_FILTER_SEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,89,166,10 CTEXT "'Hide offline' means to hide:",IDC_STATIC,183,14,105,8 CONTROL "",IDC_HIDEOFFLINEOPTS,"SysTreeView32",TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | TVS_NONEVENHEIGHT | WS_BORDER | WS_HSCROLL | WS_TABSTOP,183,24,105,104 + GROUPBOX "Tray",IDC_STATIC,6,135,289,39 + CONTROL "Single click interface",IDC_ONECLK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,145,276,10 + CONTROL "Always show status in tooltip",IDC_ALWAYSSTATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP,14,159,276,11 END IDD_OPT_CHAT_EVENTS DIALOGEX 0, 0, 306, 201 @@ -952,6 +955,7 @@ BEGIN PUSHBUTTON "Set password",IDC_USERPASS1,200,153,111,17 END + ///////////////////////////////////////////////////////////////////////////// // // DESIGNINFO @@ -1181,6 +1185,7 @@ BEGIN IDD_OPT_CLIST, DIALOG BEGIN + BOTTOMMARGIN, 165 END IDD_OPT_CHAT_EVENTS, DIALOG @@ -1402,6 +1407,7 @@ IDI_SOUND ICON "sound.ico" IDI_DATABASE ICON "database.ico" + ///////////////////////////////////////////////////////////////////////////// // // Cursor diff --git a/src/mir_app/src/clistopts.cpp b/src/mir_app/src/clistopts.cpp index d4ae7a8293..e69ee22f05 100644 --- a/src/mir_app/src/clistopts.cpp +++ b/src/mir_app/src/clistopts.cpp @@ -34,6 +34,9 @@ CMOption Clist::HideEmptyGroups(MODULENAME, "HideEmptyGroups", false); CMOption Clist::DisableIconBlink(MODULENAME, "NoIconBlink", false); CMOption Clist::RemoveTempContacts(MODULENAME, "RemoveTempContacts", true); +CMOption Clist::Tray1Click(MODULENAME, "Tray1Click", IsWinVer7Plus()); +CMOption Clist::TrayAlwaysStatus(MODULENAME, "AlwaysStatus", false); + CMOption Clist::FilterSearch("CLC", "FilterSearch", false); CMOption Clist::OfflineModes("CLC", "OfflineModes", MODEF_OFFLINE); @@ -59,23 +62,28 @@ static const offlineValues[] = class ClistCommonOptsDlg : public CDlgBase { CCtrlCheck chkUseGroups, chkHideOffline, chkConfirmDelete, chkHideEmptyGroups, chkRemoveTempContacts, chkDisableIconBlink, chkFilterSearch; + CCtrlCheck chkAlwaysStatus, chkOneClick; CCtrlTreeView hideStatuses; public: ClistCommonOptsDlg() : CDlgBase(g_plugin, IDD_OPT_CLIST), hideStatuses(this, IDC_HIDEOFFLINEOPTS), + chkOneClick(this, IDC_ONECLK), chkUseGroups(this, IDC_USEGROUPS), chkHideOffline(this, IDC_HIDEOFFLINE), chkFilterSearch(this, IDC_FILTER_SEARCH), + chkAlwaysStatus(this, IDC_ALWAYSSTATUS), chkConfirmDelete(this, IDC_CONFIRMDELETE), chkHideEmptyGroups(this, IDC_HIDEEMPTYGROUPS), chkDisableIconBlink(this, IDC_DISABLEICONBLINK), chkRemoveTempContacts(this, IDC_REMOVETEMP) { + CreateLink(chkOneClick, Clist::Tray1Click); CreateLink(chkUseGroups, Clist::UseGroups); CreateLink(chkHideOffline, Clist::HideOffline); CreateLink(chkFilterSearch, Clist::FilterSearch); + CreateLink(chkAlwaysStatus, Clist::TrayAlwaysStatus); CreateLink(chkConfirmDelete, Clist::ConfirmDelete); CreateLink(chkHideEmptyGroups, Clist::HideEmptyGroups); CreateLink(chkDisableIconBlink, Clist::DisableIconBlink); diff --git a/src/mir_app/src/clisttray.cpp b/src/mir_app/src/clisttray.cpp index 1543ea515e..814d3e1fe7 100644 --- a/src/mir_app/src/clisttray.cpp +++ b/src/mir_app/src/clisttray.cpp @@ -83,7 +83,7 @@ MIR_APP_DLL(wchar_t*) Clist_TrayIconMakeTooltip(const wchar_t *szPrefix, const c CMStringW tszTip; if (szPrefix && szPrefix[0]) { - if (!db_get_b(0, "CList", "AlwaysStatus", SETTING_ALWAYSSTATUS_DEFAULT)) { + if (!Clist::TrayAlwaysStatus) { wcsncpy_s(g_clistApi.szTip, MAX_TIP_SIZE, szPrefix, _TRUNCATE); return g_clistApi.szTip; } @@ -126,7 +126,7 @@ MIR_APP_DLL(wchar_t*) Clist_TrayIconMakeTooltip(const wchar_t *szPrefix, const c ptrW ProtoXStatus(sttGetXStatus(szProto)); wchar_t *szStatus = Clist_GetStatusModeDescription(pa->iRealStatus, 0); if (szPrefix && szPrefix[0]) { - if (db_get_b(0, "CList", "AlwaysStatus", SETTING_ALWAYSSTATUS_DEFAULT)) { + if (Clist::TrayAlwaysStatus) { if (hasTips()) { if (ProtoXStatus != nullptr) mir_snwprintf(g_clistApi.szTip, MAX_TIP_SIZE, L"%s%s%-12.12s\t%s%s%-24.24s", szPrefix, szSeparator, pa->tszAccountName, szStatus, szSeparator, ProtoXStatus.get()); @@ -676,7 +676,7 @@ INT_PTR fnTrayIconProcessMessage(WPARAM wParam, LPARAM lParam) if (msg->lParam == WM_MBUTTONUP) g_clistApi.pfnShowHide(); - else if (msg->lParam == (db_get_b(0, "CList", "Tray1Click", SETTING_TRAY1CLICK_DEFAULT) ? WM_LBUTTONUP : WM_LBUTTONDBLCLK)) { + else if (msg->lParam == (Clist::Tray1Click ? WM_LBUTTONUP : WM_LBUTTONDBLCLK)) { if ((GetAsyncKeyState(VK_CONTROL) & 0x8000)) { POINT pt; HMENU hMenu = Menu_GetStatusMenu(); diff --git a/src/mir_app/src/mir_app.def b/src/mir_app/src/mir_app.def index 25c60a0135..58619f5392 100644 --- a/src/mir_app/src/mir_app.def +++ b/src/mir_app/src/mir_app.def @@ -769,3 +769,5 @@ _Netlib_GetTlsUnique@8 @831 NONAME ?usesPassword@MDatabaseCommon@@QBE_NXZ @857 NONAME ?SetPassword@MDatabaseCommon@@QAEXPB_W@Z @858 NONAME ?EnableEncryption@MDatabaseReadonly@@UAGHH@Z @859 NONAME +?Tray1Click@Clist@@3V?$CMOption@_N@@A @860 NONAME +?TrayAlwaysStatus@Clist@@3V?$CMOption@_N@@A @861 NONAME diff --git a/src/mir_app/src/mir_app64.def b/src/mir_app/src/mir_app64.def index f347c13879..0b45f3ea01 100644 --- a/src/mir_app/src/mir_app64.def +++ b/src/mir_app/src/mir_app64.def @@ -769,3 +769,5 @@ Netlib_GetTlsUnique @831 NONAME ?usesPassword@MDatabaseCommon@@QEBA_NXZ @857 NONAME ?SetPassword@MDatabaseCommon@@QEAAXPEB_W@Z @858 NONAME ?EnableEncryption@MDatabaseReadonly@@UEAAHH@Z @859 NONAME +?Tray1Click@Clist@@3V?$CMOption@_N@@A @860 NONAME +?TrayAlwaysStatus@Clist@@3V?$CMOption@_N@@A @861 NONAME diff --git a/src/mir_app/src/resource.h b/src/mir_app/src/resource.h index 8eb66e8175..776a7ee737 100644 --- a/src/mir_app/src/resource.h +++ b/src/mir_app/src/resource.h @@ -244,6 +244,7 @@ #define IDC_BBRESET 1052 #define IDC_NICK 1053 #define IDC_BTN_EXPORT 1054 +#define IDC_ALWAYSSTATUS 1055 #define IDC_FONTLIST 1056 #define IDC_CHOOSEFONT 1057 #define IDC_EFFECT 1058 @@ -306,6 +307,7 @@ #define IDC_SPIN1 1103 #define IDC_SEPARATOR 1104 #define IDC_EDIT1 1105 +#define IDC_ONECLK 1106 #define IDC_BUILDTIME 1108 #define IDC_CREDITSFILE 1109 #define IDC_SELECTCRYPT_COMBO 1110 -- cgit v1.2.3