diff options
Diffstat (limited to 'plugins/SendScreenshotPlus/src')
-rw-r--r-- | plugins/SendScreenshotPlus/src/CSend.cpp | 16 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/Main.cpp | 29 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/UAboutForm.cpp | 10 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/UMainForm.cpp | 50 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/ctrl_button.cpp | 2 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/dlg_msgbox.cpp | 29 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/global.h | 35 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/mir_icolib.cpp | 151 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/mir_icolib.h | 64 | ||||
-rw-r--r-- | plugins/SendScreenshotPlus/src/resource.h | 19 |
10 files changed, 125 insertions, 280 deletions
diff --git a/plugins/SendScreenshotPlus/src/CSend.cpp b/plugins/SendScreenshotPlus/src/CSend.cpp index cd6aaa856c..aa15b08785 100644 --- a/plugins/SendScreenshotPlus/src/CSend.cpp +++ b/plugins/SendScreenshotPlus/src/CSend.cpp @@ -87,13 +87,13 @@ void CSend::SetContact(MCONTACT hContact) { INT_PTR CALLBACK CSend::ResultDialogProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LPARAM lParam){ switch(uMsg){ case WM_INITDIALOG:{ - SendMessage(hwndDlg,WM_SETICON,ICON_BIG,(LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW1,1)); + SendMessage(hwndDlg,WM_SETICON,ICON_BIG,(LPARAM)GetIcon(ICO_MAIN)); CSend* self=(CSend*)lParam; TCHAR* tmp=mir_tstrdup(TranslateT("Resulting URL from\n")); mir_tcsadd(tmp,self->m_pszSendTyp); SetDlgItemText(hwndDlg,IDC_HEADERBAR,tmp); mir_free(tmp); - SendDlgItemMessage(hwndDlg,IDC_HEADERBAR,WM_SETICON,ICON_BIG,(LPARAM)Skin_GetIcon(ICO_COMMON_ARROWR,1)); + SendDlgItemMessage(hwndDlg,IDC_HEADERBAR,WM_SETICON,ICON_BIG,(LPARAM)GetIconBtn(ICO_BTN_ARROWR)); SetDlgItemTextA(hwndDlg,ID_edtURL,self->m_URL); if(self->m_URLthumb){ SetDlgItemTextA(hwndDlg,ID_edtURLthumb,self->m_URLthumb); @@ -107,9 +107,9 @@ INT_PTR CALLBACK CSend::ResultDialogProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LP SetDlgItemText(hwndDlg,ID_bvlDesc,self->m_ErrorTitle); else SetDlgItemText(hwndDlg,ID_bvlDesc,self->m_pszFileDesc); - SendDlgItemMessage(hwndDlg,IDOK,BM_SETIMAGE,IMAGE_ICON,(LPARAM)Skin_GetIcon(ICO_BTN_COPY)); + SendDlgItemMessage(hwndDlg,IDOK,BM_SETIMAGE,IMAGE_ICON,(LPARAM)GetIconBtn(ICO_BTN_COPY)); SendDlgItemMessage(hwndDlg,IDOK,BUTTONTRANSLATE,0,0); - SendDlgItemMessage(hwndDlg,IDCANCEL,BM_SETIMAGE,IMAGE_ICON,(LPARAM)Skin_GetIcon(ICO_BTN_CANCEL)); + SendDlgItemMessage(hwndDlg,IDCANCEL,BM_SETIMAGE,IMAGE_ICON,(LPARAM)GetIconBtn(ICO_BTN_CANCEL)); SendDlgItemMessage(hwndDlg,IDCANCEL,BUTTONTRANSLATE,0,0); for(int i=ID_btnCopy; i<=ID_btnThumbBBC2; ++i){ SendDlgItemMessage(hwndDlg,i,BUTTONSETASTHEMEDBTN,0,0); @@ -117,16 +117,16 @@ INT_PTR CALLBACK CSend::ResultDialogProc(HWND hwndDlg,UINT uMsg,WPARAM wParam,LP switch(i){ case ID_btnCopy: case ID_btnThumbCopy: - SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)Skin_GetIcon(ICO_BTN_COPY)); + SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)GetIconBtn(ICO_BTN_COPY)); SendDlgItemMessage(hwndDlg,i,BUTTONADDTOOLTIP,(WPARAM)LPGENT("Copy"),BATF_TCHAR); break; case ID_btnBBC: case ID_btnThumbBBC: - SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)Skin_GetIcon(ICO_BTN_BBC)); + SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)GetIconBtn(ICO_BTN_BBC)); SendDlgItemMessage(hwndDlg,i,BUTTONADDTOOLTIP,(WPARAM)LPGENT("Copy BBCode"),BATF_TCHAR); break; default: - SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)Skin_GetIcon(ICO_BTN_BBC2)); + SendDlgItemMessage(hwndDlg,i,BM_SETIMAGE,IMAGE_ICON,(LPARAM)GetIconBtn(ICO_BTN_BBCLNK)); SendDlgItemMessage(hwndDlg,i,BUTTONADDTOOLTIP,(WPARAM)LPGENT("Copy BBCode w/ link"),BATF_TCHAR); } } @@ -394,7 +394,7 @@ void CSend::Error(LPCTSTR pszFormat, ...) { memset(&m_box, 0, sizeof(MSGBOX)); m_box.cbSize = sizeof(MSGBOX); m_box.hParent = NULL; - m_box.hiLogo = Skin_GetIcon(ICO_COMMON_SSWINDOW1); + m_box.hiLogo = GetIcon(ICO_MAIN); m_box.hiMsg = NULL; m_box.ptszTitle = m_ErrorTitle; m_box.ptszMsg = m_ErrorMsg; diff --git a/plugins/SendScreenshotPlus/src/Main.cpp b/plugins/SendScreenshotPlus/src/Main.cpp index 565b9a88af..be7537d8eb 100644 --- a/plugins/SendScreenshotPlus/src/Main.cpp +++ b/plugins/SendScreenshotPlus/src/Main.cpp @@ -36,6 +36,32 @@ HANDLE g_hNetlibUser=0;//!< Netlib Register User FI_INTERFACE* FIP=NULL; int hLangpack;//Miranda NG langpack used by translate functions, filled by mir_getLP() +IconItem ICONS[]={ + {LPGEN("Main Icon"),"main",IDI_MAIN,32}, + {LPGEN("Main Icon"),"mainxs",IDI_MAIN}, + {LPGEN("Target Cursor"),"target",IDI_TARGET,32}, + {LPGEN("Target Desktop"),"monitor",IDI_MONITOR,32}, +}; +IconItem ICONS_BTN[]={ + {LPGEN("Help"),"help",IDI_HELP}, + {LPGEN("Open Folder"),"folder",IDI_FOLDER}, + {LPGEN("Description off"),"desk",IDI_DESK}, + {LPGEN("Description on"),"deskon",IDI_DESKON}, + {LPGEN("Delete off"),"del",IDI_DEL}, + {LPGEN("Delete on"),"delon",IDI_DELON}, + {LPGEN("Prev"),"arrowl",IDI_ARROWL}, + {LPGEN("Next"),"arrowr",IDI_ARROWR}, + {LPGEN("Update"),"update",IDI_UPDATE}, + {LPGEN("OK"),"ok",IDI_OK}, + {LPGEN("Cancel"),"cancel",IDI_CANCEL}, +// {LPGEN("Apply"),"apply",IDI_APPLY}, + {LPGEN("Edit"),"edit",IDI_EDIT}, + {LPGEN("Edit on"),"editon",IDI_EDITON}, + {LPGEN("Copy"),"copy",IDI_COPY}, + {LPGEN("BBC"),"bbc",IDI_BBC}, + {LPGEN("BBC link"),"bbclnk",IDI_BBC2}, + {LPGEN("Down arrow"),"downarrow",IDI_DOWNARROW}, +}; static HANDLE m_hFolderScreenshot=0; TCHAR* GetCustomPath() { @@ -236,7 +262,8 @@ DLL_EXPORT int Load(void) m_hookModulesLoaded=HookEvent(ME_SYSTEM_MODULESLOADED,hook_ModulesLoaded); m_hookSystemPreShutdown=HookEvent(ME_SYSTEM_PRESHUTDOWN,hook_SystemPreShutdown); /// icons - IcoLib_LoadModule(); + Icon_Register(g_hSendSS,SZ_SENDSS,ICONS,sizeof(ICONS)/sizeof(IconItem),SZ_SENDSS); + Icon_Register(g_hSendSS,SZ_SENDSS "/" LPGEN("Buttons"),ICONS_BTN,sizeof(ICONS_BTN)/sizeof(IconItem),SZ_SENDSS); /// services #define srv_reg(name) do{\ m_h##name=CreateServiceFunction(SZ_SENDSS "/" #name, service_##name);\ diff --git a/plugins/SendScreenshotPlus/src/UAboutForm.cpp b/plugins/SendScreenshotPlus/src/UAboutForm.cpp index 987b24c847..9cf6d42cd3 100644 --- a/plugins/SendScreenshotPlus/src/UAboutForm.cpp +++ b/plugins/SendScreenshotPlus/src/UAboutForm.cpp @@ -101,7 +101,7 @@ LRESULT TfrmAbout::wmInitdialog(WPARAM wParam, LPARAM lParam) { mir_free(pszPlug); mir_free(pszVer); SetDlgItemText( m_hWnd, IDC_HEADERBAR, newTitle ); - SendDlgItemMessage(m_hWnd, IDC_HEADERBAR, WM_SETICON, ICON_BIG, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW1,1)); + SendDlgItemMessage(m_hWnd, IDC_HEADERBAR, WM_SETICON, ICON_BIG, (LPARAM)GetIcon(ICO_MAIN)); //License { mir_tcsadd(pszTitle ,_T(__COPYRIGHT)); @@ -131,8 +131,8 @@ LRESULT TfrmAbout::wmInitdialog(WPARAM wParam, LPARAM lParam) { mir_freeAndNil(pszTitle); } - SendMessage(m_hWnd, WM_SETICON, ICON_BIG, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW1,1)); - SendMessage(m_hWnd, WM_SETICON, ICON_SMALL, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW2)); + SendMessage(m_hWnd, WM_SETICON, ICON_BIG, (LPARAM)GetIcon(ICO_MAIN)); + SendMessage(m_hWnd, WM_SETICON, ICON_SMALL, (LPARAM)GetIcon(ICO_MAINXS)); //init controls btnPageClick(); @@ -194,7 +194,7 @@ void TfrmAbout::btnPageClick() { ShowWindow(GetDlgItem(m_hWnd, IDC_CREDIT), SW_HIDE); ShowWindow(GetDlgItem(m_hWnd, IDC_LICENSE), SW_SHOW); SendDlgItemMessage(m_hWnd, IDA_CONTRIBLINK, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Credits >"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(ICO_COMMON_ARROWR); + HICON hIcon = GetIconBtn(ICO_BTN_ARROWR); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? TranslateT("Credits") : TranslateT("Credits >")); } @@ -202,7 +202,7 @@ void TfrmAbout::btnPageClick() { ShowWindow(GetDlgItem(m_hWnd, IDC_CREDIT), SW_SHOW); ShowWindow(GetDlgItem(m_hWnd, IDC_LICENSE), SW_HIDE); SendDlgItemMessage(m_hWnd, IDA_CONTRIBLINK, BUTTONADDTOOLTIP, (WPARAM)TranslateT("< Copyright"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(ICO_COMMON_ARROWL); + HICON hIcon = GetIconBtn(ICO_BTN_ARROWL); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? TranslateT("Copyright") : TranslateT("< Copyright")); } diff --git a/plugins/SendScreenshotPlus/src/UMainForm.cpp b/plugins/SendScreenshotPlus/src/UMainForm.cpp index eda4f7d95b..644316f4b2 100644 --- a/plugins/SendScreenshotPlus/src/UMainForm.cpp +++ b/plugins/SendScreenshotPlus/src/UMainForm.cpp @@ -47,14 +47,14 @@ INT_PTR CALLBACK TfrmMain::DlgProc_CaptureTabPage(HWND hDlg, UINT uMsg, WPARAM w case WM_INITDIALOG: switch(lParam){ case IDD_UMain_CaptureWindow: - Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), Skin_GetIcon(ICO_COMMON_SSTARGET)); + Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), GetIcon(ICO_TARGET)); SetDlgItemText(hDlg, ID_edtCaption, TranslateT("Drag&Drop the target on the desired window.")); break; case IDD_UMain_CaptureDesktop: - Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), Skin_GetIcon(ICO_COMMON_SSMONITOR)); + Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), GetIcon(ICO_MONITOR)); break; case IDD_UMain_CaptureFile: - Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), Skin_GetIcon(ICO_COMMON_SSWINDOW1)); + Static_SetIcon(GetDlgItem(hDlg, ID_imgTarget), GetIcon(ICO_MAIN)); break; } SetFocus(GetDlgItem(hDlg, ID_imgTarget)); @@ -168,8 +168,8 @@ INT_PTR CALLBACK TfrmMain::DlgTfrmMain(HWND hWnd, UINT msg, WPARAM wParam, LPARA void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { HWND hCtrl; /// Taskbar and Window icon - SendMessage(m_hWnd, WM_SETICON, ICON_BIG, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW1,1)); - SendMessage(m_hWnd, WM_SETICON, ICON_SMALL, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW2)); + SendMessage(m_hWnd, WM_SETICON, ICON_BIG, (LPARAM)GetIcon(ICO_MAIN)); + SendMessage(m_hWnd, WM_SETICON, ICON_SMALL, (LPARAM)GetIcon(ICO_MAINXS)); TCHAR* pt = mir_a2t(__PLUGIN_NAME); SetWindowText(m_hWnd, pt); mir_free(pt); @@ -185,7 +185,7 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { } mir_free(pt); - SendDlgItemMessage(m_hWnd, IDC_HEADERBAR, WM_SETICON, ICON_BIG, (LPARAM)Skin_GetIcon(ICO_COMMON_SSWINDOW1,1)); + SendDlgItemMessage(m_hWnd, IDC_HEADERBAR, WM_SETICON, ICON_BIG, (LPARAM)GetIcon(ICO_MAIN)); /// Timed controls CheckDlgButton(m_hWnd,ID_chkTimed, m_opt_chkTimed ? BST_CHECKED : BST_UNCHECKED); @@ -197,9 +197,9 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { if(!m_himlTab){ //m_himlTab = ImageList_Create(16, 16, PluginConfig.m_bIsXP ? ILC_COLOR32 | ILC_MASK : ILC_COLOR8 | ILC_MASK, 2, 0); m_himlTab = ImageList_Create(16, 16, ILC_COLOR32 | ILC_MASK, 2, 0); - ImageList_AddIcon(m_himlTab, Skin_GetIcon(ICO_COMMON_SSWINDOW2)); /// @note : use custom icon for each capture tab? -// ImageList_AddIcon(m_himlTab, Skin_GetIcon(ICO_COMMON_SSWINDOW2)); -// ImageList_AddIcon(m_himlTab, Skin_GetIcon(ICO_COMMON_SSWINDOW2)); + ImageList_AddIcon(m_himlTab, GetIcon(ICO_MAINXS)); /// @note : use custom icon for each capture tab? +// ImageList_AddIcon(m_himlTab, GetIcon(ICO_MAINXS)); +// ImageList_AddIcon(m_himlTab, GetIcon(ICO_MAINXS)); } /// create the tab control. @@ -325,21 +325,21 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { if (hCtrl = GetDlgItem(m_hWnd, ID_btnAbout)) { SendDlgItemMessage(m_hWnd, ID_btnAbout, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Information"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(ICO_COMMON_SSHELP); + HICON hIcon = GetIconBtn(ICO_BTN_HELP); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? _T("") : _T("?")); } if (hCtrl = GetDlgItem(m_hWnd, ID_btnExplore)) { SendDlgItemMessage(m_hWnd, ID_btnExplore, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Open Folder"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(ICO_COMMON_SSFOLDERO); + HICON hIcon = GetIconBtn(ICO_BTN_FOLDER); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? _T("") : _T("...")); } if (hCtrl = GetDlgItem(m_hWnd, ID_btnDesc)) { SendDlgItemMessage(m_hWnd, ID_btnDesc, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Fill description textbox."), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(m_opt_btnDesc ? ICO_COMMON_SSDESKON : ICO_COMMON_SSDESKOFF); + HICON hIcon = GetIconBtn(m_opt_btnDesc ? ICO_BTN_DESKON : ICO_BTN_DESK); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? _T("") : _T("D")); SendMessage(hCtrl, BM_SETCHECK, m_opt_btnDesc ? BST_CHECKED : BST_UNCHECKED, NULL); @@ -347,7 +347,7 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { if (hCtrl = GetDlgItem(m_hWnd, ID_btnDeleteAfterSend)) { SendDlgItemMessage(m_hWnd, ID_btnDeleteAfterSend, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Delete after send"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(m_opt_btnDeleteAfterSend ? ICO_COMMON_SSDELON : ICO_COMMON_SSDELOFF); + HICON hIcon = GetIconBtn(m_opt_btnDeleteAfterSend ? ICO_BTN_DELON : ICO_BTN_DEL); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? _T("") : _T("X")); SendMessage(hCtrl, BM_SETCHECK, m_opt_btnDeleteAfterSend ? BST_CHECKED : BST_UNCHECKED, NULL); @@ -355,7 +355,7 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { if (hCtrl = GetDlgItem(m_hWnd, ID_chkEditor)) { SendDlgItemMessage(m_hWnd, ID_chkEditor, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Open editor before sending"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(m_opt_chkEditor ? ICO_BTN_EDITON : ICO_BTN_EDIT); + HICON hIcon = GetIconBtn(m_opt_chkEditor ? ICO_BTN_EDITON : ICO_BTN_EDIT); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, hIcon ? _T("") : _T("E")); SendMessage(hCtrl, BM_SETCHECK, m_opt_chkEditor ? BST_CHECKED : BST_UNCHECKED, NULL); @@ -363,7 +363,7 @@ void TfrmMain::wmInitdialog(WPARAM wParam, LPARAM lParam) { if (hCtrl = GetDlgItem(m_hWnd, ID_btnCapture)) { SendDlgItemMessage(m_hWnd, ID_btnCapture, BUTTONADDTOOLTIP, (WPARAM)TranslateT("Capture"), MBBF_TCHAR); - HICON hIcon = Skin_GetIcon(ICO_BTN_OK); + HICON hIcon = GetIconBtn(ICO_BTN_OK); SendMessage(hCtrl, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); SetWindowText(hCtrl, TranslateT("&Capture")); SendMessage(hCtrl, BUTTONSETDEFAULT, 1, NULL); @@ -408,19 +408,19 @@ void TfrmMain::wmCommand(WPARAM wParam, LPARAM lParam) { break; case ID_btnDesc:{ m_opt_btnDesc=!m_opt_btnDesc; - HICON hIcon = Skin_GetIcon(m_opt_btnDesc ? ICO_COMMON_SSDESKON : ICO_COMMON_SSDESKOFF); - SendMessage((HWND)lParam, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); + HICON hIcon=GetIconBtn(m_opt_btnDesc?ICO_BTN_DESKON:ICO_BTN_DESK); + SendMessage((HWND)lParam,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon); break;} case ID_btnDeleteAfterSend:{ m_opt_btnDeleteAfterSend = (m_opt_btnDeleteAfterSend == 0); - HICON hIcon = Skin_GetIcon(m_opt_btnDeleteAfterSend ? ICO_COMMON_SSDELON : ICO_COMMON_SSDELOFF); - SendMessage((HWND)lParam, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); - if(m_cSend) m_cSend->m_bDeleteAfterSend = m_opt_btnDeleteAfterSend; + HICON hIcon=GetIconBtn(m_opt_btnDeleteAfterSend?ICO_BTN_DELON:ICO_BTN_DEL); + SendMessage((HWND)lParam,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon); + if(m_cSend) m_cSend->m_bDeleteAfterSend=m_opt_btnDeleteAfterSend; break;} case ID_chkEditor:{ m_opt_chkEditor = Button_GetCheck((HWND)lParam); - HICON hIcon = Skin_GetIcon(m_opt_chkEditor ? ICO_BTN_EDITON : ICO_BTN_EDIT); - SendMessage((HWND)lParam, BM_SETIMAGE, IMAGE_ICON, (LPARAM)hIcon); + HICON hIcon=GetIconBtn(m_opt_chkEditor?ICO_BTN_EDITON:ICO_BTN_EDIT); + SendMessage((HWND)lParam,BM_SETIMAGE,IMAGE_ICON,(LPARAM)hIcon); break;} case ID_chkOpenAgain: m_opt_chkOpenAgain = Button_GetCheck((HWND)lParam); @@ -511,7 +511,7 @@ void TfrmMain::wmTimer(WPARAM wParam, LPARAM lParam){ m_hTargetHighlighter=CreateWindowEx(WS_EX_LAYERED|WS_EX_TRANSPARENT|WS_EX_TOOLWINDOW,(TCHAR*)g_clsTargetHighlighter,NULL,WS_POPUP,0,0,0,0,NULL,NULL,g_hSendSS,NULL); if(!m_hTargetHighlighter) return; SetLayeredWindowAttributes(m_hTargetHighlighter,0,123,LWA_ALPHA); - SetSystemCursor(CopyCursor(Skin_GetIcon(ICO_COMMON_SSTARGET)),OCR_NORMAL); + SetSystemCursor(CopyCursor(GetIcon(ICO_TARGET)),OCR_NORMAL); Hide(); } if(!(GetAsyncKeyState(primarymouse)&0x8000)){ @@ -865,12 +865,12 @@ void TfrmMain::cboxSendByChange() { m_cSend->m_bDeleteAfterSend = m_opt_btnDeleteAfterSend; } bState = (itemFlag & SS_DLG_DELETEAFTERSSEND); - hIcon = Skin_GetIcon(m_opt_btnDeleteAfterSend ? ICO_COMMON_SSDELON : ICO_COMMON_SSDELOFF); + hIcon = GetIconBtn(m_opt_btnDeleteAfterSend ? ICO_BTN_DELON : ICO_BTN_DEL); SendDlgItemMessage(m_hWnd, ID_btnDeleteAfterSend, BM_SETIMAGE, IMAGE_ICON, (LPARAM)(bState ? hIcon : 0)); Button_Enable(GetDlgItem(m_hWnd, ID_btnDeleteAfterSend), bState); bState = (itemFlag & SS_DLG_DESCRIPTION); - hIcon = Skin_GetIcon(m_opt_btnDesc ? ICO_COMMON_SSDESKON : ICO_COMMON_SSDESKOFF); + hIcon = GetIconBtn(m_opt_btnDesc ? ICO_BTN_DESKON : ICO_BTN_DESK); SendDlgItemMessage(m_hWnd, ID_btnDesc, BM_SETIMAGE, IMAGE_ICON, (LPARAM)(bState ? hIcon : 0)); Button_Enable(GetDlgItem(m_hWnd, ID_btnDesc), bState); } diff --git a/plugins/SendScreenshotPlus/src/ctrl_button.cpp b/plugins/SendScreenshotPlus/src/ctrl_button.cpp index eff1b3f963..6f83eb5180 100644 --- a/plugins/SendScreenshotPlus/src/ctrl_button.cpp +++ b/plugins/SendScreenshotPlus/src/ctrl_button.cpp @@ -371,7 +371,7 @@ static LRESULT CALLBACK Button_WndProc(HWND hwndBtn, UINT uMsg, WPARAM wParam, L bct->hFont = (HFONT)GetStockObject(DEFAULT_GUI_FONT); bct->dwStyle = cs->style; if (cs->style & MBS_DOWNARROW) - bct->arrow = Skin_GetIcon(ICO_BTN_DOWNARROW); + bct->arrow = GetIconBtn(ICO_BTN_DOWNARROW); LoadTheme(bct); SetWindowLongPtr(hwndBtn, 0, (LONG_PTR)bct); if (cs->lpszName) SetWindowText(hwndBtn, cs->lpszName); diff --git a/plugins/SendScreenshotPlus/src/dlg_msgbox.cpp b/plugins/SendScreenshotPlus/src/dlg_msgbox.cpp index 65df1437a5..702550ad66 100644 --- a/plugins/SendScreenshotPlus/src/dlg_msgbox.cpp +++ b/plugins/SendScreenshotPlus/src/dlg_msgbox.cpp @@ -108,53 +108,53 @@ static void MakePopupAction(POPUPACTION &pa, int id) switch (id) { case IDOK: - pa.lchIcon = Skin_GetIcon(ICO_BTN_OK); + pa.lchIcon = GetIconBtn(ICO_BTN_OK); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Ok"); break; case IDCLOSE: case IDCANCEL: - pa.lchIcon = Skin_GetIcon(ICO_BTN_CANCEL); + pa.lchIcon = GetIconBtn(ICO_BTN_CANCEL); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Cancel"); break; case IDABORT: - pa.lchIcon = Skin_GetIcon(ICO_BTN_CANCEL); + pa.lchIcon = GetIconBtn(ICO_BTN_CANCEL); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Abort"); break; case IDRETRY: - pa.lchIcon = Skin_GetIcon(ICO_BTN_UPDATE); + pa.lchIcon = GetIconBtn(ICO_BTN_UPDATE); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Retry"); break; case IDIGNORE: - pa.lchIcon = Skin_GetIcon(ICO_BTN_OK); + pa.lchIcon = GetIconBtn(ICO_BTN_OK); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Ignore"); break; case IDYES: - pa.lchIcon = Skin_GetIcon(ICO_BTN_OK); + pa.lchIcon = GetIconBtn(ICO_BTN_OK); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Yes"); break; case IDNO: - pa.lchIcon = Skin_GetIcon(ICO_BTN_CANCEL); + pa.lchIcon = GetIconBtn(ICO_BTN_CANCEL); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/No"); break; case IDHELP: - pa.lchIcon = Skin_GetIcon(ICO_BTN_CANCEL); + pa.lchIcon = GetIconBtn(ICO_BTN_CANCEL); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/Help"); break; case IDALL: - pa.lchIcon = Skin_GetIcon(ICO_BTN_OK); + pa.lchIcon = GetIconBtn(ICO_BTN_OK); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/All"); break; case IDNONE: - pa.lchIcon = Skin_GetIcon(ICO_BTN_CANCEL); + pa.lchIcon = GetIconBtn(ICO_BTN_CANCEL); mir_strcpy(pa.lpzTitle, SZ_SENDSS"/None"); } } @@ -198,8 +198,9 @@ static INT_PTR CALLBACK MsgBoxProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM l SendDlgItemMessage(hDlg, TXT_NAME, WM_SETFONT, (WPARAM)hNormalFont, 0); // set infobar's logo icon - SendDlgItemMessage(hDlg, ICO_DLGLOGO, STM_SETIMAGE, IMAGE_ICON, - (LPARAM)((pMsgBox->hiLogo) ? pMsgBox->hiLogo : Skin_GetIcon(ICO_DLG_DETAILS,1))); +// @fixme (White-Tiger#1#): fix details icon +// SendDlgItemMessage(hDlg, ICO_DLGLOGO, STM_SETIMAGE, IMAGE_ICON, +// (LPARAM)((pMsgBox->hiLogo) ? pMsgBox->hiLogo : Skin_GetIcon(ICO_DLG_DETAILS,1))); // anable headerbar ShowWindow(GetDlgItem(hDlg, TXT_NAME), SW_SHOW); @@ -656,7 +657,7 @@ INT_PTR CALLBACK MsgBox(HWND hParent, UINT uType, LPCTSTR pszTitle, LPCTSTR pszI MSGBOX mb = {0}; mb.cbSize = sizeof(MSGBOX); mb.hParent = hParent; - mb.hiLogo = Skin_GetIcon(ICO_COMMON_SSWINDOW1); + mb.hiLogo = GetIcon(ICO_MAIN); mb.hiMsg = NULL; mb.ptszTitle = TranslateTS(pszTitle); mb.ptszInfoText = TranslateTS(pszInfo); @@ -684,7 +685,7 @@ INT_PTR CALLBACK MsgErr(HWND hParent, LPCTSTR pszFormat, ...) MSGBOX mb = {0}; mb.cbSize = sizeof(MSGBOX); mb.hParent = hParent; - mb.hiLogo = Skin_GetIcon(ICO_COMMON_SSWINDOW1); + mb.hiLogo = GetIcon(ICO_MAIN); mb.hiMsg = NULL; mb.ptszTitle = tszTitle; mb.ptszMsg = tszMsg; diff --git a/plugins/SendScreenshotPlus/src/global.h b/plugins/SendScreenshotPlus/src/global.h index 780184080d..1eff333a91 100644 --- a/plugins/SendScreenshotPlus/src/global.h +++ b/plugins/SendScreenshotPlus/src/global.h @@ -78,7 +78,6 @@ using namespace std; #include <m_dropbox.h> #include "mir_string.h" -#include "mir_icolib.h" #include "ctrl_button.h" #include "dlg_msgbox.h" #include "resource.h" @@ -125,6 +124,40 @@ extern HINSTANCE g_hSendSS; extern MGLOBAL g_myGlobals; extern HANDLE g_hNetlibUser; + +enum{ + ICO_MAIN=0, + ICO_MAINXS, + ICO_TARGET, + ICO_MONITOR, + ICO_END_, + ICO_BTN_HELP=0, + ICO_BTN_FOLDER, + ICO_BTN_DESK, + ICO_BTN_DESKON, + ICO_BTN_DEL, + ICO_BTN_DELON, + ICO_BTN_ARROWL, + ICO_BTN_ARROWR, + ICO_BTN_UPDATE, + ICO_BTN_OK, + ICO_BTN_CANCEL, +// ICO_BTN_APPLY, + ICO_BTN_EDIT, + ICO_BTN_EDITON, + ICO_BTN_COPY, + ICO_BTN_BBC, + ICO_BTN_BBCLNK, + ICO_BTN_DOWNARROW, + ICO_BTN_END_, +}; +#define GetIconHandle(ico) ICONS[ico].hIcolib +#define GetIcon(ico) Skin_GetIconByHandle(GetIconHandle(ico)) +extern IconItem ICONS[ICO_END_]; +#define GetIconBtnHandle(ico) ICONS_BTN[ico].hIcolib +#define GetIconBtn(ico) Skin_GetIconByHandle(GetIconBtnHandle(ico)) +extern IconItem ICONS_BTN[ICO_BTN_END_]; + #define PtrIsValid(p) (((p)!=0)&&(((HANDLE)(p))!=INVALID_HANDLE_VALUE)) #define MIR_FREE(p) {if (PtrIsValid(p)){mir_free((void*)p);(p)=NULL;}} #ifdef _DEBUG diff --git a/plugins/SendScreenshotPlus/src/mir_icolib.cpp b/plugins/SendScreenshotPlus/src/mir_icolib.cpp deleted file mode 100644 index fd07d32e69..0000000000 --- a/plugins/SendScreenshotPlus/src/mir_icolib.cpp +++ /dev/null @@ -1,151 +0,0 @@ -/* -Miranda NG: the free IM client for Microsoft* Windows* - -Copyright (c) 2012-14 Miranda NG project (http://miranda-ng.org), -Copyright (c) 2000-09 Miranda ICQ/IM project, -all portions of this codebase are copyrighted to the people -listed in contributors.txt. - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -of the License, or (at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -this file is taken from UserinfoEx plugin and support UserinfoEx icon pack !!!! - -*/ - -#include "global.h" - -typedef struct _ICODESC -{ - LPSTR pszName; - LPSTR pszDesc; - LPSTR pszSection; - WORD idResource; - BYTE size; -} ICODESC; - -HICON ghDefIcon = NULL; - -//IDI_MAIN must be the first icon from Plugin.dll, all other icon must be IDI_MAIN+n - -static ICODESC icoDesc[] = -{ - // common - { ICO_COMMON_SSWINDOW1, LPGEN("Screenshot Icon1"), SECT_COMMON, IDI_MAIN, 1 }, - { ICO_COMMON_SSWINDOW2, LPGEN("Screenshot Icon2"), SECT_COMMON, IDI_MAIN, 0 }, - { ICO_COMMON_SSTARGET, LPGEN("Target Cursor"), SECT_COMMON, IDI_TARGET, 1 }, - { ICO_COMMON_SSMONITOR, LPGEN("Target Desktop"), SECT_COMMON, IDI_MONITOR, 1 }, - //{ ICO_COMMON_SSDEFAULT, LPGEN("Default"), SECT_COMMON, IDI_DEFAULT, 0 }, - // overlays -// { ICO_BTN_OVERLAYON, LPGEN("Overlay on"), SECT_OVERLAY, IDI_OVERLAYON, 0 }, -// { ICO_BTN_OVERLAYOFF, LPGEN("Overlay off"), SECT_OVERLAY, IDI_OVERLAYOFF, 0 }, - // button icons - { ICO_COMMON_SSHELP, LPGEN("Help"), SECT_BUTTONS, IDI_HELP, 0 }, - { ICO_COMMON_SSFOLDERO, LPGEN("Open Folder"), SECT_BUTTONS, IDI_FOLDERO, 0 }, - { ICO_COMMON_SSDESKOFF, LPGEN("Description off"), SECT_BUTTONS, IDI_DESKOFF, 0 }, - { ICO_COMMON_SSDESKON, LPGEN("Description on"), SECT_BUTTONS, IDI_DESKON, 0 }, - { ICO_COMMON_SSDELOFF, LPGEN("Delete off"), SECT_BUTTONS, IDI_DELOFF, 0 }, - { ICO_COMMON_SSDELON, LPGEN("Delete on"), SECT_BUTTONS, IDI_DELON, 0 }, - { ICO_COMMON_ARROWL, LPGEN("Prev"), SECT_BUTTONS, IDI_ARROWL, 0 }, - { ICO_COMMON_ARROWR, LPGEN("Next"), SECT_BUTTONS, IDI_ARROWR, 0 }, - { ICO_BTN_UPDATE, LPGEN("Update"), SECT_BUTTONS, IDI_UPDATE, 0 }, - { ICO_BTN_OK, LPGEN("OK"), SECT_BUTTONS, IDI_OK, 0 }, - { ICO_BTN_CANCEL, LPGEN("Cancel"), SECT_BUTTONS, IDI_CLOSE, 0 }, -// { ICO_BTN_APPLY, LPGEN("Apply"), SECT_BUTTONS, IDI_APPLY, 0 }, - { ICO_BTN_EDIT, LPGEN("Edit"), SECT_BUTTONS, IDI_EDIT, 0 }, - { ICO_BTN_EDITON, LPGEN("Edit on"), SECT_BUTTONS, IDI_EDITON, 0 }, - { ICO_BTN_COPY, LPGEN("Copy"), SECT_BUTTONS, IDI_COPY, 0 }, - { ICO_BTN_BBC, LPGEN("BBC"), SECT_BUTTONS, IDI_BBC, 0 }, - { ICO_BTN_BBC2, LPGEN("BBC link"), SECT_BUTTONS, IDI_BBC2, 0 }, - { ICO_BTN_DOWNARROW, LPGEN("Down arrow"), SECT_BUTTONS, IDI_DOWNARROW, 0 }, -}; - -/** - * This function manually registers a single icon from the default icon library. - * - * @param szIconID - This is the uniquely identifying string for an icon. - * This string is the setting name in the database and should - * only use ASCII characters. - * @param szDescription - This is the description displayed in the options dialog. - * @param szSection - This is the subsection, where the icon is organized in the options dialog. - * @param szDefaultFile - This is the validated path to the default icon file. - * @param idIcon - This is the ResourceID of the icon in the default file. - * @param Size - This is the desired size of the icon to load. - * 0: default size for small icons (16x16) - * 1: default size for normal icons (32x32) - * @param hDefIcon - This is the default icon to use if the default icon - * file does not exist and no custom icon is set up in the config. - * - * @return This function returns the HANDLE of the icon item. - **/ -static HANDLE IcoLib_RegisterIconHandleEx(LPSTR szIconID, LPSTR szDescription, LPSTR szSection, LPTSTR szDefaultFile, int idIcon, int Size) -{ - HANDLE hIconHandle = NULL; - - if (szIconID && szDescription && szSection) { - SKINICONDESC sid = { sizeof(sid) }; - sid.flags = SIDF_ALL_TCHAR; - sid.pszName = szIconID; - sid.ptszDescription = mir_a2t(szDescription); - sid.ptszSection = mir_a2t(szSection); - - if (sid.ptszDescription && sid.ptszSection) { - switch (Size) { - // small icons (16x16) - case 0: - sid.cx = GetSystemMetrics(SM_CXSMICON); - sid.cy = GetSystemMetrics(SM_CYSMICON); - break; - - // normal icons (32x32) - case 1: - sid.cx = GetSystemMetrics(SM_CXICON); - sid.cy = GetSystemMetrics(SM_CYICON); - break; - - // custom icon size - default: - sid.cx = sid.cy = Size; - break; - } - - sid.ptszDefaultFile = szDefaultFile; - sid.iDefaultIndex = -idIcon; - hIconHandle = Skin_AddIcon(&sid); - } - MIR_FREE(sid.ptszDescription); - MIR_FREE(sid.ptszSection); - } - return hIconHandle; -} - -/** - * Add default icons to the skin library or load customized icons - * - * @param none - * - * @return nothing - **/ - -//static IconItem main = { LPGEN("Main"), ICO_COMMON_MAIN, IDI_MAIN }; - -void IcoLib_LoadModule() -{ - LPTSTR szDefaultFile = _T("Plugins\\")_T(__FILENAME); - - for (int i = 0; i < SIZEOF(icoDesc); i++) - IcoLib_RegisterIconHandleEx( - icoDesc[i].pszName, icoDesc[i].pszDesc, icoDesc[i].pszSection, - szDefaultFile, icoDesc[i].idResource, icoDesc[i].size); -} diff --git a/plugins/SendScreenshotPlus/src/mir_icolib.h b/plugins/SendScreenshotPlus/src/mir_icolib.h deleted file mode 100644 index 883b78350e..0000000000 --- a/plugins/SendScreenshotPlus/src/mir_icolib.h +++ /dev/null @@ -1,64 +0,0 @@ -/* -Miranda NG: the free IM client for Microsoft* Windows* - -Copyright (c) 2012-14 Miranda NG project (http://miranda-ng.org), -Copyright (c) 2000-09 Miranda ICQ/IM project, -all portions of this codebase are copyrighted to the people -listed in contributors.txt. - -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License -as published by the Free Software Foundation; either version 2 -of the License, or (at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -*/ - -#ifndef _UINFOEX_ICONS_H_INCLUDED_ -#define _UINFOEX_ICONS_H_INCLUDED_ 1 - -// sections -#define SECT_COMMON SZ_SENDSS -#define SECT_BUTTONS SZ_SENDSS"/"LPGEN("Buttons") -#define SECT_OVERLAY SZ_SENDSS"/"LPGEN("Overlays") - -// icons -#define ICO_COMMON_SSWINDOW1 SZ_SENDSS"_plug_SSwindow1" -#define ICO_COMMON_SSWINDOW2 SZ_SENDSS"_plug_SSwindow2" -#define ICO_COMMON_SSMONITOR SZ_SENDSS"_plug_SSmonitor" -#define ICO_COMMON_SSDEFAULT SZ_SENDSS"_plug_SSdefault" -#define ICO_COMMON_SSTARGET SZ_SENDSS"_plug_SSTarget" -#define ICO_COMMON_SSHELP SZ_SENDSS"_plug_SSHelp" -#define ICO_COMMON_SSFOLDERO SZ_SENDSS"_plug_SSFolderOpen" -#define ICO_COMMON_ARROWL SZ_SENDSS"_plug_SSArrowL" -#define ICO_COMMON_ARROWR SZ_SENDSS"_plug_SSArrowR" -#define ICO_COMMON_SSDESKOFF SZ_SENDSS"_plug_SSDeskOff" -#define ICO_COMMON_SSDESKON SZ_SENDSS"_plug_SSDeskOn" -#define ICO_COMMON_SSDELOFF SZ_SENDSS"_plug_SSDelOff" -#define ICO_COMMON_SSDELON SZ_SENDSS"_plug_SSDelOn" -#define ICO_DLG_DETAILS SZ_SENDSS"_dlg_details" -#define ICO_BTN_UPDATE SZ_SENDSS"_plug_update" -#define ICO_BTN_OK SZ_SENDSS"_plug_ok" -#define ICO_BTN_CANCEL SZ_SENDSS"_plug_cancel" -//#define ICO_BTN_APPLY SZ_SENDSS"_plug_apply" -#define ICO_BTN_EDIT SZ_SENDSS"_plug_edit" -#define ICO_BTN_EDITON SZ_SENDSS"_plug_editOn" -#define ICO_BTN_COPY SZ_SENDSS"_plug_copy" -#define ICO_BTN_BBC SZ_SENDSS"_plug_bbc" -#define ICO_BTN_BBC2 SZ_SENDSS"_plug_bbclnk" -#define ICO_BTN_DOWNARROW SZ_SENDSS"_plug_downarrow" - -//#define ICO_BTN_OVERLAYOFF SZ_SENDSS"_plug_SSOverlayOff" -//#define ICO_BTN_OVERLAYON SZ_SENDSS"_plug_SSOverlayOn" - - -void IcoLib_LoadModule(); - -#endif /* _UINFOEX_ICONS_H_INCLUDED_ */ diff --git a/plugins/SendScreenshotPlus/src/resource.h b/plugins/SendScreenshotPlus/src/resource.h index b2ba2ef4c5..a09b825c01 100644 --- a/plugins/SendScreenshotPlus/src/resource.h +++ b/plugins/SendScreenshotPlus/src/resource.h @@ -29,22 +29,21 @@ #define IDR_LICENSE 120 #define IDR_CREDIT 121 #define IDI_MAIN 190 -//#define IDI_DEFAULT 191 -#define IDI_TARGET 192 -#define IDI_MONITOR 193 -#define IDI_HELP 194 -#define IDI_FOLDERO 195 -#define IDI_ARROWL 196 -#define IDI_ARROWR 197 +#define IDI_TARGET 191 +#define IDI_MONITOR 192 +#define IDI_HELP 193 +#define IDI_FOLDER 194 +#define IDI_ARROWL 195 +#define IDI_ARROWR 196 //#define IDI_OVERLAYON 198 //#define IDI_OVERLAYOFF 199 -#define IDI_DESKOFF 200 +#define IDI_DESK 200 #define IDI_DESKON 201 -#define IDI_DELOFF 202 +#define IDI_DEL 202 #define IDI_DELON 203 #define IDI_UPDATE 204 #define IDI_OK 205 -#define IDI_CLOSE 206 +#define IDI_CANCEL 206 //#define IDI_APPLY 207 #define IDI_EDIT 207 #define IDI_EDITON 208 |