From 32585af370c0bb4edf03b6b9af90eedad0a40096 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Sun, 23 Mar 2014 16:53:39 +0000 Subject: attempt to replace metaicons in tabSRMM with the active protocol icons git-svn-id: http://svn.miranda-ng.org/main/trunk@8709 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c --- plugins/TabSRMM/src/chat/window.cpp | 2 +- plugins/TabSRMM/src/msgdialog.cpp | 210 +++++++++++++++++------------------- plugins/TabSRMM/src/msgdlgutils.cpp | 2 +- 3 files changed, 102 insertions(+), 112 deletions(-) (limited to 'plugins/TabSRMM') diff --git a/plugins/TabSRMM/src/chat/window.cpp b/plugins/TabSRMM/src/chat/window.cpp index 15569b1980..4a7365cbb9 100644 --- a/plugins/TabSRMM/src/chat/window.cpp +++ b/plugins/TabSRMM/src/chat/window.cpp @@ -2011,7 +2011,7 @@ INT_PTR CALLBACK RoomWndProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lPar switch (si->iType) { case GCW_CHATROOM: - hIcon = (dat->wStatus <= ID_STATUS_OFFLINE) ? LoadSkinnedProtoIcon(si->pszModule, ID_STATUS_OFFLINE) : LoadSkinnedProtoIcon(si->pszModule, dat->wStatus); + hIcon = LoadSkinnedProtoIcon(si->pszModule, (dat->wStatus <= ID_STATUS_OFFLINE) ? ID_STATUS_OFFLINE : dat->wStatus); mir_sntprintf(szTemp, SIZEOF(szTemp), (si->nUsersInNicklist == 1) ? TranslateT("%s: Chat Room (%u user%s)") : TranslateT("%s: Chat Room (%u users%s)"), szNick, si->nUsersInNicklist, si->bFilterEnabled ? TranslateT(", event filter active") : _T("")); diff --git a/plugins/TabSRMM/src/msgdialog.cpp b/plugins/TabSRMM/src/msgdialog.cpp index 8d813a3817..b3b6ee785e 100644 --- a/plugins/TabSRMM/src/msgdialog.cpp +++ b/plugins/TabSRMM/src/msgdialog.cpp @@ -157,52 +157,52 @@ static void ShowPopupMenu(TWindowData *dat, int idFrom, HWND hwndFrom, POINT pt) if (((iSelection > 800 && iSelection < 1400) || iSelection == 20866) && idFrom == IDC_LOG) { dat->codePage = iSelection; db_set_dw(dat->hContact, SRMSGMOD_T, "ANSIcodepage", dat->codePage); - } else if (iSelection == 500 && idFrom == IDC_LOG) { + } + else if (iSelection == 500 && idFrom == IDC_LOG) { dat->codePage = CP_ACP; db_unset(dat->hContact, SRMSGMOD_T, "ANSIcodepage"); - } else { + } + else { switch (iSelection) { - case IDM_COPY: - SendMessage(hwndFrom, WM_COPY, 0, 0); - break; - case IDM_CUT: - SendMessage(hwndFrom, WM_CUT, 0, 0); - break; - case IDM_PASTE: - case IDM_PASTEFORMATTED: - if (idFrom == IDC_MESSAGE) - SendMessage(hwndFrom, EM_PASTESPECIAL, (iSelection == IDM_PASTE) ? CF_UNICODETEXT : 0, 0); - break; - case IDM_COPYALL: - SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&all); - SendMessage(hwndFrom, WM_COPY, 0, 0); - SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&sel); - break; - //MAD - case IDM_QUOTE: - SendMessage(hwndDlg,WM_COMMAND, IDC_QUOTE, 0); - break; - //MAD_ - case IDM_SELECTALL: - SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&all); - break; - case IDM_CLEAR: - ClearLog(dat); - break; - case ID_LOG_FREEZELOG: - SendMessage(GetDlgItem(hwndDlg, IDC_LOG), WM_KEYDOWN, VK_F12, 0); - break; - case ID_EDITOR_SHOWMESSAGELENGTHINDICATOR: - PluginConfig.m_visualMessageSizeIndicator = !PluginConfig.m_visualMessageSizeIndicator; - db_set_b(0, SRMSGMOD_T, "msgsizebar", (BYTE)PluginConfig.m_visualMessageSizeIndicator); - M.BroadcastMessage(DM_CONFIGURETOOLBAR, 0, 0); - SendMessage(hwndDlg, WM_SIZE, 0, 0); - if (dat->pContainer->hwndStatus) - RedrawWindow(dat->pContainer->hwndStatus, 0, 0, RDW_INVALIDATE | RDW_UPDATENOW); - break; - case ID_EDITOR_PASTEANDSENDIMMEDIATELY: - HandlePasteAndSend(dat); - break; + case IDM_COPY: + SendMessage(hwndFrom, WM_COPY, 0, 0); + break; + case IDM_CUT: + SendMessage(hwndFrom, WM_CUT, 0, 0); + break; + case IDM_PASTE: + case IDM_PASTEFORMATTED: + if (idFrom == IDC_MESSAGE) + SendMessage(hwndFrom, EM_PASTESPECIAL, (iSelection == IDM_PASTE) ? CF_UNICODETEXT : 0, 0); + break; + case IDM_COPYALL: + SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&all); + SendMessage(hwndFrom, WM_COPY, 0, 0); + SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&sel); + break; + case IDM_QUOTE: + SendMessage(hwndDlg, WM_COMMAND, IDC_QUOTE, 0); + break; + case IDM_SELECTALL: + SendMessage(hwndFrom, EM_EXSETSEL, 0, (LPARAM)&all); + break; + case IDM_CLEAR: + ClearLog(dat); + break; + case ID_LOG_FREEZELOG: + SendMessage(GetDlgItem(hwndDlg, IDC_LOG), WM_KEYDOWN, VK_F12, 0); + break; + case ID_EDITOR_SHOWMESSAGELENGTHINDICATOR: + PluginConfig.m_visualMessageSizeIndicator = !PluginConfig.m_visualMessageSizeIndicator; + db_set_b(0, SRMSGMOD_T, "msgsizebar", (BYTE)PluginConfig.m_visualMessageSizeIndicator); + M.BroadcastMessage(DM_CONFIGURETOOLBAR, 0, 0); + SendMessage(hwndDlg, WM_SIZE, 0, 0); + if (dat->pContainer->hwndStatus) + RedrawWindow(dat->pContainer->hwndStatus, 0, 0, RDW_INVALIDATE | RDW_UPDATENOW); + break; + case ID_EDITOR_PASTEANDSENDIMMEDIATELY: + HandlePasteAndSend(dat); + break; } } if (idFrom == IDC_LOG) @@ -216,28 +216,22 @@ static void ShowPopupMenu(TWindowData *dat, int idFrom, HWND hwndFrom, POINT pt) static void ResizeIeView(const TWindowData *dat, DWORD px, DWORD py, DWORD cx, DWORD cy) { - RECT rcRichEdit; - POINT pt; - IEVIEWWINDOW ieWindow; - int iMode = dat->hwndIEView ? 1 : 2; - HWND hwndDlg = dat->hwnd; - - ZeroMemory(&ieWindow, sizeof(ieWindow)); - GetWindowRect(GetDlgItem(hwndDlg, IDC_LOG), &rcRichEdit); - pt.x = rcRichEdit.left; - pt.y = rcRichEdit.top; - ScreenToClient(hwndDlg, &pt); - ieWindow.cbSize = sizeof(IEVIEWWINDOW); + RECT rcRichEdit; + GetWindowRect(GetDlgItem(dat->hwnd, IDC_LOG), &rcRichEdit); + + POINT pt = { rcRichEdit.left, rcRichEdit.top }; + ScreenToClient(dat->hwnd, &pt); + + IEVIEWWINDOW ieWindow = { sizeof(ieWindow) }; ieWindow.iType = IEW_SETPOS; - ieWindow.parent = hwndDlg; - ieWindow.hwnd = iMode == 1 ? dat->hwndIEView : dat->hwndHPP; + ieWindow.parent = dat->hwnd; + ieWindow.hwnd = dat->hwndIEView ? dat->hwndIEView : dat->hwndHPP; ieWindow.x = pt.x; ieWindow.y = pt.y; ieWindow.cx = rcRichEdit.right - rcRichEdit.left; ieWindow.cy = rcRichEdit.bottom - rcRichEdit.top; - if (ieWindow.cx != 0 && ieWindow.cy != 0) { - CallService(iMode == 1 ? MS_IEVIEW_WINDOW : MS_HPP_EG_WINDOW, 0, (LPARAM)&ieWindow); - } + if (ieWindow.cx != 0 && ieWindow.cy != 0) + CallService(dat->hwndIEView ? MS_IEVIEW_WINDOW : MS_HPP_EG_WINDOW, 0, (LPARAM)&ieWindow); } LRESULT CALLBACK IEViewSubclassProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) @@ -432,7 +426,7 @@ void TSAPI ShowMultipleControls(HWND hwndDlg, const UINT *controls, int cControl void TSAPI SetDialogToType(HWND hwndDlg) { - TWindowData *dat = (TWindowData*) GetWindowLongPtr(hwndDlg, GWLP_USERDATA); + TWindowData *dat = (TWindowData*)GetWindowLongPtr(hwndDlg, GWLP_USERDATA); int showToolbar = dat->pContainer->dwFlags & CNT_HIDETOOLBAR ? 0 : 1; if (dat->hContact) { @@ -441,7 +435,8 @@ void TSAPI SetDialogToType(HWND hwndDlg) ShowMultipleControls(hwndDlg, addControls, 2, SW_SHOW); Utils::showDlgControl(hwndDlg, IDC_LOGFROZENTEXT, SW_SHOW); SetWindowText(GetDlgItem(hwndDlg, IDC_LOGFROZENTEXT), TranslateT("Contact not on list. You may add it...")); - } else { + } + else { ShowMultipleControls(hwndDlg, addControls, 2, SW_HIDE); dat->bNotOnList = FALSE; Utils::showDlgControl(hwndDlg, IDC_LOGFROZENTEXT, SW_HIDE); @@ -454,8 +449,8 @@ void TSAPI SetDialogToType(HWND hwndDlg) Utils::showDlgControl(hwndDlg, IDC_LOG, SW_HIDE); Utils::enableDlgControl(hwndDlg, IDC_LOG, FALSE); Utils::showDlgControl(hwndDlg, IDC_MESSAGE, SW_SHOW); - } else - ShowMultipleControls(hwndDlg, sendControls, sizeof(sendControls) / sizeof(sendControls[0]), SW_SHOW); + } + else ShowMultipleControls(hwndDlg, sendControls, sizeof(sendControls) / sizeof(sendControls[0]), SW_SHOW); ShowMultipleControls(hwndDlg, errorControls, sizeof(errorControls) / sizeof(errorControls[0]), dat->dwFlags & MWF_ERRORSTATE ? SW_SHOW : SW_HIDE); @@ -504,13 +499,12 @@ static LRESULT CALLBACK MessageLogSubclassProc(HWND hwnd, UINT msg, WPARAM wPara } } break; - - //MAD + case WM_CHAR: if (wParam == 0x03 && isCtrl) // Ctrl+C return DM_WMCopyHandler(hwnd, MessageLogSubclassProc, msg, wParam, lParam); if (wParam == 0x11 && isCtrl) - SendMessage(mwdat->hwnd,WM_COMMAND, IDC_QUOTE, 0); + SendMessage(mwdat->hwnd, WM_COMMAND, IDC_QUOTE, 0); break; case WM_SYSKEYUP: @@ -559,8 +553,8 @@ static LRESULT CALLBACK MessageLogSubclassProc(HWND hwnd, UINT msg, WPARAM wPara ClientToScreen(hwnd, &pt); } else { - pt.x = (short) LOWORD(lParam); - pt.y = (short) HIWORD(lParam); + pt.x = (short)LOWORD(lParam); + pt.y = (short)HIWORD(lParam); } ShowPopupMenu(mwdat, IDC_LOG, hwnd, pt); @@ -585,7 +579,7 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar GetKeyboardState(mwdat->kstate); if (mwdat->kstate[VK_CONTROL] & 0x80 || mwdat->kstate[VK_SHIFT] & 0x80) return 0; - + mwdat->fkeyProcessed = false; return 0; } @@ -605,10 +599,10 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar { BOOL isCtrl, isShift, isAlt; KbdState(mwdat, isShift, isCtrl, isAlt); - //MAD: sound on typing.. + if (PluginConfig.g_bSoundOnTyping && !isAlt && !isCtrl && !(mwdat->pContainer->dwFlags & CNT_NOSOUND) && wParam != VK_ESCAPE && !(wParam == VK_TAB && PluginConfig.m_AllowTab)) SkinPlaySound("SoundOnTyping"); - //MAD + if (isCtrl && !isAlt) { switch (wParam) { case 0x02: // bold @@ -663,10 +657,8 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar BOOL isCtrl, isShift, isAlt; KbdState(mwdat, isShift, isCtrl, isAlt); - //MAD: sound on typing.. if (PluginConfig.g_bSoundOnTyping && !isAlt && !(mwdat->pContainer->dwFlags & CNT_NOSOUND) && wParam == VK_DELETE) SkinPlaySound("SoundOnTyping"); - // if (wParam == VK_INSERT && !isShift && !isCtrl && !isAlt) { mwdat->fInsertMode = !mwdat->fInsertMode; @@ -686,7 +678,7 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar } else break; } - if ((isCtrl && !isShift) ^(0 != PluginConfig.m_SendOnEnter)) { + if ((isCtrl && !isShift) ^ (0 != PluginConfig.m_SendOnEnter)) { PostMessage(hwndParent, WM_COMMAND, IDOK, 0); return 0; } @@ -700,7 +692,8 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar lastEnterTime = time(NULL); SetWindowLongPtr(hwnd, GWLP_USERDATA, lastEnterTime); break; - } else { + } + else { SendMessage(hwnd, WM_KEYDOWN, VK_BACK, 0); SendMessage(hwnd, WM_KEYUP, VK_BACK, 0); PostMessage(hwndParent, WM_COMMAND, IDOK, 0); @@ -730,30 +723,29 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar case VK_NEXT: case VK_HOME: case VK_END: - { - WPARAM wp = 0; - - SetWindowLongPtr(hwnd, GWLP_USERDATA, 0); - if (wParam == VK_UP) - wp = MAKEWPARAM(SB_LINEUP, 0); - else if (wParam == VK_PRIOR) - wp = MAKEWPARAM(SB_PAGEUP, 0); - else if (wParam == VK_NEXT) - wp = MAKEWPARAM(SB_PAGEDOWN, 0); - else if (wParam == VK_HOME) - wp = MAKEWPARAM(SB_TOP, 0); - else if (wParam == VK_END) { - DM_ScrollToBottom(mwdat, 0, 0); - return 0; - } else if (wParam == VK_DOWN) - wp = MAKEWPARAM(SB_LINEDOWN, 0); + WPARAM wp = 0; - if (mwdat->hwndIEView == 0 && mwdat->hwndHPP == 0) - SendMessage(GetDlgItem(hwndParent, IDC_LOG), WM_VSCROLL, wp, 0); - else - SendMessage(mwdat->hwndIWebBrowserControl, WM_VSCROLL, wp, 0); + SetWindowLongPtr(hwnd, GWLP_USERDATA, 0); + if (wParam == VK_UP) + wp = MAKEWPARAM(SB_LINEUP, 0); + else if (wParam == VK_PRIOR) + wp = MAKEWPARAM(SB_PAGEUP, 0); + else if (wParam == VK_NEXT) + wp = MAKEWPARAM(SB_PAGEDOWN, 0); + else if (wParam == VK_HOME) + wp = MAKEWPARAM(SB_TOP, 0); + else if (wParam == VK_END) { + DM_ScrollToBottom(mwdat, 0, 0); return 0; } + else if (wParam == VK_DOWN) + wp = MAKEWPARAM(SB_LINEDOWN, 0); + + if (mwdat->hwndIEView == 0 && mwdat->hwndHPP == 0) + SendMessage(GetDlgItem(hwndParent, IDC_LOG), WM_VSCROLL, wp, 0); + else + SendMessage(mwdat->hwndIWebBrowserControl, WM_VSCROLL, wp, 0); + return 0; } } if (wParam == VK_RETURN) @@ -810,10 +802,8 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar case WM_ERASEBKGND: return(CSkin::m_skinEnabled ? 0 : 1); - /* - * sent by smileyadd when the smiley selection window dies - * just grab the focus :) - */ + // sent by smileyadd when the smiley selection window dies + // just grab the focus :) case WM_USER + 100: SetFocus(hwnd); break; @@ -825,9 +815,10 @@ static LRESULT CALLBACK MessageEditSubclassProc(HWND hwnd, UINT msg, WPARAM wPar SendMessage(hwnd, EM_EXGETSEL, 0, (LPARAM)&sel); SendMessage(hwnd, EM_POSFROMCHAR, (WPARAM)& pt, (LPARAM)sel.cpMax); ClientToScreen(hwnd, &pt); - } else { - pt.x = (short) LOWORD(lParam); - pt.y = (short) HIWORD(lParam); + } + else { + pt.x = (short)LOWORD(lParam); + pt.y = (short)HIWORD(lParam); } ShowPopupMenu(mwdat, IDC_MESSAGE, hwnd, pt); @@ -874,7 +865,7 @@ LRESULT CALLBACK SplitterSubclassProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM if (dat) { GetClientRect(hwnd, &rc); - dat->savedSplitter = rc.right > rc.bottom ? (short) HIWORD(GetMessagePos()) + rc.bottom / 2 : (short) LOWORD(GetMessagePos()) + rc.right / 2; + dat->savedSplitter = rc.right > rc.bottom ? (short)HIWORD(GetMessagePos()) + rc.bottom / 2 : (short)LOWORD(GetMessagePos()) + rc.right / 2; if (dat->bType == SESSIONTYPE_IM) dat->savedSplitY = dat->splitterY; else @@ -890,7 +881,7 @@ LRESULT CALLBACK SplitterSubclassProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM if (GetCapture() == hwnd) { RECT rc; GetClientRect(hwnd, &rc); - SendMessage(hwndParent, DM_SPLITTERMOVED, rc.right > rc.bottom ? (short) HIWORD(GetMessagePos()) + rc.bottom / 2 : (short) LOWORD(GetMessagePos()) + rc.right / 2, (LPARAM)hwnd); + SendMessage(hwndParent, DM_SPLITTERMOVED, rc.right > rc.bottom ? (short)HIWORD(GetMessagePos()) + rc.bottom / 2 : (short)LOWORD(GetMessagePos()) + rc.right / 2, (LPARAM)hwnd); } return 0; @@ -899,17 +890,16 @@ LRESULT CALLBACK SplitterSubclassProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM case WM_PAINT: { - RECT rc; PAINTSTRUCT ps; - HDC dc = BeginPaint(hwnd, &ps); - int ctrlId = GetDlgCtrlID(hwnd); + HDC dc = BeginPaint(hwnd, &ps); + RECT rc; GetClientRect(hwnd, &rc); if (dat && CSkin::m_skinEnabled) CSkin::SkinDrawBG(hwnd, dat->pContainer->hwnd, dat->pContainer, &rc, dc); else if (M.isAero() || M.isVSThemed()) { - if (ctrlId == IDC_PANELSPLITTER) { + if (GetDlgCtrlID(hwnd) == IDC_PANELSPLITTER) { EndPaint(hwnd, &ps); return 0; } diff --git a/plugins/TabSRMM/src/msgdlgutils.cpp b/plugins/TabSRMM/src/msgdlgutils.cpp index df5d69b4c5..5bdb343f03 100644 --- a/plugins/TabSRMM/src/msgdlgutils.cpp +++ b/plugins/TabSRMM/src/msgdlgutils.cpp @@ -2214,7 +2214,7 @@ void TSAPI GetMyNick(TWindowData *dat) HICON TSAPI MY_GetContactIcon(const TWindowData *dat) { - return(LoadSkinnedProtoIcon(dat->cache->getProto(), dat->cache->getStatus())); + return LoadSkinnedProtoIcon(dat->cache->getActiveProto(), dat->cache->getActiveStatus()); } /** -- cgit v1.2.3