From 00f5e35c664bd8b2b1b00de3353aa0c3e70f5423 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Thu, 7 Mar 2019 13:00:51 +0300 Subject: duplicate popup icons moved into global skin --- plugins/NewXstatusNotify/res/popup.ico | Bin 1150 -> 0 bytes plugins/NewXstatusNotify/res/resource.rc | 3 +-- plugins/NewXstatusNotify/src/indsnd.cpp | 16 ++++++------ plugins/NewXstatusNotify/src/main.cpp | 42 +++++++++++++------------------ plugins/NewXstatusNotify/src/options.cpp | 16 ++++++------ plugins/NewXstatusNotify/src/resource.h | 1 - plugins/NewXstatusNotify/src/stdafx.h | 29 +++++++++++---------- 7 files changed, 50 insertions(+), 57 deletions(-) delete mode 100644 plugins/NewXstatusNotify/res/popup.ico (limited to 'plugins/NewXstatusNotify') diff --git a/plugins/NewXstatusNotify/res/popup.ico b/plugins/NewXstatusNotify/res/popup.ico deleted file mode 100644 index 5b3fe4e65b..0000000000 Binary files a/plugins/NewXstatusNotify/res/popup.ico and /dev/null differ diff --git a/plugins/NewXstatusNotify/res/resource.rc b/plugins/NewXstatusNotify/res/resource.rc index 30a324cbe3..8d02607d96 100644 --- a/plugins/NewXstatusNotify/res/resource.rc +++ b/plugins/NewXstatusNotify/res/resource.rc @@ -84,7 +84,7 @@ FONT 8, "MS Shell Dlg", 0, 0, 0x1 BEGIN CONTROL "",IDC_INDSNDLIST,"CListControl",WS_TABSTOP | 0x1d0,5,5,290,170,WS_EX_CLIENTEDGE ICON IDI_SOUND,IDC_SOUNDICON,8,178,21,20,SS_CENTERIMAGE - ICON IDI_POPUP,IDC_POPUPICON,109,178,21,20,SS_CENTERIMAGE + ICON IDC_STATIC,IDC_POPUPICON,109,178,21,20,SS_CENTERIMAGE LTEXT "Sounds",IDC_STATIC,26,182,80,9 LTEXT "Popups",IDC_STATIC,127,182,80,9 ICON IDI_XSTATUS,IDC_XSTATUSICON,8,194,21,20,SS_CENTERIMAGE @@ -357,7 +357,6 @@ END // Icon with lowest ID value placed first to ensure application icon // remains consistent on all systems. IDI_RESET ICON "reset.ico" -IDI_POPUP ICON "popup.ico" IDI_SOUND ICON "sound.ico" IDI_NOTIFICATION_OFF ICON "main_off.ico" IDI_NOTIFICATION_ON ICON "main_on.ico" diff --git a/plugins/NewXstatusNotify/src/indsnd.cpp b/plugins/NewXstatusNotify/src/indsnd.cpp index e1805da337..fc5b01d5e7 100644 --- a/plugins/NewXstatusNotify/src/indsnd.cpp +++ b/plugins/NewXstatusNotify/src/indsnd.cpp @@ -422,21 +422,21 @@ INT_PTR CALLBACK DlgProcFiltering(HWND hwndDlg, UINT msg, WPARAM, LPARAM lParam) HIMAGELIST hImageList = ImageList_Create(GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), ILC_COLOR32 | ILC_MASK, 3, 3); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[2].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_SOUND].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_SOUNDICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_SOUND, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[1].hIcolib)); + ImageList_AddIcon(hImageList, Skin_LoadIcon(SKINICON_OTHER_POPUP)); SendDlgItemMessage(hwndDlg, IDC_POPUPICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_POPUP, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[5].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_XSTATUS].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_XSTATUSICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_XSTATUS, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[10].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_LOGGING_XSTATUS].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_XLOGGINGICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_XLOGGING, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[9].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_STATUS_MESSAGE].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_SMSGICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_STATUSMSG, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[11].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_LOGGING_SMSG].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_SMSGLOGGINGICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_SMSGLOGGING, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[6].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_DISABLEALL].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_DISABLEALLICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_DISABLEALL, ILD_NORMAL), 0); - ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[7].hIcolib)); + ImageList_AddIcon(hImageList, IcoLib_GetIconByHandle(iconList[ICO_ENABLEALL].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_ENABLEALLICON, STM_SETICON, (WPARAM)ImageList_GetIcon(hImageList, EXTRA_IMAGE_ENABLEALL, ILD_NORMAL), 0); ImageList_AddIcon(hImageList, Skin_LoadIcon(SKINICON_OTHER_SMALLDOT)); diff --git a/plugins/NewXstatusNotify/src/main.cpp b/plugins/NewXstatusNotify/src/main.cpp index c2bfa62a6e..46c3e475a8 100644 --- a/plugins/NewXstatusNotify/src/main.cpp +++ b/plugins/NewXstatusNotify/src/main.cpp @@ -36,20 +36,19 @@ HWND SecretWnd; int ContactStatusChanged(MCONTACT hContact, WORD oldStatus, WORD newStatus); -IconItem iconList[] = +IconItem iconList[ICO_MAXID] = { - { LPGEN("Reset"), ICO_RESET, IDI_RESET }, - { LPGEN("Popups"), ICO_POPUP, IDI_POPUP }, - { LPGEN("Sounds"), ICO_SOUND, IDI_SOUND }, - { LPGEN("Notification enabled"), ICO_NOTIFICATION_OFF, IDI_NOTIFICATION_OFF }, - { LPGEN("Notification disabled"), ICO_NOTIFICATION_ON, IDI_NOTIFICATION_ON }, - { LPGEN("Extra status notify"), ICO_XSTATUS, IDI_XSTATUS }, - { LPGEN("Disable all"), ICO_DISABLEALL, IDI_DISABLEALL }, - { LPGEN("Enable all"), ICO_ENABLEALL, IDI_ENABLEALL }, - { LPGEN("Variables"), ICO_VARIABLES, IDI_VARIABLES }, - { LPGEN("Status message notify"), ICO_STATUS_MESSAGE, IDI_STATUS_MESSAGE }, - { LPGEN("Extra status logging"), ICO_LOGGING_XSTATUS, IDI_LOGGING_XSTATUS }, - { LPGEN("Status message logging"), ICO_LOGGING_SMSG, IDI_LOGGING_SMSG } + { LPGEN("Reset"), "reset", IDI_RESET }, + { LPGEN("Sounds"), "sound", IDI_SOUND }, + { LPGEN("Notification enabled"), "notification_off", IDI_NOTIFICATION_OFF }, + { LPGEN("Notification disabled"), "notification_on", IDI_NOTIFICATION_ON }, + { LPGEN("Extra status notify"), "xstatus", IDI_XSTATUS }, + { LPGEN("Disable all"), "disable_all", IDI_DISABLEALL }, + { LPGEN("Enable all"), "enable_all", IDI_ENABLEALL }, + { LPGEN("Variables"), "variables", IDI_VARIABLES }, + { LPGEN("Status message notify"), "status_message", IDI_STATUS_MESSAGE }, + { LPGEN("Extra status logging"), "logging_xstatus", IDI_LOGGING_XSTATUS }, + { LPGEN("Status message logging"), "logging_status_message", IDI_LOGGING_SMSG } }; ///////////////////////////////////////////////////////////////////////////////////////// @@ -97,13 +96,6 @@ BYTE GetGender(MCONTACT hContact) return GENDER_UNSPECIFIED; } -HANDLE GetIconHandle(char *szIcon) -{ - char szSettingName[64]; - mir_snprintf(szSettingName, "%s_%s", MODULENAME, szIcon); - return IcoLib_GetIconHandle(szSettingName); -} - static int __inline CheckStr(char *str, int not_empty, int empty) { if (str == nullptr || str[0] == '\0') @@ -1065,9 +1057,9 @@ INT_PTR EnableDisableMenuCommand(WPARAM, LPARAM) g_plugin.setByte("TempDisable", opt.TempDisabled = !opt.TempDisabled); if (opt.TempDisabled) - Menu_ModifyItem(hEnableDisableMenu, LPGENW("Enable status notification"), GetIconHandle(ICO_NOTIFICATION_OFF)); + Menu_ModifyItem(hEnableDisableMenu, LPGENW("Enable status notification"), iconList[ICO_NOTIFICATION_OFF].hIcolib); else - Menu_ModifyItem(hEnableDisableMenu, LPGENW("Disable status notification"), GetIconHandle(ICO_NOTIFICATION_ON)); + Menu_ModifyItem(hEnableDisableMenu, LPGENW("Disable status notification"), iconList[ICO_NOTIFICATION_ON].hIcolib); CallService(MS_TTB_SETBUTTONSTATE, (WPARAM)hToolbarButton, opt.TempDisabled ? 0 : TTBST_PUSHED); return 0; @@ -1101,8 +1093,8 @@ static int InitTopToolbar(WPARAM, LPARAM) tbb.pszService = MS_STATUSCHANGE_MENUCOMMAND; tbb.dwFlags = (opt.TempDisabled ? 0 : TTBBF_PUSHED) | TTBBF_ASPUSHBUTTON; tbb.name = LPGEN("Toggle status notification"); - tbb.hIconHandleUp = iconList[3].hIcolib; - tbb.hIconHandleDn = iconList[4].hIcolib; + tbb.hIconHandleUp = iconList[ICO_NOTIFICATION_OFF].hIcolib; + tbb.hIconHandleDn = iconList[ICO_NOTIFICATION_ON].hIcolib; tbb.pszTooltipUp = LPGEN("Enable status notification"); tbb.pszTooltipDn = LPGEN("Disable status notification"); hToolbarButton = g_plugin.addTTB(&tbb); @@ -1171,7 +1163,7 @@ int CMPlugin::Load() evtype.module = MODULENAME; evtype.eventType = EVENTTYPE_STATUSCHANGE; evtype.descr = LPGEN("Status change"); - evtype.eventIcon = iconList[3].hIcolib; + evtype.eventIcon = iconList[ICO_NOTIFICATION_OFF].hIcolib; evtype.flags = DETF_HISTORY | DETF_MSGWINDOW; DbEvent_RegisterType(&evtype); diff --git a/plugins/NewXstatusNotify/src/options.cpp b/plugins/NewXstatusNotify/src/options.cpp index 0a1b11abf8..ea88177e06 100644 --- a/plugins/NewXstatusNotify/src/options.cpp +++ b/plugins/NewXstatusNotify/src/options.cpp @@ -545,10 +545,10 @@ INT_PTR CALLBACK DlgProcXPopupOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM // Buttons SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BUTTONADDTOOLTIP, (WPARAM)LPGENW("Show available variables"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[8].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_VARIABLES].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BUTTONADDTOOLTIP, (WPARAM)LPGENW("Reset all templates to default"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[0].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_RESET].hIcolib)); return TRUE; case WM_COMMAND: @@ -671,10 +671,10 @@ INT_PTR CALLBACK DlgProcSMPopupOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARA // Buttons SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BUTTONADDTOOLTIP, (WPARAM)LPGENW("Show available variables"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[8].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_VARIABLES].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BUTTONADDTOOLTIP, (WPARAM)LPGENW("Reset all templates to default"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[0].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_RESET].hIcolib)); // proto list { @@ -882,10 +882,10 @@ INT_PTR CALLBACK DlgProcXLogOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM l // Buttons SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Show available variables"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[8].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_VARIABLES].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Reset all templates to default"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[0].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_RESET].hIcolib)); SendMessage(hwndDlg, WM_USER + 2, (WPARAM)opt.XLogToFile || opt.XLogToDB, 0); return TRUE; @@ -1040,10 +1040,10 @@ INT_PTR CALLBACK DlgProcLogOpts(HWND hwndDlg, UINT msg, WPARAM wParam, LPARAM lP // Buttons SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Show available variables"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[8].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_VARIABLES, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_VARIABLES].hIcolib)); SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Reset all templates to default"), BATF_UNICODE); - SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[0].hIcolib)); + SendDlgItemMessage(hwndDlg, IDC_BT_RESET, BM_SETIMAGE, IMAGE_ICON, (LPARAM)IcoLib_GetIconByHandle(iconList[ICO_RESET].hIcolib)); SendMessage(hwndDlg, WM_USER + 2, (WPARAM)opt.LogToFile || opt.LogToDB, 0); SendMessage(hwndDlg, WM_USER + 3, (WPARAM)opt.SMsgLogToFile || opt.SMsgLogToDB, 0); diff --git a/plugins/NewXstatusNotify/src/resource.h b/plugins/NewXstatusNotify/src/resource.h index e827187708..3b10ffedce 100644 --- a/plugins/NewXstatusNotify/src/resource.h +++ b/plugins/NewXstatusNotify/src/resource.h @@ -13,7 +13,6 @@ #define IDD_OPT_FILTERS 114 #define IDD_OPT_POPUP 115 #define IDD_OPT_XLOG 116 -#define IDI_POPUP 117 #define IDD_OPT_SMPOPUP 117 #define IDI_SOUND 118 #define IDD_OPT_LOG 118 diff --git a/plugins/NewXstatusNotify/src/stdafx.h b/plugins/NewXstatusNotify/src/stdafx.h index 02e2fbeb43..86ddad6298 100644 --- a/plugins/NewXstatusNotify/src/stdafx.h +++ b/plugins/NewXstatusNotify/src/stdafx.h @@ -105,18 +105,21 @@ struct CMPlugin : public PLUGIN #define COLOR_BG_NAVAILDEFAULT RGB(255,189,189) #define COLOR_TX_DEFAULT RGB(0,0,0) -#define ICO_RESET "reset" -#define ICO_POPUP "popup" -#define ICO_SOUND "sound" -#define ICO_NOTIFICATION_OFF "notification_off" -#define ICO_NOTIFICATION_ON "notification_on" -#define ICO_XSTATUS "xstatus" -#define ICO_DISABLEALL "disable_all" -#define ICO_ENABLEALL "enable_all" -#define ICO_VARIABLES "variables" -#define ICO_STATUS_MESSAGE "status_message" -#define ICO_LOGGING_XSTATUS "logging_xstatus" -#define ICO_LOGGING_SMSG "logging_status_message" +enum +{ + ICO_RESET, + ICO_SOUND, + ICO_NOTIFICATION_OFF, + ICO_NOTIFICATION_ON, + ICO_XSTATUS, + ICO_DISABLEALL, + ICO_ENABLEALL, + ICO_VARIABLES, + ICO_STATUS_MESSAGE, + ICO_LOGGING_XSTATUS, + ICO_LOGGING_SMSG, + ICO_MAXID +}; #define JS_PARSE_XMPP_URI "/ParseXmppURI" @@ -165,7 +168,7 @@ extern TEMPLATES templates; extern HGENMENU hEnableDisableMenu; extern STATUS StatusList[STATUS_COUNT]; extern STATUS StatusListEx[STATUSEX_COUNT]; -extern IconItem iconList[]; +extern IconItem iconList[ICO_MAXID]; wchar_t* GetStr(STATUSMSGINFO *n, const wchar_t *tmplt); void LogSMsgToDB(STATUSMSGINFO *smi, const wchar_t *tmplt); -- cgit v1.2.3