summaryrefslogtreecommitdiff
path: root/plugins/TabSRMM/src
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2024-06-27 16:43:53 +0300
committerGeorge Hazan <george.hazan@gmail.com>2024-06-27 16:43:53 +0300
commit3d031d4565cad76687b5c1765bc6733f8bd4270c (patch)
tree0f7e7b64a2c782c28f764a05b92a073c9511f2fb /plugins/TabSRMM/src
parentfe2d42bba1d2d2cf2e149f6f58fd0c0dfada30ab (diff)
fixes #4486 (User notes copy problem)
Diffstat (limited to 'plugins/TabSRMM/src')
-rw-r--r--plugins/TabSRMM/src/buttonsbar.cpp7
-rw-r--r--plugins/TabSRMM/src/generic_msghandlers.cpp43
-rw-r--r--plugins/TabSRMM/src/hotkeyhandler.cpp1
-rw-r--r--plugins/TabSRMM/src/msgdialog.cpp29
-rw-r--r--plugins/TabSRMM/src/msgdlgother.cpp1
-rw-r--r--plugins/TabSRMM/src/msgs.cpp1
-rw-r--r--plugins/TabSRMM/src/msgs.h22
-rw-r--r--plugins/TabSRMM/src/resource.h1
-rw-r--r--plugins/TabSRMM/src/themes.cpp9
-rw-r--r--plugins/TabSRMM/src/utils.h1
10 files changed, 22 insertions, 93 deletions
diff --git a/plugins/TabSRMM/src/buttonsbar.cpp b/plugins/TabSRMM/src/buttonsbar.cpp
index 6e52d30c82..28bb14993e 100644
--- a/plugins/TabSRMM/src/buttonsbar.cpp
+++ b/plugins/TabSRMM/src/buttonsbar.cpp
@@ -80,13 +80,6 @@ static int CB_InitDefaultButtons(WPARAM, LPARAM)
bbd.pwszTooltip = LPGENW("View user's history");
g_plugin.addButton(&bbd);
- bbd.bbbFlags = BBBF_ISIMBUTTON | BBBF_ISRSIDEBUTTON | BBBF_CREATEBYID | BBBF_NOREADONLY;
- bbd.dwButtonID = IDC_PIC;
- bbd.dwDefPos = 60;
- bbd.hIcon = g_plugin.getIconHandle(IDI_CONTACTPIC);
- bbd.pwszTooltip = LPGENW("Edit user notes");
- g_plugin.addButton(&bbd);
-
// chat buttons
bbd.bbbFlags = BBBF_ISCHATBUTTON | BBBF_ISSEPARATOR;
bbd.dwButtonID = 1;
diff --git a/plugins/TabSRMM/src/generic_msghandlers.cpp b/plugins/TabSRMM/src/generic_msghandlers.cpp
index b2b14ad76b..8e743779e3 100644
--- a/plugins/TabSRMM/src/generic_msghandlers.cpp
+++ b/plugins/TabSRMM/src/generic_msghandlers.cpp
@@ -375,47 +375,6 @@ LRESULT CMsgDialog::DM_MsgWindowCmdHandler(UINT cmd, WPARAM wParam, LPARAM lPara
SendMessage(m_pContainer->m_hwnd, WM_COMMAND, IDC_TOGGLESIDEBAR, 0);
break;
- case IDC_PIC:
- GetClientRect(m_hwnd, &rc);
-
- m_bEditNotesActive = !m_bEditNotesActive;
- if (m_bEditNotesActive) {
- int iLen = GetWindowTextLength(m_message.GetHwnd());
- if (iLen != 0) {
- ActivateTooltip(IDC_SRMM_MESSAGE, TranslateT("You cannot edit user notes when there are unsent messages"));
- m_bEditNotesActive = false;
- break;
- }
-
- if (!m_bIsAutosizingInput) {
- m_iSplitterSaved = m_iSplitterY;
- m_iSplitterY = rc.bottom / 2;
- Resize();
- }
-
- ptrW wszText(db_get_wsa(m_hContact, "UserInfo", "MyNotes"));
- if (wszText != nullptr)
- m_message.SetText(wszText);
- }
- else {
- ptrW buf(m_message.GetText());
- db_set_ws(m_hContact, "UserInfo", "MyNotes", buf);
- m_message.SetText(L"");
-
- if (!m_bIsAutosizingInput) {
- m_iSplitterY = m_iSplitterSaved;
- Resize();
- DM_ScrollToBottom(0, 1);
- }
- }
- SetWindowPos(m_message.GetHwnd(), nullptr, 0, 0, 0, 0, SWP_DRAWFRAME | SWP_FRAMECHANGED | SWP_NOZORDER |
- SWP_NOMOVE | SWP_NOSIZE | SWP_NOCOPYBITS);
- RedrawWindow(m_hwnd, nullptr, nullptr, RDW_INVALIDATE | RDW_ERASE | RDW_FRAME | RDW_UPDATENOW | RDW_ALLCHILDREN);
-
- if (m_bEditNotesActive)
- CWarning::show(CWarning::WARN_EDITUSERNOTES, MB_OK | MB_ICONINFORMATION);
- break;
-
case IDM_CLEAR:
tabClearLog();
break;
@@ -776,7 +735,7 @@ void CMsgDialog::DM_NotifyTyping(int mode)
MCONTACT hContact = m_cache->getActiveContact();
// editing user notes or preparing a message for queued delivery -> don't send MTN
- if (m_bEditNotesActive || (m_sendMode & SMODE_SENDLATER))
+ if (m_sendMode & SMODE_SENDLATER)
return;
// allow supression of sending out TN for the contact (NOTE: for metacontacts, do NOT use the subcontact handle)
diff --git a/plugins/TabSRMM/src/hotkeyhandler.cpp b/plugins/TabSRMM/src/hotkeyhandler.cpp
index b5107c48ad..c7caef5c92 100644
--- a/plugins/TabSRMM/src/hotkeyhandler.cpp
+++ b/plugins/TabSRMM/src/hotkeyhandler.cpp
@@ -59,7 +59,6 @@ static HOTKEYDESC _hotkeydescs[] = {
{ "tabsrmm_rtl", LPGEN("Toggle text direction"), TABSRMM_HK_SECTION_IM, nullptr, HOTKEYCODE(HOTKEYF_ALT | HOTKEYF_CONTROL, 'B'), 0, TABSRMM_HK_TOGGLERTL },
{ "tabsrmm_msend", LPGEN("Toggle multi send"), TABSRMM_HK_SECTION_IM, nullptr, HOTKEYCODE(HOTKEYF_ALT | HOTKEYF_CONTROL, 'M'), 0, TABSRMM_HK_TOGGLEMULTISEND },
{ "tabsrmm_clearlog", LPGEN("Clear message log"), TABSRMM_HK_SECTION_GENERIC, nullptr, HOTKEYCODE(HOTKEYF_CONTROL, 'L'), 0, TABSRMM_HK_CLEARLOG },
- { "tabsrmm_notes", LPGEN("Edit user notes"), TABSRMM_HK_SECTION_IM, nullptr, HOTKEYCODE(HOTKEYF_SHIFT | HOTKEYF_CONTROL, 'N'), 0, TABSRMM_HK_EDITNOTES },
{ "tabsrmm_sbar", LPGEN("Collapse side bar"), TABSRMM_HK_SECTION_GENERIC, nullptr, HOTKEYCODE(0, VK_F9), 0, TABSRMM_HK_TOGGLESIDEBAR },
{ "tabsrmm_muc_cmgr", LPGEN("Channel manager"), TABSRMM_HK_SECTION_GC, nullptr, HOTKEYCODE(HOTKEYF_SHIFT | HOTKEYF_CONTROL, 'C'), 0, TABSRMM_HK_CHANNELMGR },
{ "tabsrmm_muc_filter", LPGEN("Toggle filter"), TABSRMM_HK_SECTION_GC, nullptr, HOTKEYCODE(HOTKEYF_SHIFT | HOTKEYF_CONTROL, 'F'), 0, TABSRMM_HK_FILTERTOGGLE },
diff --git a/plugins/TabSRMM/src/msgdialog.cpp b/plugins/TabSRMM/src/msgdialog.cpp
index 4a92e29a35..8cd71399bb 100644
--- a/plugins/TabSRMM/src/msgdialog.cpp
+++ b/plugins/TabSRMM/src/msgdialog.cpp
@@ -703,15 +703,12 @@ void CMsgDialog::OnDestroy()
}
if (m_cache->isValid()) { // not valid means the contact was deleted
- if (!m_bEditNotesActive) {
- char *msg = m_message.GetRichTextRtf(true);
- if (msg) {
- g_plugin.setUString(m_hContact, "SavedMsg", msg);
- mir_free(msg);
- }
- else g_plugin.delSetting(m_hContact, "SavedMsg");
+ char *msg = m_message.GetRichTextRtf(true);
+ if (msg) {
+ g_plugin.setUString(m_hContact, "SavedMsg", msg);
+ mir_free(msg);
}
- else SendMessage(m_hwnd, WM_COMMAND, IDC_PIC, 0);
+ else g_plugin.delSetting(m_hContact, "SavedMsg");
}
if (AllowTyping())
@@ -768,11 +765,6 @@ void CMsgDialog::OnDestroy()
void CMsgDialog::onClick_Ok(CCtrlButton *)
{
- if (m_bEditNotesActive) {
- ActivateTooltip(IDC_PIC, TranslateT("You are editing the user notes. Click the button again or use the hotkey (default: Alt+N) to save the notes and return to normal messaging mode"));
- return;
- }
-
int final_sendformat;
if (!isChat()) {
@@ -1497,9 +1489,6 @@ int CMsgDialog::OnFilter(MSGFILTER *pFilter)
case TABSRMM_HK_USERDETAILS:
SendMessage(m_hwnd, WM_COMMAND, MAKELONG(IDC_NAME, BN_CLICKED), 0);
return _dlgReturn(m_hwnd, 1);
- case TABSRMM_HK_EDITNOTES:
- PostMessage(m_hwnd, WM_COMMAND, MAKELONG(IDC_PIC, BN_CLICKED), 0);
- return _dlgReturn(m_hwnd, 1);
case TABSRMM_HK_TOGGLESENDLATER:
if (SendLater::Avail) {
m_sendMode ^= SMODE_SENDLATER;
@@ -1901,9 +1890,6 @@ LRESULT CMsgDialog::WndProc_Message(UINT msg, WPARAM wParam, LPARAM lParam)
replaceStrW(m_wszSearchResult, nullptr);
}
- if (wParam == VK_RETURN && m_bEditNotesActive)
- break;
-
if (isCtrl && !isAlt && !isShift) {
if (wParam == VK_UP || wParam == VK_DOWN) { // input history scrolling (ctrl-up / down)
m_cache->inputHistoryEvent(wParam);
@@ -2103,7 +2089,6 @@ INT_PTR CMsgDialog::DlgProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
if (CSkin::m_skinEnabled) {
UINT item_ids[] = { ID_EXTBKUSERLIST, ID_EXTBKHISTORY, ID_EXTBKINPUTAREA };
UINT ctl_ids[] = { IDC_SRMM_NICKLIST, IDC_SRMM_LOG, IDC_SRMM_MESSAGE };
- BOOL isEditNotesReason = m_bEditNotesActive;
BOOL isSendLaterReason = (m_sendMode & SMODE_SENDLATER);
BOOL isMultipleReason = (m_sendMode & SMODE_MULTIPLE || m_sendMode & SMODE_CONTAINER);
@@ -2120,8 +2105,8 @@ INT_PTR CMsgDialog::DlgProc(UINT uMsg, WPARAM wParam, LPARAM lParam)
rc.top = pt.y - item->MARGIN_TOP;
rc.right = rc.left + item->MARGIN_RIGHT + (rcWindow.right - rcWindow.left) + item->MARGIN_LEFT;
rc.bottom = rc.top + item->MARGIN_BOTTOM + (rcWindow.bottom - rcWindow.top) + item->MARGIN_TOP;
- if (item_ids[i] == ID_EXTBKINPUTAREA && (isMultipleReason || isEditNotesReason || isSendLaterReason)) {
- HBRUSH br = CreateSolidBrush(isMultipleReason ? RGB(255, 130, 130) : (isEditNotesReason ? RGB(80, 255, 80) : RGB(80, 80, 255)));
+ if (item_ids[i] == ID_EXTBKINPUTAREA && (isMultipleReason || isSendLaterReason)) {
+ HBRUSH br = CreateSolidBrush(isMultipleReason ? RGB(255, 130, 130) : RGB(80, 80, 255));
FillRect(hdcMem, &rc, br);
DeleteObject(br);
}
diff --git a/plugins/TabSRMM/src/msgdlgother.cpp b/plugins/TabSRMM/src/msgdlgother.cpp
index b7e1b1e781..e07e303291 100644
--- a/plugins/TabSRMM/src/msgdlgother.cpp
+++ b/plugins/TabSRMM/src/msgdlgother.cpp
@@ -527,7 +527,6 @@ void CMsgDialog::DrawNickList(USERINFO *ui, DRAWITEMSTRUCT *dis)
void CMsgDialog::EnableSendButton(bool bMode) const
{
SendDlgItemMessage(m_hwnd, IDOK, BUTTONSETASNORMAL, bMode, 0);
- SendDlgItemMessage(m_hwnd, IDC_PIC, BUTTONSETASNORMAL, m_bEditNotesActive ? TRUE : (!bMode && m_iOpenJobs == 0) ? TRUE : FALSE, 0);
HWND hwndOK = GetDlgItem(GetParent(GetParent(m_hwnd)), IDOK);
if (IsWindow(hwndOK))
diff --git a/plugins/TabSRMM/src/msgs.cpp b/plugins/TabSRMM/src/msgs.cpp
index a5b9216a9e..c50ca4d251 100644
--- a/plugins/TabSRMM/src/msgs.cpp
+++ b/plugins/TabSRMM/src/msgs.cpp
@@ -436,7 +436,6 @@ static TIconDesc _toolbaricons[] =
{ "tabSRMM_mlog", LPGEN("Message Log options"), 0, -IDI_MSGLOGOPT, 1 }, // 2
{ "tabSRMM_multi", LPGEN("Image tag"), 0, -IDI_IMAGETAG, 1 },
{ "tabSRMM_quote", LPGEN("Quote text"), 0, -IDI_QUOTE, 1 },
- { "tabSRMM_avatar", LPGEN("Edit user notes"), 0, -IDI_CONTACTPIC, 1 },
{ "tabSRMM_save", LPGEN("Save and close"), &PluginConfig.g_buttonBarIcons[ICON_BUTTON_SAVE], -IDI_SAVE, 1 },
{ "tabSRMM_send", LPGEN("Send message"), &PluginConfig.g_buttonBarIcons[ICON_BUTTON_SEND], -IDI_SEND, 1 },
{ "tabSRMM_close", LPGEN("Close"), &PluginConfig.g_buttonBarIcons[ICON_BUTTON_CANCEL], -IDI_CLOSEMSGDLG, 1 }
diff --git a/plugins/TabSRMM/src/msgs.h b/plugins/TabSRMM/src/msgs.h
index d7e7d01bae..5e6aefbe58 100644
--- a/plugins/TabSRMM/src/msgs.h
+++ b/plugins/TabSRMM/src/msgs.h
@@ -498,7 +498,6 @@ public:
bool m_bActualHistory;
bool m_bIsAutosizingInput;
bool m_bCanFlashTab, m_bTabFlash;
- bool m_bEditNotesActive;
bool m_bShowAvatar;
bool m_bSaveBtn, m_bNeedCheckSize;
bool m_bForcedClose;
@@ -879,7 +878,7 @@ struct TIconDescW
#define HOTKEY_MODIFIERS_CTRLALT 1
#define HOTKEY_MODIFIERS_ALTSHIFT 2
-#include "../TabSRMM_icons/resource.h" // icon pack values
+#include "../TabSRMM_icons/res/resource.h" // icon pack values
struct TCpTable {
UINT cpId;
@@ -997,16 +996,15 @@ struct SIDEBARITEM
#define TABSRMM_HK_USERDETAILS 22
#define TABSRMM_HK_TOGGLEINFOPANEL 23
#define TABSRMM_HK_CLEARLOG 24
-#define TABSRMM_HK_EDITNOTES 25
-#define TABSRMM_HK_TOGGLESENDLATER 26
-#define TABSRMM_HK_TOGGLESIDEBAR 27
-#define TABSRMM_HK_CHANNELMGR 28
-#define TABSRMM_HK_FILTERTOGGLE 29
-#define TABSRMM_HK_LISTTOGGLE 30
-#define TABSRMM_HK_MUC_SHOWSERVER 31
-#define TABSRMM_HK_CLOSE_OTHER 32
-#define TABSRMM_HK_SENDMENU 33
-#define TABSRMM_HK_PROTOMENU 34
+#define TABSRMM_HK_TOGGLESENDLATER 25
+#define TABSRMM_HK_TOGGLESIDEBAR 26
+#define TABSRMM_HK_CHANNELMGR 27
+#define TABSRMM_HK_FILTERTOGGLE 28
+#define TABSRMM_HK_LISTTOGGLE 29
+#define TABSRMM_HK_MUC_SHOWSERVER 30
+#define TABSRMM_HK_CLOSE_OTHER 31
+#define TABSRMM_HK_SENDMENU 32
+#define TABSRMM_HK_PROTOMENU 33
#define TABSRMM_HK_SECTION_IM LPGEN("Message windows - IM")
#define TABSRMM_HK_SECTION_GENERIC LPGEN("Message windows - all")
diff --git a/plugins/TabSRMM/src/resource.h b/plugins/TabSRMM/src/resource.h
index 714bcb4533..6482a1bb08 100644
--- a/plugins/TabSRMM/src/resource.h
+++ b/plugins/TabSRMM/src/resource.h
@@ -191,7 +191,6 @@
#define IDC_DETAILS 1100
#define IDC_ADD 1101
#define IDC_RTL 1103
-#define IDC_PIC 1104
#define IDC_CANCELADD 1112
#define IDC_FONTSTRIKEOUT 1113
#define IDC_MATH_BKGCOLOUR 1124
diff --git a/plugins/TabSRMM/src/themes.cpp b/plugins/TabSRMM/src/themes.cpp
index 007f675098..fa07af18e5 100644
--- a/plugins/TabSRMM/src/themes.cpp
+++ b/plugins/TabSRMM/src/themes.cpp
@@ -1957,8 +1957,7 @@ UINT CSkin::NcCalcRichEditFrame(HWND hwnd, const CMsgDialog *mwdat, UINT skinID,
ReleaseDC(GetParent(hwnd), hdc);
return (bReturn) ? WVR_REDRAW : orig;
}
- if ((mwdat->m_sendMode & SMODE_MULTIPLE || mwdat->m_sendMode & SMODE_CONTAINER ||
- mwdat->m_bEditNotesActive || mwdat->m_sendMode & SMODE_SENDLATER) && skinID == ID_EXTBKINPUTAREA) {
+ if ((mwdat->m_sendMode & (SMODE_MULTIPLE | SMODE_CONTAINER | SMODE_SENDLATER)) && skinID == ID_EXTBKINPUTAREA) {
InflateRect(&nccp->rgrc[0], -1, -1);
return WVR_REDRAW;
}
@@ -1976,7 +1975,6 @@ UINT CSkin::DrawRichEditFrame(HWND hwnd, const CMsgDialog *mwdat, UINT skinID, U
if (mwdat == nullptr)
return result;
- BOOL isEditNotesReason = ((mwdat->m_bEditNotesActive) && (skinID == ID_EXTBKINPUTAREA));
BOOL isSendLaterReason = ((mwdat->m_sendMode & SMODE_SENDLATER) && (skinID == ID_EXTBKINPUTAREA));
BOOL isMultipleReason = ((skinID == ID_EXTBKINPUTAREA) && (mwdat->m_sendMode & SMODE_MULTIPLE || mwdat->m_sendMode & SMODE_CONTAINER));
@@ -2014,8 +2012,9 @@ UINT CSkin::DrawRichEditFrame(HWND hwnd, const CMsgDialog *mwdat, UINT skinID, U
ReleaseDC(hwnd, hdc);
return result;
}
- if (isMultipleReason || isEditNotesReason || isSendLaterReason) {
- HBRUSH br = CreateSolidBrush(isMultipleReason ? RGB(255, 130, 130) : (isEditNotesReason ? RGB(80, 255, 80) : RGB(80, 80, 255)));
+
+ if (isMultipleReason || isSendLaterReason) {
+ HBRUSH br = CreateSolidBrush(isMultipleReason ? RGB(255, 130, 130) : RGB(80, 80, 255));
FillRect(hdc, &rcWindow, br);
DeleteObject(br);
}
diff --git a/plugins/TabSRMM/src/utils.h b/plugins/TabSRMM/src/utils.h
index 4337763eb3..628b5f8260 100644
--- a/plugins/TabSRMM/src/utils.h
+++ b/plugins/TabSRMM/src/utils.h
@@ -118,7 +118,6 @@ namespace CWarning
enum
{
WARN_SAVEFILE = 1,
- WARN_EDITUSERNOTES,
WARN_ICONPACKMISSING,
WARN_AEROPEEK_SKIN,
WARN_SENDFILE,