summaryrefslogtreecommitdiff
path: root/src/core/stdmsg
diff options
context:
space:
mode:
authorGeorge Hazan <ghazan@miranda.im>2021-01-24 18:07:04 +0300
committerGeorge Hazan <ghazan@miranda.im>2021-01-24 18:07:04 +0300
commitd32ceca89165c3f537c5b32c38c153d26cd4aed7 (patch)
tree03d9f9f5517e0bb059fbf13b1a5411c6ec56a369 /src/core/stdmsg
parentd87f80faa7cb073ee7f19176192cb1465c488ed8 (diff)
more effective way to use OnChange callbacks automatically
Diffstat (limited to 'src/core/stdmsg')
-rw-r--r--src/core/stdmsg/res/resource.rc4
-rw-r--r--src/core/stdmsg/src/msgoptions.cpp18
2 files changed, 18 insertions, 4 deletions
diff --git a/src/core/stdmsg/res/resource.rc b/src/core/stdmsg/res/resource.rc
index 97a45e8480..d7cc7e427b 100644
--- a/src/core/stdmsg/res/resource.rc
+++ b/src/core/stdmsg/res/resource.rc
@@ -43,8 +43,8 @@ BEGIN
CONTROL "Use the contact's status icon as the window icon",IDC_STATUSWIN,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,75,290,10
CONTROL "Save the window size and location individually for each contact",IDC_SAVEPERCONTACT,
- "Button",BS_AUTORADIOBUTTON | WS_TABSTOP,8,88,289,10
- CONTROL "Cascade new windows",IDC_CASCADE,"Button",BS_AUTORADIOBUTTON | WS_TABSTOP,8,100,289,10
+ "Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,88,289,10
+ CONTROL "Cascade new windows",IDC_CASCADE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,100,289,10
CONTROL "Support Ctrl+Up/Down in message area to show previously sent messages",IDC_CTRLSUPPORT,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,8,112,289,10
CONTROL "Delete temporary contacts when closing message window",IDC_DELTEMP,
diff --git a/src/core/stdmsg/src/msgoptions.cpp b/src/core/stdmsg/src/msgoptions.cpp
index d5d27dea9d..49aeb6873b 100644
--- a/src/core/stdmsg/src/msgoptions.cpp
+++ b/src/core/stdmsg/src/msgoptions.cpp
@@ -211,8 +211,10 @@ public:
tree.SetFlags(MTREE_CHECKBOX);
chkAvatar.OnChange = Callback(this, &COptionMainDlg::onChange_Avatar);
+ chkAutoMin.OnChange = Callback(this, &COptionMainDlg::onChange_AutoMin);
chkAutoClose.OnChange = Callback(this, &COptionMainDlg::onChange_AutoClose);
chkLimitAvatar.OnChange = Callback(this, &COptionMainDlg::onChange_LimitAvatar);
+ chkSavePerContact.OnChange = Callback(this, &COptionMainDlg::onChange_SavePerContact);
CreateLink(edtNFlash, g_dat.nFlashMax);
CreateLink(edtAvatarH, g_dat.iAvatarHeight);
@@ -261,9 +263,21 @@ public:
return true;
}
- void onChange_AutoClose(CCtrlCheck *pCheck)
+ void onChange_AutoMin(CCtrlCheck*)
{
- chkCtrlSupport.Enable(!pCheck->GetState());
+ chkAutoClose.SetState(false);
+ chkCtrlSupport.Enable(!chkAutoClose.GetState());
+ }
+
+ void onChange_AutoClose(CCtrlCheck*)
+ {
+ chkAutoMin.SetState(false);
+ chkCtrlSupport.Enable(!chkAutoClose.GetState());
+ }
+
+ void onChange_SavePerContact(CCtrlCheck*)
+ {
+ chkCascade.Enable(!chkSavePerContact.GetState());
}
void onChange_Avatar(CCtrlCheck*)