From 34d9db73c26ad24b1f8bf1e5a1949c407c9639ca Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sat, 17 Dec 2016 19:59:32 +0300 Subject: - tabSRMM to share the kernel window list for chats & group chats; - button creation nuances moved to the core --- src/mir_app/src/srmm_toolbar.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/mir_app/src/srmm_toolbar.cpp b/src/mir_app/src/srmm_toolbar.cpp index 88f79dc544..aeff306fdf 100644 --- a/src/mir_app/src/srmm_toolbar.cpp +++ b/src/mir_app/src/srmm_toolbar.cpp @@ -327,7 +327,7 @@ MIR_APP_DLL(void) Srmm_CreateToolbarIcons(HWND hwndDlg, int flags) HWND hwndButton = GetDlgItem(hwndDlg, cbd->m_dwButtonCID); if ((flags & BBBF_ISIMBUTTON) && cbd->m_bIMButton || (flags & BBBF_ISCHATBUTTON) && cbd->m_bChatButton) { if (hwndButton == NULL) { - hwndButton = CreateWindowEx(0, L"MButtonClass", L"", WS_CHILD | WS_VISIBLE | WS_TABSTOP, 0, 0, cbd->m_iButtonWidth, 22, hwndDlg, (HMENU)cbd->m_dwButtonCID, hInstance, NULL); + hwndButton = CreateWindowEx(0, L"MButtonClass", L"", WS_CHILD | WS_VISIBLE | WS_TABSTOP, 0, 0, cbd->m_iButtonWidth, DPISCALEX_S(22), hwndDlg, (HMENU)cbd->m_dwButtonCID, hInstance, NULL); if (hwndButton == NULL) // smth went wrong continue; } @@ -338,6 +338,16 @@ MIR_APP_DLL(void) Srmm_CreateToolbarIcons(HWND hwndDlg, int flags) SendMessage(hwndButton, BUTTONADDTOOLTIP, LPARAM(cbd->m_pwszTooltip), BATF_UNICODE); if (cbd->m_hIcon) SendMessage(hwndButton, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(cbd->m_hIcon)); + + if (cbd->m_dwArrowCID) + SendMessage(hwndButton, BUTTONSETARROW, cbd->m_dwArrowCID, 0); + if (cbd->m_bPushButton) + SendMessage(hwndButton, BUTTONSETASPUSHBTN, TRUE, 0); + + if (cbd->m_bDisabled) + EnableWindow(hwndButton, FALSE); + if (cbd->m_bHidden) + ShowWindow(hwndButton, SW_HIDE); } else if (hwndButton) DestroyWindow(hwndButton); -- cgit v1.2.3 From fe1d2e6fd5d77885e3efe0339e03b2fec7002b0b Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 18 Dec 2016 13:30:36 +0300 Subject: fix for strange post-effects of dnd in CCtrlTreeView --- src/mir_app/src/srmm_toolbar.cpp | 4 ++-- src/mir_core/src/ui_utils.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/mir_app/src/srmm_toolbar.cpp b/src/mir_app/src/srmm_toolbar.cpp index aeff306fdf..9fcdfaecfc 100644 --- a/src/mir_app/src/srmm_toolbar.cpp +++ b/src/mir_app/src/srmm_toolbar.cpp @@ -579,7 +579,7 @@ public: m_toolBar.SetFlags(MTREE_DND); // enable drag-n-drop m_toolBar.OnSelChanged = Callback(this, &CSrmmToolbarOptions::OnTreeSelChanged); m_toolBar.OnSelChanging = Callback(this, &CSrmmToolbarOptions::OnTreeSelChanging); - m_toolBar.OnChange = Callback(this, &CSrmmToolbarOptions::OnTreeChanged); + m_toolBar.OnItemChanged = Callback(this, &CSrmmToolbarOptions::OnTreeItemChanged); m_btnReset.OnClick = Callback(this, &CSrmmToolbarOptions::btnResetClicked); m_btnSeparator.OnClick = Callback(this, &CSrmmToolbarOptions::btnSeparatorClicked); @@ -734,7 +734,7 @@ public: m_btnHidden.Enable(); m_btnHidden.SetState(cbd->m_bCanBeHidden); } - void OnTreeChanged(void*) + void OnTreeItemChanged(void*) { int iNewState = !m_toolBar.GetCheckState(m_toolBar.GetSelection()); m_btnIM.Enable(iNewState); diff --git a/src/mir_core/src/ui_utils.cpp b/src/mir_core/src/ui_utils.cpp index 1ca3ee069a..1e4cec81b9 100644 --- a/src/mir_core/src/ui_utils.cpp +++ b/src/mir_core/src/ui_utils.cpp @@ -1754,7 +1754,7 @@ BOOL CCtrlTreeView::OnNotify(int, NMHDR *pnmh) if (evt.nmtvkey->wVKey == VK_SPACE) { if (m_bCheckBox) InvertCheck(GetSelection()); - OnChange(this); + OnItemChanged(&evt); NotifyChange(); } @@ -1773,7 +1773,7 @@ BOOL CCtrlTreeView::OnNotify(int, NMHDR *pnmh) InvertCheck(hti.hItem); else SelectItem(hti.hItem); - OnChange(this); + OnItemChanged(&evt); NotifyChange(); } } -- cgit v1.2.3