diff options
author | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2016-12-19 06:05:54 +0300 |
---|---|---|
committer | Gluzskiy Alexandr <sss@sss.chaoslab.ru> | 2016-12-19 06:05:54 +0300 |
commit | 63f6579e56af870fa9ad7289a1a71cd5a27f5d76 (patch) | |
tree | 0483281e31286d4894c744c97f060cb5b35ed481 | |
parent | 758762fbc91f2002a9e41957ca34a5d772d575f4 (diff) | |
parent | 8b3c1e649624c2f270ade8d6f0fafd8b9cf3e493 (diff) |
Merge branch 'master' of github.com:miranda-ng/miranda-ng
-rw-r--r-- | include/m_gui.h | 1 | ||||
-rw-r--r-- | plugins/TabSRMM/src/TSButton.cpp | 17 | ||||
-rw-r--r-- | plugins/TabSRMM/src/buttonsbar.cpp | 63 | ||||
-rw-r--r-- | plugins/TabSRMM/src/mim.cpp | 10 | ||||
-rw-r--r-- | plugins/TabSRMM/src/mim.h | 2 | ||||
-rw-r--r-- | plugins/TabSRMM/src/msgs.cpp | 2 | ||||
-rw-r--r-- | protocols/FacebookRM/src/entities.h | 12 | ||||
-rw-r--r-- | protocols/Steam/src/steam_contacts.cpp | 6 | ||||
-rw-r--r-- | src/mir_app/src/srmm_toolbar.cpp | 16 | ||||
-rw-r--r-- | src/mir_core/src/ui_utils.cpp | 4 |
10 files changed, 57 insertions, 76 deletions
diff --git a/include/m_gui.h b/include/m_gui.h index f38764d05c..b9f0fdc84e 100644 --- a/include/m_gui.h +++ b/include/m_gui.h @@ -1154,6 +1154,7 @@ public: CCallback<TEventInfo> OnEndLabelEdit;
CCallback<TEventInfo> OnGetDispInfo;
CCallback<TEventInfo> OnGetInfoTip;
+ CCallback<TEventInfo> OnItemChanged;
CCallback<TEventInfo> OnItemExpanded;
CCallback<TEventInfo> OnItemExpanding;
CCallback<TEventInfo> OnKeyDown;
diff --git a/plugins/TabSRMM/src/TSButton.cpp b/plugins/TabSRMM/src/TSButton.cpp index 443039eba6..75d2897bfb 100644 --- a/plugins/TabSRMM/src/TSButton.cpp +++ b/plugins/TabSRMM/src/TSButton.cpp @@ -181,13 +181,12 @@ static void PaintWorker(TSButtonCtrl *ctl, HDC hdcPaint) }
else {
if (ctl->pContainer && CSkin::m_skinEnabled) {
- CSkinItem *item, *realItem = 0;
+ CSkinItem *item;
if (ctl->bTitleButton)
item = &SkinItems[ctl->stateId == PBS_NORMAL ? ID_EXTBKTITLEBUTTON : (ctl->stateId == PBS_HOT ? ID_EXTBKTITLEBUTTONMOUSEOVER : ID_EXTBKTITLEBUTTONPRESSED)];
- else {
+ else
item = &SkinItems[(ctl->stateId == PBS_NORMAL || ctl->stateId == PBS_DISABLED) ? ID_EXTBKBUTTONSNPRESSED : (ctl->stateId == PBS_HOT ? ID_EXTBKBUTTONSMOUSEOVER : ID_EXTBKBUTTONSPRESSED)];
- realItem = item;
- }
+
CSkin::SkinDrawBG(ctl->hwnd, ctl->pContainer->hwnd, ctl->pContainer, &rcClient, hdcMem);
if (!item->IGNORED) {
RECT rc1 = rcClient;
@@ -211,7 +210,7 @@ static void PaintWorker(TSButtonCtrl *ctl, HDC hdcPaint) else {
CSkin::m_switchBarItem->setAlphaFormat(AC_SRC_ALPHA, state == PBS_NORMAL ? 140 : 240);
if (state == PBS_PRESSED) {
- RECT rc = rcClient;
+ RECT rc = rcClient;
InflateRect(&rc, -1, -1);
HBRUSH bBack = CreateSolidBrush(PluginConfig.m_tbBackgroundLow ? PluginConfig.m_tbBackgroundLow : GetSysColor(COLOR_3DDKSHADOW));
FillRect(hdcMem, &rc, bBack);
@@ -229,9 +228,7 @@ static void PaintWorker(TSButtonCtrl *ctl, HDC hdcPaint) }
}
- /*
- * render content
- */
+ // render content
if (ctl->arrow) {
rcContent.top += 2;
rcContent.bottom -= 2;
@@ -442,7 +439,7 @@ static LRESULT CALLBACK TSButtonWndProc(HWND hwndDlg, UINT msg, WPARAM wParam, L bct->stateId = PBS_PRESSED;
else if (LOWORD(lParam) > rc.right - 12) {
if (GetDlgCtrlID(hwndDlg) == IDOK || bct->stateId != PBS_DISABLED) {
- WORD w = (WORD)((INT_PTR)bct->arrow & 0x0000ffff);
+ WORD w = LOWORD((INT_PTR)bct->arrow);
SendMessage(GetParent(hwndDlg), WM_COMMAND, MAKELONG(w, BN_CLICKED), (LPARAM)hwndDlg);
}
}
@@ -481,8 +478,8 @@ static LRESULT CALLBACK TSButtonWndProc(HWND hwndDlg, UINT msg, WPARAM wParam, L case WM_TIMER: // use a timer to check if they have did a mouseout
if (wParam == BUTTON_POLLID) {
RECT rc;
- POINT pt;
GetWindowRect(hwndDlg, &rc);
+ POINT pt;
GetCursorPos(&pt);
if (!PtInRect(&rc, pt)) { // mouse must be gone, trigger mouse leave
PostMessage(hwndDlg, WM_MOUSELEAVE, 0, 0L);
diff --git a/plugins/TabSRMM/src/buttonsbar.cpp b/plugins/TabSRMM/src/buttonsbar.cpp index 01a51ced63..1f3e24fde9 100644 --- a/plugins/TabSRMM/src/buttonsbar.cpp +++ b/plugins/TabSRMM/src/buttonsbar.cpp @@ -91,7 +91,7 @@ static int CB_InitDefaultButtons(WPARAM, LPARAM) bbd.bbbFlags = BBBF_ISCHATBUTTON | BBBF_ISDUMMYBUTTON; bbd.dwButtonID = 1; bbd.pszModuleName = "tb_splitter"; - bbd.dwDefPos = 31; + bbd.dwDefPos = 35; bbd.hIcon = 0; bbd.pwszTooltip = 0; Srmm_AddButton(&bbd); @@ -157,57 +157,34 @@ void BB_InitDlgButtons(TWindowData *dat) RECT rect; GetClientRect(hdlg, &rect); - int splitterY = ptSplitter.y - DPISCALEY_S(1); dat->bbLSideWidth = dat->bbRSideWidth = 0; + Srmm_CreateToolbarIcons(hdlg, (dat->bType == SESSIONTYPE_IM) ? BBBF_ISIMBUTTON : BBBF_ISCHATBUTTON); + CustomButtonData *cbd; for (int i = 0; cbd = Srmm_GetNthButton(i); i++) { HWND hwndBtn = GetDlgItem(hdlg, cbd->m_dwButtonCID); - if (((dat->bType == SESSIONTYPE_IM && cbd->m_bIMButton) || (dat->bType == SESSIONTYPE_CHAT && cbd->m_bChatButton))) { - if (!cbd->m_bHidden) { - if (cbd->m_bRSided) - dat->bbRSideWidth += cbd->m_iButtonWidth + gap; - else - dat->bbLSideWidth += cbd->m_iButtonWidth + gap; - } - if (!cbd->m_bHidden && !cbd->m_bCanBeHidden) - dat->iButtonBarReallyNeeds += cbd->m_iButtonWidth + gap; + if (hwndBtn == NULL) + continue; - if (cbd->m_bSeparator) - continue; + if (!cbd->m_bHidden) { + if (cbd->m_bRSided) + dat->bbRSideWidth += cbd->m_iButtonWidth + gap; + else + dat->bbLSideWidth += cbd->m_iButtonWidth + gap; + } + if (!cbd->m_bHidden && !cbd->m_bCanBeHidden) + dat->iButtonBarReallyNeeds += cbd->m_iButtonWidth + gap; - if (hwndBtn == NULL) { - int x = cbd->m_bRSided ? rect.right - dat->bbRSideWidth + gap : 2 + dat->bbLSideWidth; - hwndBtn = CreateWindowEx(0, L"MButtonClass", L"", WS_CHILD | WS_VISIBLE | WS_TABSTOP, x, splitterY, cbd->m_iButtonWidth, DPISCALEY_S(22), hdlg, (HMENU)cbd->m_dwButtonCID, g_hInst, NULL); - if (hwndBtn == NULL) - continue; - CustomizeButton(hwndBtn); - } + if (cbd->m_bSeparator) + continue; - SendMessage(hwndBtn, BUTTONSETASFLATBTN, TRUE, 0); - SendMessage(hwndBtn, BUTTONSETASTHEMEDBTN, CSkin::IsThemed(), 0); - if (cbd->m_hIcon) - SendMessage(hwndBtn, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(cbd->m_hIcon)); - if (cbd->m_pwszText) - SetWindowTextW(hwndBtn, cbd->m_pwszText); - if (cbd->m_pwszTooltip) - SendMessage(hwndBtn, BUTTONADDTOOLTIP, (WPARAM)TranslateW(cbd->m_pwszTooltip), BATF_UNICODE); - SendMessage(hwndBtn, BUTTONSETCONTAINER, (LPARAM)dat->pContainer, 0); - SendMessage(hwndBtn, BUTTONSETASTOOLBARBUTTON, TRUE, 0); - - if (cbd->m_dwArrowCID) - SendMessage(hwndBtn, BUTTONSETARROW, cbd->m_dwArrowCID, 0); - if (cbd->m_bPushButton) - SendMessage(hwndBtn, BUTTONSETASPUSHBTN, TRUE, 0); - - if (cbd->m_bDisabled) - EnableWindow(hwndBtn, 0); - if (cbd->m_bHidden) - ShowWindow(hwndBtn, SW_HIDE); - } - else if (hwndBtn) - DestroyWindow(hwndBtn); + CustomizeButton(hwndBtn); + + SendMessage(hwndBtn, BUTTONSETASTHEMEDBTN, CSkin::IsThemed(), 0); + SendMessage(hwndBtn, BUTTONSETCONTAINER, (LPARAM)dat->pContainer, 0); + SendMessage(hwndBtn, BUTTONSETASTOOLBARBUTTON, TRUE, 0); } } diff --git a/plugins/TabSRMM/src/mim.cpp b/plugins/TabSRMM/src/mim.cpp index b222fdc845..9fbb141250 100644 --- a/plugins/TabSRMM/src/mim.cpp +++ b/plugins/TabSRMM/src/mim.cpp @@ -56,27 +56,27 @@ bool CMimAPI::m_haveBufferedPaint = false; void CMimAPI::BroadcastMessage(UINT msg, WPARAM wParam, LPARAM lParam) { - WindowList_Broadcast(m_hMessageWindowList, msg, wParam, lParam); + WindowList_Broadcast(pci->hWindowList, msg, wParam, lParam); } void CMimAPI::BroadcastMessageAsync(UINT msg, WPARAM wParam, LPARAM lParam) { - WindowList_BroadcastAsync(m_hMessageWindowList, msg, wParam, lParam); + WindowList_BroadcastAsync(pci->hWindowList, msg, wParam, lParam); } HWND CMimAPI::FindWindow(MCONTACT h) const { - return WindowList_Find(m_hMessageWindowList, h); + return WindowList_Find(pci->hWindowList, h); } INT_PTR CMimAPI::AddWindow(HWND hWnd, MCONTACT h) { - return WindowList_Add(m_hMessageWindowList, hWnd, h); + return WindowList_Add(pci->hWindowList, hWnd, h); } INT_PTR CMimAPI::RemoveWindow(HWND hWnd) { - return WindowList_Remove(m_hMessageWindowList, hWnd); + return WindowList_Remove(pci->hWindowList, hWnd); } ///////////////////////////////////////////////////////////////////////////////////////// diff --git a/plugins/TabSRMM/src/mim.h b/plugins/TabSRMM/src/mim.h index 8322326611..7c648e48d7 100644 --- a/plugins/TabSRMM/src/mim.h +++ b/plugins/TabSRMM/src/mim.h @@ -193,8 +193,6 @@ public: static int MessageEventAdded(WPARAM wParam, LPARAM lParam);
public:
- MWindowList m_hMessageWindowList;
-
// various function pointers
static PDTTE m_pfnDrawThemeTextEx;
static DEFICA m_pfnDwmExtendFrameIntoClientArea;
diff --git a/plugins/TabSRMM/src/msgs.cpp b/plugins/TabSRMM/src/msgs.cpp index fb07d79f7d..a4127e960a 100644 --- a/plugins/TabSRMM/src/msgs.cpp +++ b/plugins/TabSRMM/src/msgs.cpp @@ -366,7 +366,6 @@ static INT_PTR TypingMessageCommand(WPARAM, LPARAM lParam) int SplitmsgShutdown(void)
{
- WindowList_Destroy(M.m_hMessageWindowList);
WindowList_Destroy(PluginConfig.hUserPrefsWindowList);
DestroyCursor(PluginConfig.hCurSplitNS);
@@ -982,7 +981,6 @@ int LoadSendRecvMessageModule(void) Win7Taskbar->updateMetrics();
memset(&nen_options, 0, sizeof(nen_options));
- M.m_hMessageWindowList = WindowList_Create();
PluginConfig.hUserPrefsWindowList = WindowList_Create();
sendQueue = new SendQueue;
Skin = new CSkin;
diff --git a/protocols/FacebookRM/src/entities.h b/protocols/FacebookRM/src/entities.h index 5274d9d2b2..0026606ca6 100644 --- a/protocols/FacebookRM/src/entities.h +++ b/protocols/FacebookRM/src/entities.h @@ -149,17 +149,17 @@ struct facebook_notification void setIcon(const std::string &iconUrl) { - if (iconUrl == "https://www.facebook.com/rsrc.php/v2/yj/r/6WffvhOaXGY.png") + if (iconUrl == "https://www.facebook.com/rsrc.php/v3/yj/r/6WffvhOaXGY.png") icon = "like"; - else if (iconUrl == "https://www.facebook.com/rsrc.php/v2/y1/r/RvGKklgAefT.png") + else if (iconUrl == "https://www.facebook.com/rsrc.php/v3/y1/r/RvGKklgAefT.png") icon = "love"; - else if (iconUrl == "https://www.facebook.com/rsrc.php/v2/yV/r/McJA2ZjdJmf.png") + else if (iconUrl == "https://www.facebook.com/rsrc.php/v3/yV/r/McJA2ZjdJmf.png") icon = "haha"; - else if (iconUrl == "https://www.facebook.com/rsrc.php/v2/yL/r/IfsimazVjj4.png") + else if (iconUrl == "https://www.facebook.com/rsrc.php/v3/yL/r/IfsimazVjj4.png") icon = "wow"; - else if (iconUrl == "https://www.facebook.com/rsrc.php/v2/yH/r/jOeSrGlcPLG.png") + else if (iconUrl == "https://www.facebook.com/rsrc.php/v3/yH/r/jOeSrGlcPLG.png") icon = "sad"; - else if (iconUrl == "https://www.facebook.com/rsrc.php/v2/yL/r/IfsimazVjj4.png") + else if (iconUrl == "https://www.facebook.com/rsrc.php/v3/y9/r/6K8v8Ju8kL2.png") icon = "angry"; else icon = NULL; diff --git a/protocols/Steam/src/steam_contacts.cpp b/protocols/Steam/src/steam_contacts.cpp index 6e95c48805..39bd619363 100644 --- a/protocols/Steam/src/steam_contacts.cpp +++ b/protocols/Steam/src/steam_contacts.cpp @@ -173,10 +173,10 @@ void CSteamProto::UpdateContact(MCONTACT hContact, JSONNode *data) // status // NOTE: this here is wrong info, probably depending on publicity of steam profile, but we don't need this at all, we get status updates by polling - // NOTE: polling won't always give us info about all contacts (e.g. in case of quick disconnect and reconnect), so we try to use this anyway - node = json_get(data, "personastate"); - WORD status = SteamToMirandaStatus(json_as_int(node)); + /*node = json_get(data, "personastate"); + status = SteamToMirandaStatus(json_as_int(node)); SetContactStatus(hContact, status); + */ // client node = json_get(data, "personastateflags"); diff --git a/src/mir_app/src/srmm_toolbar.cpp b/src/mir_app/src/srmm_toolbar.cpp index 88f79dc544..9fcdfaecfc 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); @@ -569,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); @@ -724,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();
}
}
|