summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/win32/mir_app.libbin231490 -> 231490 bytes
-rw-r--r--libs/win64/mir_app.libbin227768 -> 227768 bytes
-rw-r--r--plugins/Clist_modern/res/resource.rc10
-rw-r--r--plugins/Clist_modern/src/modern_clcopts.cpp11
-rw-r--r--plugins/Clist_modern/src/modern_defsettings.h2
-rw-r--r--plugins/Clist_modern/src/resource.h3
-rw-r--r--plugins/Clist_nicer/res/resource.rc61
-rw-r--r--plugins/Clist_nicer/src/clistopts.cpp5
-rw-r--r--plugins/Clist_nicer/src/resource.h7
-rw-r--r--src/core/stdclist/res/resource.rc59
-rw-r--r--src/core/stdclist/src/clistopts.cpp38
-rw-r--r--src/core/stdclist/src/contact.cpp6
-rw-r--r--src/core/stdclist/src/init.cpp7
-rw-r--r--src/core/stdclist/src/resource.h7
-rw-r--r--src/core/stdclist/src/stdafx.h2
-rw-r--r--src/mir_app/res/resource.rc15
-rw-r--r--src/mir_app/res/version.rc1
-rw-r--r--src/mir_app/src/clc.h4
-rw-r--r--src/mir_app/src/clistevents.cpp30
-rw-r--r--src/mir_app/src/clistopts.cpp29
-rw-r--r--src/mir_app/src/clisttray.cpp34
-rw-r--r--src/mir_app/src/copyright.h2
-rw-r--r--src/mir_app/src/resource.h7
-rw-r--r--src/mir_app/src/stdafx.h1
24 files changed, 175 insertions, 166 deletions
diff --git a/libs/win32/mir_app.lib b/libs/win32/mir_app.lib
index 2b562bc3b5..6bb559b960 100644
--- a/libs/win32/mir_app.lib
+++ b/libs/win32/mir_app.lib
Binary files differ
diff --git a/libs/win64/mir_app.lib b/libs/win64/mir_app.lib
index 4f2ee2f598..ba28df93d7 100644
--- a/libs/win64/mir_app.lib
+++ b/libs/win64/mir_app.lib
Binary files differ
diff --git a/plugins/Clist_modern/res/resource.rc b/plugins/Clist_modern/res/resource.rc
index 3113b7e2ac..daaa0881bf 100644
--- a/plugins/Clist_modern/res/resource.rc
+++ b/plugins/Clist_modern/res/resource.rc
@@ -413,15 +413,11 @@ STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
EXSTYLE WS_EX_CONTROLPARENT
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
- 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 "Use xStatus icon",IDC_SHOWXSTATUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,19,277,10
+ CONTROL "Show normal status as overlay",IDC_SHOWNORMAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,32,277,10
CONTROL "Status overlay opacity is 75%",IDC_TRANSPARENTOVERLAY,
- "Button",BS_AUTOCHECKBOX | WS_TABSTOP,171,45,117,10
+ "Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,45,277,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,124,10
diff --git a/plugins/Clist_modern/src/modern_clcopts.cpp b/plugins/Clist_modern/src/modern_clcopts.cpp
index 51120e8fd9..d5d25caf10 100644
--- a/plugins/Clist_modern/src/modern_clcopts.cpp
+++ b/plugins/Clist_modern/src/modern_clcopts.cpp
@@ -562,7 +562,6 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L
case WM_INITDIALOG:
TranslateDialogDefault(hwndDlg);
- 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);
{
uint8_t trayOption = db_get_b(0, "CLUI", "XStatusTray", SETTING_TRAYOPTION_DEFAULT);
@@ -574,11 +573,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_DISABLEBLINK, g_plugin.getByte("DisableTrayFlash", SETTING_DISABLETRAYFLASH_DEFAULT) == 1 ? BST_CHECKED : BST_UNCHECKED);
-
- SendDlgItemMessage(hwndDlg, IDC_BLINKSPIN, UDM_SETRANGE, 0, MAKELONG(0x3FFF, 250));
- SendDlgItemMessage(hwndDlg, IDC_BLINKSPIN, UDM_SETPOS, 0, MAKELONG(g_plugin.getWord("IconFlashTime", SETTING_ICONFLASHTIME_DEFAULT), 0));
-
// == Tray icon mode ==
// preparing account list.
{
@@ -666,7 +660,7 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L
return 0;
if (LOWORD(wParam) == IDC_PRIMARYSTATUS_V && HIWORD(wParam) != CBN_SELCHANGE)
return 0;
- if ((LOWORD(wParam) == IDC_BLINKTIME || LOWORD(wParam) == IDC_CYCLETIME) && (HIWORD(wParam) != EN_CHANGE || (HWND)lParam != GetFocus()))
+ if ((LOWORD(wParam) == IDC_CYCLETIME) && (HIWORD(wParam) != EN_CHANGE || (HWND)lParam != GetFocus()))
return 0;
SendMessage(GetParent(hwndDlg), PSM_CHANGED, (WPARAM)hwndDlg, 0);
break;
@@ -676,9 +670,6 @@ static INT_PTR CALLBACK DlgProcTrayOpts(HWND hwndDlg, UINT msg, WPARAM wParam, L
case 0:
switch (((LPNMHDR)lParam)->code) {
case PSN_APPLY:
- g_plugin.setWord("IconFlashTime", (uint16_t)SendDlgItemMessage(hwndDlg, IDC_BLINKSPIN, UDM_GETPOS, 0, 0));
- g_plugin.setByte("DisableTrayFlash", (uint8_t)IsDlgButtonChecked(hwndDlg, IDC_DISABLEBLINK));
-
uint8_t xOptions = 0;
xOptions = IsDlgButtonChecked(hwndDlg, IDC_SHOWXSTATUS) ? 1 : 0;
xOptions |= (xOptions && IsDlgButtonChecked(hwndDlg, IDC_SHOWNORMAL)) ? 2 : 0;
diff --git a/plugins/Clist_modern/src/modern_defsettings.h b/plugins/Clist_modern/src/modern_defsettings.h
index eaf83f0e33..966f33e47c 100644
--- a/plugins/Clist_modern/src/modern_defsettings.h
+++ b/plugins/Clist_modern/src/modern_defsettings.h
@@ -34,8 +34,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#define SETTING_ONTOP_DEFAULT 1
#define SETTING_MIN2TRAY_DEFAULT 1
#define SETTING_PLACEOFFLINETOROOT_DEFAULT 0
-#define SETTING_DISABLETRAYFLASH_DEFAULT 0
-#define SETTING_ICONFLASHTIME_DEFAULT 550
#define SETTING_THINBORDER_DEFAULT 0
#define SETTING_NOBORDER_DEFAULT 0
#define SETTING_WINDOWSHADOW_DEFAULT 0
diff --git a/plugins/Clist_modern/src/resource.h b/plugins/Clist_modern/src/resource.h
index bf18e49539..1655f02bde 100644
--- a/plugins/Clist_modern/src/resource.h
+++ b/plugins/Clist_modern/src/resource.h
@@ -225,9 +225,6 @@
#define IDC_HIDE 1534
#define IDC_TOPLINE 1535
#define IDC_BRINGTOFRONT 1579
-#define IDC_BLINKTIME 1607
-#define IDC_BLINKSPIN 1608
-#define IDC_DISABLEBLINK 1609
#define IDC_IDLE 1610
#define IDC_META 1611
#define IDC_DROPSHADOW 1612
diff --git a/plugins/Clist_nicer/res/resource.rc b/plugins/Clist_nicer/res/resource.rc
index 6f7edb34de..ff7b5a042c 100644
--- a/plugins/Clist_nicer/res/resource.rc
+++ b/plugins/Clist_nicer/res/resource.rc
@@ -18,7 +18,7 @@
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NEU)
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
-#pragma code_page(1251)
+#pragma code_page(1252)
/////////////////////////////////////////////////////////////////////////////
//
@@ -64,23 +64,18 @@ BEGIN
CONTROL "Show menu and status buttons",IDC_SHOWBOTTOMBUTTONS,
"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 "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
- CONTROL "Draw sunken edge",IDC_EVENTAREASUNKEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,176,101,121,10
- GROUPBOX "System tray icon when using multiple protocols",IDC_STATIC,1,118,302,71
- CONTROL "Show",IDC_DONTCYCLE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,130,92,10
- COMBOBOX IDC_PRIMARYSTATUS,107,129,78,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
- LTEXT "icon when statuses differ",IDC_STATIC,189,131,113,8,NOT WS_GROUP
- CONTROL "Cycle icons every",IDC_CYCLE,"Button",BS_AUTORADIOBUTTON,10,144,92,10
- EDITTEXT IDC_CYCLETIME,107,144,30,12,ES_RIGHT | ES_NUMBER
- CONTROL "Spin1",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,128,162,11,14
- LTEXT "seconds, when statuses differ",IDC_STATIC,140,146,155,8,NOT WS_GROUP
+ GROUPBOX "Event area",IDC_STATIC,1,54,301,50
+ LTEXT "Set base visibility on the frames menu",IDC_STATIC,11,65,289,11
+ CONTROL "Auto mode",IDC_EVENTAREAAUTOHIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,77,285,10
+ CONTROL "Draw sunken edge",IDC_EVENTAREASUNKEN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,11,90,288,10
+ GROUPBOX "System tray icon when using multiple protocols",IDC_STATIC,1,106,302,81
+ CONTROL "Show",IDC_DONTCYCLE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,121,92,10
+ COMBOBOX IDC_PRIMARYSTATUS,107,120,78,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "icon when statuses differ",IDC_STATIC,189,122,113,8,NOT WS_GROUP
+ CONTROL "Cycle icons every",IDC_CYCLE,"Button",BS_AUTORADIOBUTTON,10,139,92,10
+ EDITTEXT IDC_CYCLETIME,107,139,30,12,ES_RIGHT | ES_NUMBER
+ CONTROL "Spin1",IDC_CYCLETIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,130,138,11,14
+ LTEXT "seconds, when statuses differ",IDC_STATIC,140,141,155,8,NOT WS_GROUP
CONTROL "Show multiple icons",IDC_MULTITRAY,"Button",BS_AUTORADIOBUTTON,10,158,92,10
CONTROL "Only when statuses differ",IDC_ALWAYSMULTI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,107,158,186,10
CONTROL "Do not show system tray icon tooltips on mouse over",IDC_NOTRAYINFOTIPS,
@@ -528,6 +523,36 @@ 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_OPT_CLIST, DIALOG
+ BEGIN
+ END
+
+ IDD_OPT_CLUI, DIALOG
+ BEGIN
+ END
+END
+#endif // APSTUDIO_INVOKED
+
+
+/////////////////////////////////////////////////////////////////////////////
+//
+// AFX_DIALOG_LAYOUT
+//
+
+IDD_OPT_CLIST 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 b5cd53c932..8869c4a965 100644
--- a/plugins/Clist_nicer/src/clistopts.cpp
+++ b/plugins/Clist_nicer/src/clistopts.cpp
@@ -54,7 +54,6 @@ public:
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_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);
chkCycle.SetState(g_plugin.getByte("TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_CYCLE);
chkMulti.SetState(g_plugin.getByte("TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_MULTI);
@@ -81,8 +80,6 @@ public:
if (CB_ERR == (int)SendDlgItemMessage(m_hwnd, IDC_PRIMARYSTATUS, CB_GETCURSEL, 0, 0))
SendDlgItemMessage(m_hwnd, IDC_PRIMARYSTATUS, CB_SETCURSEL, 0, 0);
- SendDlgItemMessage(m_hwnd, IDC_BLINKSPIN, UDM_SETRANGE, 0, MAKELONG(0x3FFF, 250));
- SendDlgItemMessage(m_hwnd, IDC_BLINKSPIN, UDM_SETPOS, 0, MAKELONG(g_plugin.getWord("IconFlashTime", 550), 0));
CheckDlgButton(m_hwnd, IDC_NOTRAYINFOTIPS, cfg::dat.bNoTrayTips ? 1 : 0);
CheckDlgButton(m_hwnd, IDC_APPLYLASTVIEWMODE, g_plugin.getByte("AutoApplyLastViewMode", 0) ? BST_CHECKED : BST_UNCHECKED);
return true;
@@ -93,8 +90,6 @@ public:
g_plugin.setByte("AlwaysMulti", (uint8_t)BST_UNCHECKED == IsDlgButtonChecked(m_hwnd, IDC_ALWAYSMULTI));
g_plugin.setByte("TrayIcon", (uint8_t)(chkDontCycle.GetState() ? SETTING_TRAYICON_SINGLE : (chkCycle.GetState() ? SETTING_TRAYICON_CYCLE : SETTING_TRAYICON_MULTI)));
g_plugin.setWord("CycleTime", (uint16_t)SendDlgItemMessage(m_hwnd, IDC_CYCLETIMESPIN, UDM_GETPOS, 0, 0));
- g_plugin.setWord("IconFlashTime", (uint16_t)SendDlgItemMessage(m_hwnd, IDC_BLINKSPIN, UDM_GETPOS, 0, 0));
- g_plugin.setByte("DisableTrayFlash", (uint8_t)IsDlgButtonChecked(m_hwnd, IDC_DISABLEBLINK));
g_plugin.setByte("AutoApplyLastViewMode", (uint8_t)IsDlgButtonChecked(m_hwnd, IDC_APPLYLASTVIEWMODE));
cfgSetFlag(m_hwnd, CLUI_FRAME_EVENTAREASUNKEN, IDC_EVENTAREASUNKEN);
diff --git a/plugins/Clist_nicer/src/resource.h b/plugins/Clist_nicer/src/resource.h
index 18610d4d7e..c67d6c1ceb 100644
--- a/plugins/Clist_nicer/src/resource.h
+++ b/plugins/Clist_nicer/src/resource.h
@@ -1,6 +1,6 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
-// Used by d:\Miranda NG Git_orig_commit\miranda-ng\plugins\Clist_nicer\res\resource.rc
+// Used by W:\miranda-ng\plugins\clist_nicer\res\resource.rc
//
#define IDD_OPT_VIEWMODES 1
#define IDD_OPT_SKIN 4
@@ -179,9 +179,6 @@
#define IDC_HIDE 1534
#define IDC_TOPLINE 1535
#define IDC_BRINGTOFRONT 1579
-#define IDC_BLINKTIME 1607
-#define IDC_BLINKSPIN 1608
-#define IDC_DISABLEBLINK 1609
#define IDC_IDLE 1610
#define IDC_SBPANELBEVEL 1611
#define IDC_DBLCLKAVATARS 1611
@@ -326,7 +323,7 @@
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
-#define _APS_NEXT_RESOURCE_VALUE 11
+#define _APS_NEXT_RESOURCE_VALUE 12
#define _APS_NEXT_COMMAND_VALUE 40061
#define _APS_NEXT_CONTROL_VALUE 40066
#define _APS_NEXT_SYMED_VALUE 40154
diff --git a/src/core/stdclist/res/resource.rc b/src/core/stdclist/res/resource.rc
index 45f06891dc..22ccc72edc 100644
--- a/src/core/stdclist/res/resource.rc
+++ b/src/core/stdclist/res/resource.rc
@@ -45,27 +45,22 @@ STYLE DS_SETFONT | DS_FIXEDSYS | WS_CHILD
EXSTYLE WS_EX_CONTROLPARENT
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
+ GROUPBOX "Contact list sorting",IDC_STATIC,2,2,310,68,WS_GROUP
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 "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,
+ CONTROL "Move offline users to bottom",IDC_MOVE_OFFLINE_BOTTOM,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,10,53,287,10
+ CONTROL "Show",IDC_DONTCYCLE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,10,83,90,10
+ COMBOBOX IDC_PRIMARYSTATUS,104,82,78,70,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
+ LTEXT "icon when statuses differ",IDC_STATIC,189,84,116,8,NOT WS_GROUP
+ CONTROL "Cycle icons every",IDC_CYCLE,"Button",BS_AUTORADIOBUTTON,10,100,89,10
+ EDITTEXT IDC_CYCLETIME,103,99,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,98,11,14
+ LTEXT "seconds, when statuses differ",IDC_STATIC,141,101,165,8,NOT WS_GROUP
+ CONTROL "Show multiple icons",IDC_MULTITRAY,"Button",BS_AUTORADIOBUTTON,10,117,91,10
+ CONTROL "Only when statuses differ",IDC_ALWAYSMULTI,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,108,117,198,10
+ GROUPBOX "System tray icon when using multiple protocols",IDC_STATIC,2,71,310,61
END
IDD_OPT_CLUI DIALOGEX 0, 0, 313, 233
@@ -129,7 +124,7 @@ BEGIN
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,59,179,10
CONTROL "Make selection highlight translucent",IDC_NOTNOTRANSLUCENTSEL,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,71,179,10
- CONTROL "Dim idle contacts",IDC_IDLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,83,155,10
+ CONTROL "Dim idle contacts",IDC_IDLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,9,83,153,10
GROUPBOX "Groups",IDC_STATIC,2,99,148,117
CONTROL "Draw a line alongside group names",IDC_LINEWITHGROUPS,
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,9,109,131,16
@@ -142,26 +137,26 @@ BEGIN
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,9,181,131,16
LTEXT "Indent groups by:",IDC_STATIC,9,201,67,8
EDITTEXT IDC_GROUPINDENT,78,199,31,12,ES_RIGHT | ES_NUMBER
- CONTROL "Spin1",IDC_GROUPINDENTSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,103,204,10,14
+ CONTROL "Spin1",IDC_GROUPINDENTSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,103,198,10,14
LTEXT "pixels",IDC_STATIC,112,201,36,8
GROUPBOX "Visual",IDC_STATIC,156,99,156,131
- CONTROL "Scroll list smoothly",IDC_NOTNOSMOOTHSCROLLING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,164,110,139,10
+ CONTROL "Scroll list smoothly",IDC_NOTNOSMOOTHSCROLLING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,162,110,139,10
LTEXT "Time:",IDC_STATIC11,174,122,42,8
EDITTEXT IDC_SMOOTHTIME,216,120,31,12,ES_RIGHT | ES_NUMBER
- CONTROL "Spin1",IDC_SMOOTHTIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,126,10,14
+ CONTROL "Spin1",IDC_SMOOTHTIMESPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,119,10,14
LTEXT "milliseconds",IDC_STATIC12,250,122,56,8,SS_CENTERIMAGE
- CONTROL "Hide vertical scroll bar",IDC_NOSCROLLBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,164,135,140,10
- LTEXT "Left margin:",IDC_STATIC,164,148,51,8
+ CONTROL "Hide vertical scroll bar",IDC_NOSCROLLBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,162,135,140,10
+ LTEXT "Left margin:",IDC_STATIC,162,148,51,8
EDITTEXT IDC_LEFTMARGIN,215,146,31,12,ES_RIGHT | ES_NUMBER
- CONTROL "Spin1",IDC_LEFTMARGINSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,152,10,14
+ CONTROL "Spin1",IDC_LEFTMARGINSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,145,10,14
LTEXT "pixels",IDC_STATIC,250,148,54,8
- LTEXT "Row height:",IDC_STATIC,164,163,51,8
+ LTEXT "Row height:",IDC_STATIC,162,163,51,8
EDITTEXT IDC_ROWHEIGHT,215,161,31,12,ES_RIGHT | ES_NUMBER
- CONTROL "Spin1",IDC_ROWHEIGHTSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,167,10,14
+ CONTROL "Spin1",IDC_ROWHEIGHTSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,240,161,10,14
LTEXT "pixels",IDC_STATIC,250,163,54,8
- CONTROL "Gamma correction",IDC_GAMMACORRECT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,164,174,140,10
- CONTROL "Gray out entire list when:",IDC_GREYOUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,164,185,139,10
- CONTROL "Tree1",IDC_GREYOUTOPTS,"SysTreeView32",TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | WS_BORDER | WS_HSCROLL | WS_TABSTOP,164,195,141,32
+ CONTROL "Gamma correction",IDC_GAMMACORRECT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,162,174,140,10
+ CONTROL "Gray out entire list when:",IDC_GREYOUT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,162,185,139,10
+ CONTROL "Tree1",IDC_GREYOUTOPTS,"SysTreeView32",TVS_DISABLEDRAGDROP | TVS_NOTOOLTIPS | WS_BORDER | WS_HSCROLL | WS_TABSTOP,162,195,141,32
END
IDD_OPT_CLCBKG DIALOGEX 0, 0, 235, 154
@@ -257,13 +252,9 @@ BEGIN
LEFTMARGIN, 2
RIGHTMARGIN, 312
VERTGUIDE, 9
- VERTGUIDE, 164
- VERTGUIDE, 216
+ VERTGUIDE, 162
TOPMARGIN, 2
BOTTOMMARGIN, 232
- HORZGUIDE, 145
- HORZGUIDE, 163
- HORZGUIDE, 222
END
IDD_OPT_CLCBKG, DIALOG
diff --git a/src/core/stdclist/src/clistopts.cpp b/src/core/stdclist/src/clistopts.cpp
index 7a269a8a8b..29683b6506 100644
--- a/src/core/stdclist/src/clistopts.cpp
+++ b/src/core/stdclist/src/clistopts.cpp
@@ -26,10 +26,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
class ClistOptsDlg : public CDlgBase
{
- CCtrlSpin cycleTime, blink;
+ CCtrlSpin cycleTime;
CCtrlCombo status;
CCtrlCheck sortByName, sortByStatus, sortByProto, chkOfflineBottom;
- CCtrlCheck chkDisableBlink, chkCycle, chkDontCycle, chkMulti;
+ CCtrlCheck chkCycle, chkDontCycle, chkMulti;
public:
ClistOptsDlg() :
@@ -37,16 +37,13 @@ public:
chkCycle(this, IDC_CYCLE),
chkMulti(this, IDC_MULTITRAY),
chkDontCycle(this, IDC_DONTCYCLE),
- blink(this, IDC_BLINKSPIN, 0x3FFF, 250),
cycleTime(this, IDC_CYCLETIMESPIN, 120, 1),
status(this, IDC_PRIMARYSTATUS),
sortByName(this, IDC_SORTBYNAME),
sortByProto(this, IDC_SORTBYPROTO),
sortByStatus(this, IDC_SORTBYSTATUS),
- chkDisableBlink(this, IDC_DISABLEBLINK),
- chkOfflineBottom(this, IDC_NOOFFLINEMOVE)
+ chkOfflineBottom(this, IDC_MOVE_OFFLINE_BOTTOM)
{
- chkDisableBlink.OnChange = Callback(this, &ClistOptsDlg::onChange_DisableBlink);
chkCycle.OnChange = chkDontCycle.OnChange = chkMulti.OnChange = Callback(this, &ClistOptsDlg::onChange_Tray);
}
@@ -64,9 +61,6 @@ public:
chkMulti.SetState(iTrayIcon == SETTING_TRAYICON_MULTI);
chkDontCycle.SetState(iTrayIcon == SETTING_TRAYICON_SINGLE);
- chkDisableBlink.SetState(g_plugin.getBool("DisableTrayFlash", false));
-
- blink.SetPosition(g_plugin.getWord("IconFlashTime", 550));
cycleTime.SetPosition(g_plugin.getWord("CycleTime", SETTING_CYCLETIME_DEFAULT));
ptrA szPrimaryStatus(g_plugin.getStringA("PrimaryStatus"));
@@ -87,14 +81,12 @@ public:
bool OnApply() override
{
- 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("SortByStatus", g_bSortByStatus = sortByStatus.IsChecked());
+ g_plugin.setByte("SortByProto", g_bSortByProto = sortByProto.IsChecked());
+ g_plugin.setByte("OfflineBottom", g_bOfflineToBottom = chkOfflineBottom.IsChecked());
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.setByte("TrayIcon", (chkDontCycle.IsChecked() ? SETTING_TRAYICON_SINGLE : (chkCycle.IsChecked() ? SETTING_TRAYICON_CYCLE : SETTING_TRAYICON_MULTI)));
g_plugin.setWord("CycleTime", cycleTime.GetPosition());
- g_plugin.setWord("IconFlashTime", blink.GetPosition());
- g_plugin.setByte("DisableTrayFlash", IsDlgButtonChecked(m_hwnd, IDC_DISABLEBLINK));
PROTOACCOUNT *pa = (PROTOACCOUNT *)status.GetCurData();
if (pa == nullptr)
@@ -110,18 +102,10 @@ public:
void onChange_Tray(CCtrlCheck *)
{
- EnableWindow(GetDlgItem(m_hwnd, IDC_PRIMARYSTATUS), chkDontCycle.GetState());
- EnableWindow(GetDlgItem(m_hwnd, IDC_CYCLETIME), chkCycle.GetState());
- EnableWindow(GetDlgItem(m_hwnd, IDC_CYCLETIMESPIN), chkCycle.GetState());
- EnableWindow(GetDlgItem(m_hwnd, IDC_ALWAYSMULTI), chkMulti.GetState());
- }
-
- void onChange_DisableBlink(CCtrlCheck *)
- {
- bool bEnable = !chkDisableBlink.GetState();
- EnableWindow(GetDlgItem(m_hwnd, IDC_BLINKTIME), bEnable);
- EnableWindow(GetDlgItem(m_hwnd, IDC_BLINKSPIN), bEnable);
- EnableWindow(GetDlgItem(m_hwnd, IDC_STMSDELAY), bEnable);
+ EnableWindow(GetDlgItem(m_hwnd, IDC_PRIMARYSTATUS), chkDontCycle.IsChecked());
+ EnableWindow(GetDlgItem(m_hwnd, IDC_CYCLETIME), chkCycle.IsChecked());
+ EnableWindow(GetDlgItem(m_hwnd, IDC_CYCLETIMESPIN), chkCycle.IsChecked());
+ EnableWindow(GetDlgItem(m_hwnd, IDC_ALWAYSMULTI), chkMulti.IsChecked());
}
};
diff --git a/src/core/stdclist/src/contact.cpp b/src/core/stdclist/src/contact.cpp
index c72da2c0fd..daba1cdc61 100644
--- a/src/core/stdclist/src/contact.cpp
+++ b/src/core/stdclist/src/contact.cpp
@@ -24,7 +24,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "stdafx.h"
-bool g_bSortByStatus, g_bSortByProto, g_bNoOfflineBottom;
+bool g_bSortByStatus, g_bSortByProto, g_bOfflineToBottom;
const struct
{
@@ -80,8 +80,8 @@ int CompareContacts(const ClcContact* c1, const ClcContact* c2)
return ordera - orderb;
}
else {
- //one is offline: offline goes below online
- if (!g_bNoOfflineBottom)
+ // one is offline: offline goes below online
+ if (g_bOfflineToBottom)
if ((statusa == ID_STATUS_OFFLINE) != (statusb == ID_STATUS_OFFLINE))
return 2 * (statusa == ID_STATUS_OFFLINE) - 1;
}
diff --git a/src/core/stdclist/src/init.cpp b/src/core/stdclist/src/init.cpp
index 46745f0361..3ca412c5f7 100644
--- a/src/core/stdclist/src/init.cpp
+++ b/src/core/stdclist/src/init.cpp
@@ -107,9 +107,14 @@ static INT_PTR GetStatusMode(WPARAM, LPARAM)
int CMPlugin::Load()
{
+ if (g_plugin.getBool("NoOfflineBottom")) {
+ g_plugin.setByte("OfflineBottom", false);
+ g_plugin.delSetting("NoOfflineBottom");
+ }
+
g_bSortByStatus = g_plugin.getBool("SortByStatus", SETTING_SORTBYSTATUS_DEFAULT);
g_bSortByProto = g_plugin.getBool("SortByProto", SETTING_SORTBYPROTO_DEFAULT);
- g_bNoOfflineBottom = g_plugin.getBool("NoOfflineBottom");
+ g_bOfflineToBottom = g_plugin.getBool("OfflineBottom", true);
Clist_GetInterface();
coreCli = g_clistApi;
diff --git a/src/core/stdclist/src/resource.h b/src/core/stdclist/src/resource.h
index 6f22f577d9..6e4960668e 100644
--- a/src/core/stdclist/src/resource.h
+++ b/src/core/stdclist/src/resource.h
@@ -109,9 +109,6 @@
#define IDC_TOPLINE 1535
#define IDC_HOTKEYURLSTR 1567
#define IDC_BRINGTOFRONT 1579
-#define IDC_BLINKTIME 1607
-#define IDC_BLINKSPIN 1608
-#define IDC_DISABLEBLINK 1609
#define IDC_IDLE 1610
#define IDC_SBPANELBEVEL 1611
#define IDC_DROPSHADOW 1612
@@ -120,9 +117,7 @@
#define IDC_ONDESKTOP 1657
#define IDC_DISABLEDOCKING 1658
#define IDC_WINCOLOUR 1659
-#define IDC_STMSDELAY 1661
-#define IDC_CHECK1 1662
-#define IDC_NOOFFLINEMOVE 1662
+#define IDC_MOVE_OFFLINE_BOTTOM 1662
// Next default values for new objects
//
diff --git a/src/core/stdclist/src/stdafx.h b/src/core/stdclist/src/stdafx.h
index 03c9854f24..d50af5e471 100644
--- a/src/core/stdclist/src/stdafx.h
+++ b/src/core/stdclist/src/stdafx.h
@@ -64,6 +64,6 @@ struct CMPlugin : public PLUGIN<CMPlugin>
// shared vars
extern CLIST_INTERFACE coreCli;
-extern bool g_bSortByStatus, g_bSortByProto, g_bNoOfflineBottom;
+extern bool g_bSortByStatus, g_bSortByProto, g_bOfflineToBottom;
void LoadClcOptions(HWND hwnd, struct ClcData *dat, BOOL bFirst);
diff --git a/src/mir_app/res/resource.rc b/src/mir_app/res/resource.rc
index 099e9a58ed..d1db48df72 100644
--- a/src/mir_app/res/resource.rc
+++ b/src/mir_app/res/resource.rc
@@ -797,12 +797,16 @@ BEGIN
CONTROL "Remove temporary contacts on exit",IDC_REMOVETEMP,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,65,166,10
CONTROL "Enable icon blinking",IDC_ENABLE_ICON_BLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,77,166,10
- CONTROL "Search works as filter",IDC_FILTER_SEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,14,89,166,10
+ CONTROL "Search works as filter",IDC_FILTER_SEARCH,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,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
+ GROUPBOX "Tray",IDC_STATIC,6,135,289,77
+ CONTROL "Enable icon blinking",IDC_ENABLE_TRAY_BLINK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,148,276,10
+ EDITTEXT IDC_BLINKTIME,29,160,35,12,ES_NUMBER
+ CONTROL "",IDC_BLINKSPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS | UDS_HOTTRACK,54,162,11,14
+ LTEXT "ms delay",IDC_STATIC,69,162,113,8
+ CONTROL "Single click interface",IDC_ONECLK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,13,176,276,10
+ CONTROL "Always show status in tooltip",IDC_ALWAYSSTATUS,"Button",BS_AUTOCHECKBOX | BS_TOP | BS_MULTILINE | WS_TABSTOP,13,190,276,11
END
IDD_OPT_CHAT_EVENTS DIALOGEX 0, 0, 306, 201
@@ -981,6 +985,7 @@ BEGIN
LTEXT "(Setting timeout to 0 means default setting and -1 means indefinite time)",IDC_STATIC,33,151,207,17
END
+
/////////////////////////////////////////////////////////////////////////////
//
// DESIGNINFO
@@ -1214,7 +1219,7 @@ BEGIN
IDD_OPT_CLIST, DIALOG
BEGIN
- BOTTOMMARGIN, 165
+ BOTTOMMARGIN, 212
END
IDD_OPT_CHAT_EVENTS, DIALOG
diff --git a/src/mir_app/res/version.rc b/src/mir_app/res/version.rc
index f697a9c6a7..5fd3761a4e 100644
--- a/src/mir_app/res/version.rc
+++ b/src/mir_app/res/version.rc
@@ -6,6 +6,7 @@
#include <winres.h>
#include "../include/m_version.h"
+#include "../src/copyright.h"
#include "../src/resource.h"
/////////////////////////////////////////////////////////////////////////////
diff --git a/src/mir_app/src/clc.h b/src/mir_app/src/clc.h
index 139ccaceee..d57ec3b1ab 100644
--- a/src/mir_app/src/clc.h
+++ b/src/mir_app/src/clc.h
@@ -24,6 +24,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#pragma once
+#define MODULENAME "CList"
+
struct ClcContact : public ClcContactBase
{
};
@@ -95,7 +97,7 @@ int ClcOptInit(WPARAM, LPARAM);
namespace Clist
{
- extern CMOption<bool> RemoveTempContacts, DisableIconBlink;
+ extern CMOption<bool> RemoveTempContacts, EnableIconBlink, EnableTrayFlash;
};
/* clistmenus.c */
diff --git a/src/mir_app/src/clistevents.cpp b/src/mir_app/src/clistevents.cpp
index 66699bbb9f..0533b5b1c7 100644
--- a/src/mir_app/src/clistevents.cpp
+++ b/src/mir_app/src/clistevents.cpp
@@ -49,8 +49,8 @@ static OBJLIST<CListImlIcon> arImlIcons(10, CompareImlIcons);
static UINT_PTR flashTimerId;
static int iconsOn;
-static int disableTrayFlash;
-static int disableIconFlash;
+static bool g_bEnableTrayFlash;
+static bool g_bEnableIconFlash;
static volatile long iEventOrder = 0;
/////////////////////////////////////////////////////////////////////////////////////////
@@ -89,7 +89,7 @@ int fnGetImlIconIndex(HICON hIcon)
static void ShowOneEventInTray(const CListEvent &ev)
{
- TrayIconUpdateWithImageList((iconsOn || disableTrayFlash) ? ev.imlIconIndex : 0, ev.szTooltip.w, GetEventProtocol(ev));
+ TrayIconUpdateWithImageList((iconsOn || !g_bEnableTrayFlash) ? ev.imlIconIndex : 0, ev.szTooltip.w, GetEventProtocol(ev));
}
static void ShowEventsInTray()
@@ -138,7 +138,7 @@ static VOID CALLBACK IconFlashTimer(HWND, UINT, UINT_PTR idEvent, DWORD)
if (g_cliEvents[j].hContact == e.hContact)
break;
if (j >= i)
- Clist_ChangeContactIcon(e.hContact, iconsOn || disableIconFlash ? e.imlIconIndex : 0);
+ Clist_ChangeContactIcon(e.hContact, iconsOn || !g_bEnableTrayFlash ? e.imlIconIndex : 0);
// decrease eflashes in any case - no need to collect all events
if (e.flags & CLEF_ONLYAFEW)
@@ -335,10 +335,10 @@ static int CListEventSettingsChanged(WPARAM hContact, LPARAM lParam)
{
DBCONTACTWRITESETTING *cws = (DBCONTACTWRITESETTING*)lParam;
if (hContact == 0 && cws && cws->szModule && cws->szSetting && strcmp(cws->szModule, "CList") == 0) {
- if (strcmp(cws->szSetting, "DisableTrayFlash") == 0)
- disableTrayFlash = (int)cws->value.bVal;
- else if (strcmp(cws->szSetting, "NoIconBlink") == 0)
- disableIconFlash = (int)cws->value.bVal;
+ if (strcmp(cws->szSetting, "EnableTrayFlash") == 0)
+ g_bEnableTrayFlash = (int)cws->value.bVal;
+ else if (strcmp(cws->szSetting, "EnableIconBlink") == 0)
+ g_bEnableIconFlash = (int)cws->value.bVal;
}
return 0;
}
@@ -349,8 +349,18 @@ int InitCListEvents(void)
{
g_clistApi.events = &g_cliEvents;
- disableTrayFlash = db_get_b(0, "CList", "DisableTrayFlash", 0);
- disableIconFlash = Clist::DisableIconBlink;
+ if (db_get_b(0, MODULENAME, "DisableTrayFlash")) {
+ Clist::EnableTrayFlash = false;
+ db_unset(0, MODULENAME, "DisableTrayFlash");
+ }
+
+ if (db_get_b(0, MODULENAME, "DisableIconBlink")) {
+ Clist::EnableIconBlink = false;
+ db_unset(0, MODULENAME, "DisableIconBlink");
+ }
+
+ g_bEnableTrayFlash = Clist::EnableTrayFlash;
+ g_bEnableIconFlash = Clist::EnableIconBlink;
HookEvent(ME_DB_CONTACT_SETTINGCHANGED, CListEventSettingsChanged);
return 0;
diff --git a/src/mir_app/src/clistopts.cpp b/src/mir_app/src/clistopts.cpp
index ad34053cb2..169ee85b6b 100644
--- a/src/mir_app/src/clistopts.cpp
+++ b/src/mir_app/src/clistopts.cpp
@@ -25,13 +25,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#include "stdafx.h"
#include "clc.h"
-#define MODULENAME "CList"
-
CMOption<bool> Clist::UseGroups(MODULENAME, "UseGroups", true);
CMOption<bool> Clist::HideOffline(MODULENAME, "HideOffline", false);
CMOption<bool> Clist::ConfirmDelete(MODULENAME, "ConfirmDelete", true);
+CMOption<bool> Clist::EnableIconBlink(MODULENAME, "EnableIconBlink", true);
+CMOption<bool> Clist::EnableTrayFlash(MODULENAME, "EnableTrayFlash", true);
CMOption<bool> Clist::HideEmptyGroups(MODULENAME, "HideEmptyGroups", false);
-CMOption<bool> Clist::DisableIconBlink(MODULENAME, "NoIconBlink", false);
CMOption<bool> Clist::RemoveTempContacts(MODULENAME, "RemoveTempContacts", true);
CMOption<bool> Clist::Tray1Click(MODULENAME, "Tray1Click", IsWinVer7Plus());
@@ -61,13 +60,15 @@ static const offlineValues[] =
class ClistCommonOptsDlg : public CDlgBase
{
+ CCtrlSpin blink;
CCtrlCheck chkUseGroups, chkHideOffline, chkConfirmDelete, chkHideEmptyGroups, chkRemoveTempContacts, chkEnableIconBlink, chkFilterSearch;
- CCtrlCheck chkAlwaysStatus, chkOneClick;
+ CCtrlCheck chkAlwaysStatus, chkOneClick, chkEnableTrayBlink;
CCtrlTreeView hideStatuses;
public:
ClistCommonOptsDlg() :
CDlgBase(g_plugin, IDD_OPT_CLIST),
+ blink(this, IDC_BLINKSPIN, 0x3FFF, 250),
hideStatuses(this, IDC_HIDEOFFLINEOPTS),
chkOneClick(this, IDC_ONECLK),
chkUseGroups(this, IDC_USEGROUPS),
@@ -77,8 +78,11 @@ public:
chkConfirmDelete(this, IDC_CONFIRMDELETE),
chkHideEmptyGroups(this, IDC_HIDEEMPTYGROUPS),
chkEnableIconBlink(this, IDC_ENABLE_ICON_BLINK),
+ chkEnableTrayBlink(this, IDC_ENABLE_TRAY_BLINK),
chkRemoveTempContacts(this, IDC_REMOVETEMP)
{
+ chkEnableTrayBlink.OnChange = Callback(this, &ClistCommonOptsDlg::onChange_TrayBlink);
+
CreateLink(chkOneClick, Clist::Tray1Click);
CreateLink(chkUseGroups, Clist::UseGroups);
CreateLink(chkHideOffline, Clist::HideOffline);
@@ -86,16 +90,18 @@ public:
CreateLink(chkAlwaysStatus, Clist::TrayAlwaysStatus);
CreateLink(chkConfirmDelete, Clist::ConfirmDelete);
CreateLink(chkHideEmptyGroups, Clist::HideEmptyGroups);
+ CreateLink(chkEnableIconBlink, Clist::EnableIconBlink);
+ CreateLink(chkEnableTrayBlink, Clist::EnableTrayFlash);
CreateLink(chkRemoveTempContacts, Clist::RemoveTempContacts);
}
bool OnInitDialog() override
{
+ blink.SetPosition(db_get_w(0, MODULENAME, "IconFlashTime", 550));
+
SetWindowLongPtr(hideStatuses.GetHwnd(), GWL_STYLE,
GetWindowLongPtr(hideStatuses.GetHwnd(), GWL_STYLE) | TVS_NOHSCROLL | TVS_CHECKBOXES);
- chkEnableIconBlink.SetState(!Clist::DisableIconBlink);
-
int style = Clist::OfflineModes;
TVINSERTSTRUCT tvis;
@@ -114,6 +120,8 @@ public:
bool OnApply() override
{
+ db_set_w(0, MODULENAME, "IconFlashTime", blink.GetPosition());
+
uint32_t flags = 0;
TVITEMEX tvi;
@@ -127,13 +135,18 @@ public:
}
Clist::OfflineModes = flags;
- Clist::DisableIconBlink = !chkEnableIconBlink.IsChecked();
-
Clist_ClcOptionsChanged();
Clist_LoadContactTree();
Clist_InitAutoRebuild(g_clistApi.hwndContactTree);
return true;
}
+
+ void onChange_TrayBlink(CCtrlCheck*)
+ {
+ bool bEnabled = chkEnableTrayBlink.IsChecked();
+ EnableWindow(GetDlgItem(m_hwnd, IDC_BLINKTIME), bEnabled);
+ EnableWindow(GetDlgItem(m_hwnd, IDC_BLINKSPIN), bEnabled);
+ }
};
int ClcOptInit(WPARAM wParam, LPARAM)
diff --git a/src/mir_app/src/clisttray.cpp b/src/mir_app/src/clisttray.cpp
index 213b3cdc89..9d4137748b 100644
--- a/src/mir_app/src/clisttray.cpp
+++ b/src/mir_app/src/clisttray.cpp
@@ -232,11 +232,11 @@ int fnTrayIconInit(HWND hwnd)
if (netProtoCount) {
g_clistApi.trayIcon = (trayIconInfo_t*)mir_calloc(sizeof(trayIconInfo_t) * g_arAccounts.getCount());
- int trayIconSetting = db_get_b(0, "CList", "TrayIcon", SETTING_TRAYICON_DEFAULT);
+ int trayIconSetting = db_get_b(0, MODULENAME, "TrayIcon", SETTING_TRAYICON_DEFAULT);
if (trayIconSetting == SETTING_TRAYICON_SINGLE) {
DBVARIANT dbv = { DBVT_DELETED };
char *szProto;
- if (!db_get_s(0, "CList", "PrimaryStatus", &dbv) && (averageMode < 0 || db_get_b(0, "CList", "AlwaysPrimary", 0)))
+ if (!db_get_s(0, MODULENAME, "PrimaryStatus", &dbv) && (averageMode < 0 || db_get_b(0, MODULENAME, "AlwaysPrimary", 0)))
szProto = dbv.pszVal;
else
szProto = nullptr;
@@ -244,7 +244,7 @@ int fnTrayIconInit(HWND hwnd)
Clist_TrayIconAdd(hwnd, nullptr, szProto, szProto ? Proto_GetStatus(szProto) : CallService(MS_CLIST_GETSTATUSMODE, 0, 0));
db_free(&dbv);
}
- else if (trayIconSetting == SETTING_TRAYICON_MULTI && (averageMode < 0 || db_get_b(0, "CList", "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))) {
+ else if (trayIconSetting == SETTING_TRAYICON_MULTI && (averageMode < 0 || db_get_b(0, MODULENAME, "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))) {
g_clistApi.trayIconCount = netProtoCount;
for (int i = 0; i < g_arAccounts.getCount(); i++) {
int j = Clist_GetAccountIndex(i);
@@ -365,9 +365,9 @@ int TrayIconUpdate(HICON hNewIcon, const wchar_t *szNewTip, const char *szPrefer
SetTaskBarIcon(nullptr, nullptr);
g_clistApi.trayIcon[i].isBase = isBase;
- if (db_get_b(0, "CList", "TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_MULTI) {
- uint32_t time1 = db_get_w(0, "CList", "CycleTime", SETTING_CYCLETIME_DEFAULT) * 200;
- uint32_t time2 = db_get_w(0, "CList", "IconFlashTime", 550) + 1000;
+ if (db_get_b(0, MODULENAME, "TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_MULTI) {
+ uint32_t time1 = db_get_w(0, MODULENAME, "CycleTime", SETTING_CYCLETIME_DEFAULT) * 200;
+ uint32_t time2 = db_get_w(0, MODULENAME, "IconFlashTime", 550) + 1000;
uint32_t time = max(max(uint32_t(2000), time1), time2);
if (RefreshTimerId)
KillTimer(nullptr, RefreshTimerId);
@@ -405,8 +405,8 @@ MIR_APP_DLL(int) Clist_TrayIconSetBaseInfo(HICON hIcon, const char *szPreferredP
}
if ((Clist_GetProtocolVisibility(szPreferredProto)) &&
(Proto_GetAverageStatus(nullptr) == -1) &&
- (db_get_b(0, "CList", "TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_MULTI) &&
- !(db_get_b(0, "CList", "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT)))
+ (db_get_b(0, MODULENAME, "TrayIcon", SETTING_TRAYICON_DEFAULT) == SETTING_TRAYICON_MULTI) &&
+ !(db_get_b(0, MODULENAME, "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT)))
goto LBL_Error;
}
@@ -454,7 +454,7 @@ static VOID CALLBACK TrayCycleTimerProc(HWND, UINT, UINT_PTR, DWORD)
MIR_APP_DLL(void) Clist_TraySetTimer()
{
- CycleTimerId = SetTimer(nullptr, CycleTimerId, db_get_w(0, "CList", "CycleTime", SETTING_CYCLETIME_DEFAULT) * 1000, TrayCycleTimerProc);
+ CycleTimerId = SetTimer(nullptr, CycleTimerId, db_get_w(0, MODULENAME, "CycleTime", SETTING_CYCLETIME_DEFAULT) * 1000, TrayCycleTimerProc);
}
/////////////////////////////////////////////////////////////////////////////////////////
@@ -488,13 +488,13 @@ int fnTrayCalcChanged(const char *szChangedProto, int averageMode, int netProtoC
if (netProtoCount == 0)
return Clist_TrayIconSetBaseInfo(ImageList_GetIcon(hCListImages, g_clistApi.pfnIconFromStatusMode(nullptr, averageMode, 0), ILD_NORMAL), nullptr);
- int trayIconSetting = db_get_b(0, "CList", "TrayIcon", SETTING_TRAYICON_DEFAULT);
+ int trayIconSetting = db_get_b(0, MODULENAME, "TrayIcon", SETTING_TRAYICON_DEFAULT);
if (averageMode > 0) {
if (trayIconSetting != SETTING_TRAYICON_MULTI)
return Clist_TrayIconSetBaseInfo(g_clistApi.pfnGetIconFromStatusMode(0, nullptr, averageMode), nullptr);
- if (db_get_b(0, "CList", "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))
+ if (db_get_b(0, MODULENAME, "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))
return Clist_TrayIconSetBaseInfo(g_clistApi.pfnGetIconFromStatusMode(0, szChangedProto, Proto_GetStatus(szChangedProto)), (char*)szChangedProto);
if (g_clistApi.trayIcon == nullptr || g_clistApi.trayIcon[0].szProto == nullptr)
@@ -512,7 +512,7 @@ int fnTrayCalcChanged(const char *szChangedProto, int averageMode, int netProtoC
case SETTING_TRAYICON_MULTI:
if (!g_clistApi.trayIcon)
Clist_TrayIconRemove(nullptr, nullptr);
- else if ((g_clistApi.trayIconCount > 1 || netProtoCount == 1) || db_get_b(0, "CList", "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))
+ else if ((g_clistApi.trayIconCount > 1 || netProtoCount == 1) || db_get_b(0, MODULENAME, "AlwaysMulti", SETTING_ALWAYSMULTI_DEFAULT))
return Clist_TrayIconSetBaseInfo(g_clistApi.pfnGetIconFromStatusMode(0, szChangedProto, Proto_GetStatus(szChangedProto)), (char*)szChangedProto);
else {
Clist_TrayIconDestroy(g_clistApi.hwndContactList);
@@ -521,7 +521,7 @@ int fnTrayCalcChanged(const char *szChangedProto, int averageMode, int netProtoC
break;
case SETTING_TRAYICON_SINGLE:
- ptrA szProto(db_get_sa(0, "CList", "PrimaryStatus"));
+ ptrA szProto(db_get_sa(0, MODULENAME, "PrimaryStatus"));
return Clist_TrayIconSetBaseInfo(g_clistApi.pfnGetIconFromStatusMode(0, szProto, szProto ? Proto_GetStatus(szProto) : CallService(MS_CLIST_GETSTATUSMODE, 0, 0)), szProto);
}
}
@@ -582,10 +582,10 @@ int fnTrayIconPauseAutoHide(WPARAM, LPARAM)
initcheck 0;
mir_cslock lck(trayLockCS);
- if (db_get_b(0, "CList", "AutoHide", SETTING_AUTOHIDE_DEFAULT)) {
+ if (db_get_b(0, MODULENAME, "AutoHide", SETTING_AUTOHIDE_DEFAULT)) {
if (GetActiveWindow() != g_clistApi.hwndContactList) {
KillTimer(nullptr, autoHideTimerId);
- autoHideTimerId = SetTimer(nullptr, 0, 1000 * db_get_w(0, "CList", "HideTime", SETTING_HIDETIME_DEFAULT), TrayIconAutoHideTimer);
+ autoHideTimerId = SetTimer(nullptr, 0, 1000 * db_get_w(0, MODULENAME, "HideTime", SETTING_HIDETIME_DEFAULT), TrayIconAutoHideTimer);
}
}
return 0;
@@ -656,9 +656,9 @@ INT_PTR fnTrayIconProcessMessage(WPARAM wParam, LPARAM lParam)
break;
case WM_ACTIVATE:
- if (db_get_b(0, "CList", "AutoHide", SETTING_AUTOHIDE_DEFAULT)) {
+ if (db_get_b(0, MODULENAME, "AutoHide", SETTING_AUTOHIDE_DEFAULT)) {
if (LOWORD(msg->wParam) == WA_INACTIVE)
- autoHideTimerId = SetTimer(nullptr, 0, 1000 * db_get_w(0, "CList", "HideTime", SETTING_HIDETIME_DEFAULT), TrayIconAutoHideTimer);
+ autoHideTimerId = SetTimer(nullptr, 0, 1000 * db_get_w(0, MODULENAME, "HideTime", SETTING_HIDETIME_DEFAULT), TrayIconAutoHideTimer);
else
KillTimer(nullptr, autoHideTimerId);
}
diff --git a/src/mir_app/src/copyright.h b/src/mir_app/src/copyright.h
new file mode 100644
index 0000000000..29b0f97206
--- /dev/null
+++ b/src/mir_app/src/copyright.h
@@ -0,0 +1,2 @@
+
+#define LEGAL_COPYRIGHT "Copyright © 2000-11 Miranda IM, 2012-22 Miranda NG team. This software is released under the terms of the GNU General Public License.\0"
diff --git a/src/mir_app/src/resource.h b/src/mir_app/src/resource.h
index f181ae7729..b6005fac19 100644
--- a/src/mir_app/src/resource.h
+++ b/src/mir_app/src/resource.h
@@ -1,6 +1,6 @@
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
-// Used by w:\miranda-ng\src\mir_app\res\resource.rc
+// Used by W:\miranda-ng\src\mir_app\res\resource.rc
//
#define IDC_AUTHICON 1
#define IDC_NOTOALL 3
@@ -322,6 +322,9 @@
#define IDC_SELECTCRYPT_COMBO 1110
#define IDC_CRYPTOPROVIDER_DESCR 1111
#define IDC_NUMBER 1113
+#define IDC_BLINKTIME 1114
+#define IDC_BLINKSPIN 1115
+#define IDC_ENABLE_TRAY_BLINK 1116
#define IDC_FINDWHAT 1131
#define IDC_FIND 1132
#define IDC_FILE 1133
@@ -698,8 +701,6 @@
#define IDI_POPUP 40088
#define IDI_NOPOPUP 40089
-#define LEGAL_COPYRIGHT "Copyright © 2000-11 Miranda IM, 2012-22 Miranda NG team. This software is released under the terms of the GNU General Public License.\0"
-
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
diff --git a/src/mir_app/src/stdafx.h b/src/mir_app/src/stdafx.h
index 9e8bb456c8..e40748c95a 100644
--- a/src/mir_app/src/stdafx.h
+++ b/src/mir_app/src/stdafx.h
@@ -104,6 +104,7 @@ typedef struct SslHandle *HSSL;
typedef struct GlobalLogSettingsBase GlobalLogSettings;
#include <m_chat_int.h>
+#include "copyright.h"
#include "resource.h"
struct CMPlugin : public PLUGIN<CMPlugin>