Add new toolbar icons (Fluent UI)
1. Remove obsolete icon set. 2. Add both Fluent UI & Filled Fluent UI icon sets. 3. Refactoring toolbar code Fix #9742, close #9808
|
@ -146,7 +146,7 @@ enum Platform { PF_UNKNOWN, PF_X86, PF_X64, PF_IA64 };
|
|||
//void WM_PIMENU_CHECK(UINT funcItem[X]._cmdID, TRUE/FALSE)
|
||||
|
||||
#define NPPM_ADDTOOLBARICON (NPPMSG + 41)
|
||||
//void WM_ADDTOOLBARICON(UINT funcItem[X]._cmdID, toolbarIcons icon)
|
||||
//void NPPM_ADDTOOLBARICON(UINT funcItem[X]._cmdID, toolbarIcons icon)
|
||||
struct toolbarIcons {
|
||||
HBITMAP hToolbarBmp;
|
||||
HICON hToolbarIcon;
|
||||
|
@ -485,7 +485,7 @@ enum Platform { PF_UNKNOWN, PF_X86, PF_X64, PF_IA64 };
|
|||
//scnNotification->nmhdr.idFrom = 0;
|
||||
|
||||
#define NPPN_TBMODIFICATION (NPPN_FIRST + 2) // To notify plugins that toolbar icons can be registered
|
||||
//scnNotification->nmhdr.code = NPPN_TB_MODIFICATION;
|
||||
//scnNotification->nmhdr.code = NPPN_TBMODIFICATION;
|
||||
//scnNotification->nmhdr.hwndFrom = hwndNpp;
|
||||
//scnNotification->nmhdr.idFrom = 0;
|
||||
|
||||
|
|
|
@ -52,74 +52,72 @@ int docTabIconIDs_alt[] = { IDI_SAVED_ALT_ICON, IDI_UNSAVED_ALT_ICON, IDI_READON
|
|||
|
||||
|
||||
ToolBarButtonUnit toolBarIcons[] = {
|
||||
{IDM_FILE_NEW, IDI_NEW_OFF_ICON, IDI_NEW_ON_ICON, IDI_NEW_OFF_ICON, IDR_FILENEW},
|
||||
{IDM_FILE_OPEN, IDI_OPEN_OFF_ICON, IDI_OPEN_ON_ICON, IDI_OPEN_OFF_ICON, IDR_FILEOPEN},
|
||||
{IDM_FILE_SAVE, IDI_SAVE_OFF_ICON, IDI_SAVE_ON_ICON, IDI_SAVE_DISABLE_ICON, IDR_FILESAVE},
|
||||
{IDM_FILE_SAVEALL, IDI_SAVEALL_OFF_ICON, IDI_SAVEALL_ON_ICON, IDI_SAVEALL_DISABLE_ICON, IDR_SAVEALL},
|
||||
{IDM_FILE_CLOSE, IDI_CLOSE_OFF_ICON, IDI_CLOSE_ON_ICON, IDI_CLOSE_OFF_ICON, IDR_CLOSEFILE},
|
||||
{IDM_FILE_CLOSEALL, IDI_CLOSEALL_OFF_ICON, IDI_CLOSEALL_ON_ICON, IDI_CLOSEALL_OFF_ICON, IDR_CLOSEALL},
|
||||
{IDM_FILE_PRINT, IDI_PRINT_OFF_ICON, IDI_PRINT_ON_ICON, IDI_PRINT_OFF_ICON, IDR_PRINT},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_EDIT_CUT, IDI_CUT_OFF_ICON, IDI_CUT_ON_ICON, IDI_CUT_DISABLE_ICON, IDR_CUT},
|
||||
{IDM_EDIT_COPY, IDI_COPY_OFF_ICON, IDI_COPY_ON_ICON, IDI_COPY_DISABLE_ICON, IDR_COPY},
|
||||
{IDM_EDIT_PASTE, IDI_PASTE_OFF_ICON, IDI_PASTE_ON_ICON, IDI_PASTE_DISABLE_ICON, IDR_PASTE},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_EDIT_UNDO, IDI_UNDO_OFF_ICON, IDI_UNDO_ON_ICON, IDI_UNDO_DISABLE_ICON, IDR_UNDO},
|
||||
{IDM_EDIT_REDO, IDI_REDO_OFF_ICON, IDI_REDO_ON_ICON, IDI_REDO_DISABLE_ICON, IDR_REDO},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_SEARCH_FIND, IDI_FIND_OFF_ICON, IDI_FIND_ON_ICON, IDI_FIND_OFF_ICON, IDR_FIND},
|
||||
{IDM_SEARCH_REPLACE, IDI_REPLACE_OFF_ICON, IDI_REPLACE_ON_ICON, IDI_REPLACE_OFF_ICON, IDR_REPLACE},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_ZOOMIN, IDI_ZOOMIN_OFF_ICON, IDI_ZOOMIN_ON_ICON, IDI_ZOOMIN_OFF_ICON, IDR_ZOOMIN},
|
||||
{IDM_VIEW_ZOOMOUT, IDI_ZOOMOUT_OFF_ICON, IDI_ZOOMOUT_ON_ICON, IDI_ZOOMOUT_OFF_ICON, IDR_ZOOMOUT},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_SYNSCROLLV, IDI_SYNCV_OFF_ICON, IDI_SYNCV_ON_ICON, IDI_SYNCV_DISABLE_ICON, IDR_SYNCV},
|
||||
{IDM_VIEW_SYNSCROLLH, IDI_SYNCH_OFF_ICON, IDI_SYNCH_ON_ICON, IDI_SYNCH_DISABLE_ICON, IDR_SYNCH},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_WRAP, IDI_VIEW_WRAP_OFF_ICON, IDI_VIEW_WRAP_ON_ICON, IDI_VIEW_WRAP_OFF_ICON, IDR_WRAP},
|
||||
{IDM_VIEW_ALL_CHARACTERS, IDI_VIEW_ALL_CHAR_OFF_ICON, IDI_VIEW_ALL_CHAR_ON_ICON, IDI_VIEW_ALL_CHAR_OFF_ICON, IDR_INVISIBLECHAR},
|
||||
{IDM_VIEW_INDENT_GUIDE, IDI_VIEW_INDENT_OFF_ICON, IDI_VIEW_INDENT_ON_ICON, IDI_VIEW_INDENT_OFF_ICON, IDR_INDENTGUIDE},
|
||||
{IDM_LANG_USER_DLG, IDI_VIEW_UD_DLG_OFF_ICON, IDI_VIEW_UD_DLG_ON_ICON, IDI_VIEW_UD_DLG_OFF_ICON, IDR_SHOWPANNEL},
|
||||
{IDM_VIEW_DOC_MAP, IDI_VIEW_DOC_MAP_OFF_ICON, IDI_VIEW_DOC_MAP_ON_ICON, IDI_VIEW_DOC_MAP_OFF_ICON, IDR_DOCMAP},
|
||||
//{IDM_VIEW_FUNC_LIST, IDI_VIEW_UD_DLG_OFF_ICON, IDI_VIEW_UD_DLG_ON_ICON, IDI_VIEW_UD_DLG_OFF_ICON, IDR_FUNC_LIST},
|
||||
{IDM_VIEW_FUNC_LIST, IDI_VIEW_FUNCLIST_OFF_ICON, IDI_VIEW_FUNCLIST_ON_ICON, IDI_VIEW_FUNCLIST_OFF_ICON, IDR_FUNC_LIST},
|
||||
{IDM_VIEW_FILEBROWSER, IDI_VIEW_FILEBROWSER_OFF_ICON, IDI_VIEW_FILEBROWSER_ON_ICON, IDI_VIEW_FILEBROWSER_OFF_ICON, IDR_FILEBROWSER},
|
||||
{IDM_VIEW_MONITORING, IDI_VIEW_MONITORING_OFF_ICON, IDI_VIEW_MONITORING_ON_ICON, IDI_VIEW_MONITORING_OFF_ICON, IDR_FILEMONITORING},
|
||||
|
||||
//-------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_MACRO_STARTRECORDINGMACRO, IDI_STARTRECORD_OFF_ICON, IDI_STARTRECORD_ON_ICON, IDI_STARTRECORD_DISABLE_ICON, IDR_STARTRECORD},
|
||||
{IDM_MACRO_STOPRECORDINGMACRO, IDI_STOPRECORD_OFF_ICON, IDI_STOPRECORD_ON_ICON, IDI_STOPRECORD_DISABLE_ICON, IDR_STOPRECORD},
|
||||
{IDM_MACRO_PLAYBACKRECORDEDMACRO, IDI_PLAYRECORD_OFF_ICON, IDI_PLAYRECORD_ON_ICON, IDI_PLAYRECORD_DISABLE_ICON, IDR_PLAYRECORD},
|
||||
{IDM_MACRO_RUNMULTIMACRODLG, IDI_MMPLAY_OFF_ICON, IDI_MMPLAY_ON_ICON, IDI_MMPLAY_DIS_ICON, IDR_M_PLAYRECORD},
|
||||
{IDM_MACRO_SAVECURRENTMACRO, IDI_SAVERECORD_OFF_ICON, IDI_SAVERECORD_ON_ICON, IDI_SAVERECORD_DISABLE_ICON, IDR_SAVERECORD}
|
||||
{IDM_FILE_NEW, IDI_NEW_ICON, IDI_NEW_ICON, IDI_NEW_ICON2, IDI_NEW_ICON2, IDR_FILENEW},
|
||||
{IDM_FILE_OPEN, IDI_OPEN_ICON, IDI_OPEN_ICON, IDI_OPEN_ICON2, IDI_OPEN_ICON2, IDR_FILEOPEN},
|
||||
{IDM_FILE_SAVE, IDI_SAVE_ICON, IDI_SAVE_DISABLE_ICON, IDI_SAVE_ICON2, IDI_SAVE_DISABLE_ICON2, IDR_FILESAVE},
|
||||
{IDM_FILE_SAVEALL, IDI_SAVEALL_ICON, IDI_SAVEALL_DISABLE_ICON, IDI_SAVEALL_ICON2, IDI_SAVEALL_DISABLE_ICON2, IDR_SAVEALL},
|
||||
{IDM_FILE_CLOSE, IDI_CLOSE_ICON, IDI_CLOSE_ICON, IDI_CLOSE_ICON2, IDI_CLOSE_ICON2, IDR_CLOSEFILE},
|
||||
{IDM_FILE_CLOSEALL, IDI_CLOSEALL_ICON, IDI_CLOSEALL_ICON, IDI_CLOSEALL_ICON2, IDI_CLOSEALL_ICON2, IDR_CLOSEALL},
|
||||
{IDM_FILE_PRINT, IDI_PRINT_ICON, IDI_PRINT_ICON, IDI_PRINT_ICON2, IDI_PRINT_ICON2, IDR_PRINT},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_EDIT_CUT, IDI_CUT_ICON, IDI_CUT_DISABLE_ICON, IDI_CUT_ICON2, IDI_CUT_DISABLE_ICON2, IDR_CUT},
|
||||
{IDM_EDIT_COPY, IDI_COPY_ICON, IDI_COPY_DISABLE_ICON, IDI_COPY_ICON2, IDI_COPY_DISABLE_ICON2, IDR_COPY},
|
||||
{IDM_EDIT_PASTE, IDI_PASTE_ICON, IDI_PASTE_DISABLE_ICON, IDI_PASTE_ICON2, IDI_PASTE_DISABLE_ICON2, IDR_PASTE},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_EDIT_UNDO, IDI_UNDO_ICON, IDI_UNDO_DISABLE_ICON, IDI_UNDO_ICON2, IDI_UNDO_DISABLE_ICON2, IDR_UNDO},
|
||||
{IDM_EDIT_REDO, IDI_REDO_ICON, IDI_REDO_DISABLE_ICON, IDI_REDO_ICON2, IDI_REDO_DISABLE_ICON2, IDR_REDO},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_SEARCH_FIND, IDI_FIND_ICON, IDI_FIND_ICON, IDI_FIND_ICON2, IDI_FIND_ICON2, IDR_FIND},
|
||||
{IDM_SEARCH_REPLACE, IDI_REPLACE_ICON, IDI_REPLACE_ICON, IDI_REPLACE_ICON2, IDI_REPLACE_ICON2, IDR_REPLACE},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_ZOOMIN, IDI_ZOOMIN_ICON, IDI_ZOOMIN_ICON, IDI_ZOOMIN_ICON2, IDI_ZOOMIN_ICON2, IDR_ZOOMIN},
|
||||
{IDM_VIEW_ZOOMOUT, IDI_ZOOMOUT_ICON, IDI_ZOOMOUT_ICON, IDI_ZOOMOUT_ICON2, IDI_ZOOMOUT_ICON2, IDR_ZOOMOUT},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_SYNSCROLLV, IDI_SYNCV_ICON, IDI_SYNCV_DISABLE_ICON, IDI_SYNCV_ICON2, IDI_SYNCV_DISABLE_ICON2, IDR_SYNCV},
|
||||
{IDM_VIEW_SYNSCROLLH, IDI_SYNCH_ICON, IDI_SYNCH_DISABLE_ICON, IDI_SYNCH_ICON2, IDI_SYNCH_DISABLE_ICON2, IDR_SYNCH},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{IDM_VIEW_WRAP, IDI_VIEW_WRAP_ICON, IDI_VIEW_WRAP_ICON, IDI_VIEW_WRAP_ICON2, IDI_VIEW_WRAP_ICON2, IDR_WRAP},
|
||||
{IDM_VIEW_ALL_CHARACTERS, IDI_VIEW_ALL_CHAR_ICON, IDI_VIEW_ALL_CHAR_ICON, IDI_VIEW_ALL_CHAR_ICON2, IDI_VIEW_ALL_CHAR_ICON2, IDR_INVISIBLECHAR},
|
||||
{IDM_VIEW_INDENT_GUIDE, IDI_VIEW_INDENT_ICON, IDI_VIEW_INDENT_ICON, IDI_VIEW_INDENT_ICON2, IDI_VIEW_INDENT_ICON2, IDR_INDENTGUIDE},
|
||||
{IDM_LANG_USER_DLG, IDI_VIEW_UD_DLG_ICON, IDI_VIEW_UD_DLG_ICON, IDI_VIEW_UD_DLG_ICON2, IDI_VIEW_UD_DLG_ICON2, IDR_SHOWPANNEL},
|
||||
{IDM_VIEW_DOC_MAP, IDI_VIEW_DOC_MAP_ICON, IDI_VIEW_DOC_MAP_ICON, IDI_VIEW_DOC_MAP_ICON2, IDI_VIEW_DOC_MAP_ICON2, IDR_DOCMAP},
|
||||
{IDM_VIEW_FUNC_LIST, IDI_VIEW_FUNCLIST_ICON, IDI_VIEW_FUNCLIST_ICON, IDI_VIEW_FUNCLIST_ICON2, IDI_VIEW_FUNCLIST_ICON2, IDR_FUNC_LIST},
|
||||
{IDM_VIEW_FILEBROWSER, IDI_VIEW_FILEBROWSER_ICON, IDI_VIEW_FILEBROWSER_ICON, IDI_VIEW_FILEBROWSER_ICON2, IDI_VIEW_FILEBROWSER_ICON2, IDR_FILEBROWSER},
|
||||
{IDM_VIEW_MONITORING, IDI_VIEW_MONITORING_ICON, IDI_VIEW_MONITORING_ICON, IDI_VIEW_MONITORING_ICON2, IDI_VIEW_MONITORING_ICON2, IDR_FILEMONITORING},
|
||||
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
{0, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON, IDI_SEPARATOR_ICON},
|
||||
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------//
|
||||
|
||||
{IDM_MACRO_STARTRECORDINGMACRO, IDI_STARTRECORD_ICON, IDI_STARTRECORD_DISABLE_ICON, IDI_STARTRECORD_ICON2, IDI_STARTRECORD_DISABLE_ICON2, IDR_STARTRECORD},
|
||||
{IDM_MACRO_STOPRECORDINGMACRO, IDI_STOPRECORD_ICON, IDI_STOPRECORD_DISABLE_ICON, IDI_STOPRECORD_ICON2, IDI_STOPRECORD_DISABLE_ICON2, IDR_STOPRECORD},
|
||||
{IDM_MACRO_PLAYBACKRECORDEDMACRO, IDI_PLAYRECORD_ICON, IDI_PLAYRECORD_DISABLE_ICON, IDI_PLAYRECORD_ICON2, IDI_PLAYRECORD_DISABLE_ICON2, IDR_PLAYRECORD},
|
||||
{IDM_MACRO_RUNMULTIMACRODLG, IDI_MMPLAY_ICON, IDI_MMPLAY_DIS_ICON, IDI_MMPLAY_ICON2, IDI_MMPLAY_DIS_ICON2, IDR_M_PLAYRECORD},
|
||||
{IDM_MACRO_SAVECURRENTMACRO, IDI_SAVERECORD_ICON, IDI_SAVERECORD_DISABLE_ICON, IDI_SAVERECORD_ICON2, IDI_SAVERECORD_DISABLE_ICON2, IDR_SAVERECORD}
|
||||
};
|
||||
|
||||
|
||||
|
||||
|
||||
Notepad_plus::Notepad_plus()
|
||||
: _autoCompleteMain(&_mainEditView)
|
||||
, _autoCompleteSub(&_subEditView)
|
||||
|
|
|
@ -55,47 +55,40 @@ IDI_CHAMELEON ICON "icons/chameleon.ico"
|
|||
//IDI_JESUISCHARLIE ICON "icons/Je_suis_Charlie.ico"
|
||||
//IDI_GILETJAUNE ICON "icons/giletJaune.ico"
|
||||
//IDI_SAMESEXMARRIAGE ICON "icons/same-sexMarriageTaiwan.ico"
|
||||
IDI_NEW_OFF_ICON ICON "icons/new_off.ico"
|
||||
IDI_OPEN_OFF_ICON ICON "icons/open_off.ico"
|
||||
IDI_SAVE_OFF_ICON ICON "icons/save_off.ico"
|
||||
IDI_SAVEALL_OFF_ICON ICON "icons/saveall_off.ico"
|
||||
IDI_CLOSE_OFF_ICON ICON "icons/supp_off.ico"
|
||||
IDI_CLOSEALL_OFF_ICON ICON "icons/suppall_off.ico"
|
||||
IDI_CUT_OFF_ICON ICON "icons/cut_off.ico"
|
||||
IDI_COPY_OFF_ICON ICON "icons/dupli_off.ico"
|
||||
IDI_PASTE_OFF_ICON ICON "icons/paste_off.ico"
|
||||
IDI_UNDO_OFF_ICON ICON "icons/undo_off.ico"
|
||||
IDI_REDO_OFF_ICON ICON "icons/redo_off.ico"
|
||||
IDI_FIND_OFF_ICON ICON "icons/find_off.ico"
|
||||
IDI_REPLACE_OFF_ICON ICON "icons/findrep_off.ico"
|
||||
IDI_ZOOMIN_OFF_ICON ICON "icons/zoomIn_off.ico"
|
||||
IDI_ZOOMOUT_OFF_ICON ICON "icons/zoomOut_off.ico"
|
||||
IDI_VIEW_UD_DLG_OFF_ICON ICON "icons/userDefineDlg_off.ico"
|
||||
IDI_VIEW_ALL_CHAR_OFF_ICON ICON "icons/allChars_off.ico"
|
||||
IDI_VIEW_INDENT_OFF_ICON ICON "icons/indentGuide_off.ico"
|
||||
IDI_VIEW_WRAP_OFF_ICON ICON "icons/wrap_off.ico"
|
||||
IDI_PRINT_OFF_ICON ICON "icons/imprim_off.ico"
|
||||
IDI_NEW_ON_ICON ICON "icons/new_on.ico"
|
||||
IDI_OPEN_ON_ICON ICON "icons/open_on.ico"
|
||||
IDI_SAVE_ON_ICON ICON "icons/save_on.ico"
|
||||
IDI_SAVEALL_ON_ICON ICON "icons/saveall_on.ico"
|
||||
IDI_CLOSE_ON_ICON ICON "icons/supp_on.ico"
|
||||
IDI_CLOSEALL_ON_ICON ICON "icons/suppall_on.ico"
|
||||
IDI_CUT_ON_ICON ICON "icons/cut_on.ico"
|
||||
IDI_COPY_ON_ICON ICON "icons/dupli_on.ico"
|
||||
IDI_PASTE_ON_ICON ICON "icons/paste_on.ico"
|
||||
IDI_UNDO_ON_ICON ICON "icons/undo_on.ico"
|
||||
IDI_REDO_ON_ICON ICON "icons/redo_on.ico"
|
||||
IDI_FIND_ON_ICON ICON "icons/find_on.ico"
|
||||
IDI_REPLACE_ON_ICON ICON "icons/findrep_on.ico"
|
||||
IDI_ZOOMIN_ON_ICON ICON "icons/zoomIn_on.ico"
|
||||
IDI_ZOOMOUT_ON_ICON ICON "icons/zoomOut_on.ico"
|
||||
IDI_VIEW_UD_DLG_ON_ICON ICON "icons/userDefineDlg_on.ico"
|
||||
IDI_VIEW_ALL_CHAR_ON_ICON ICON "icons/allChars_on.ico"
|
||||
IDI_VIEW_INDENT_ON_ICON ICON "icons/indentGuide_on.ico"
|
||||
IDI_VIEW_WRAP_ON_ICON ICON "icons/wrap_on.ico"
|
||||
IDI_PRINT_ON_ICON ICON "icons/imprim_on.ico"
|
||||
|
||||
//
|
||||
// TOOLBAR ICO - set 1
|
||||
//
|
||||
IDI_NEW_ICON ICON "icons/new_off.ico"
|
||||
IDI_OPEN_ICON ICON "icons/open_off.ico"
|
||||
IDI_CLOSE_ICON ICON "icons/supp_off.ico"
|
||||
IDI_CLOSEALL_ICON ICON "icons/suppall_off.ico"
|
||||
IDI_SAVE_ICON ICON "icons/save_off.ico"
|
||||
IDI_SAVEALL_ICON ICON "icons/saveall_off.ico"
|
||||
IDI_CUT_ICON ICON "icons/cut_off.ico"
|
||||
IDI_COPY_ICON ICON "icons/dupli_off.ico"
|
||||
IDI_PASTE_ICON ICON "icons/paste_off.ico"
|
||||
IDI_UNDO_ICON ICON "icons/undo_off.ico"
|
||||
IDI_REDO_ICON ICON "icons/redo_off.ico"
|
||||
IDI_FIND_ICON ICON "icons/find_off.ico"
|
||||
IDI_REPLACE_ICON ICON "icons/findrep_off.ico"
|
||||
IDI_ZOOMIN_ICON ICON "icons/zoomIn_off.ico"
|
||||
IDI_ZOOMOUT_ICON ICON "icons/zoomOut_off.ico"
|
||||
IDI_VIEW_UD_DLG_ICON ICON "icons/userDefineDlg_off.ico"
|
||||
IDI_PRINT_ICON ICON "icons/imprim_off.ico"
|
||||
IDI_STARTRECORD_ICON ICON "icons/startrecord_off.ico"
|
||||
IDI_STARTRECORD_DISABLE_ICON ICON "icons/startrecord_dis.ico"
|
||||
IDI_STOPRECORD_ICON ICON "icons/stoprecord_off.ico"
|
||||
IDI_STOPRECORD_DISABLE_ICON ICON "icons/stoprecord_dis.ico"
|
||||
IDI_PLAYRECORD_ICON ICON "icons/playrecord_off.ico"
|
||||
IDI_PLAYRECORD_DISABLE_ICON ICON "icons/playrecord_dis.ico"
|
||||
IDI_SAVERECORD_ICON ICON "icons/saverecord_off.ico"
|
||||
IDI_SAVERECORD_DISABLE_ICON ICON "icons/saverecord_dis.ico"
|
||||
IDI_MMPLAY_DIS_ICON ICON "icons/playrecord_m_dis.ico"
|
||||
IDI_MMPLAY_ICON ICON "icons/playrecord_m_off.ico"
|
||||
IDI_VIEW_ALL_CHAR_ICON ICON "icons/allChars_off.ico"
|
||||
IDI_VIEW_INDENT_ICON ICON "icons/indentGuide_off.ico"
|
||||
IDI_VIEW_WRAP_ICON ICON "icons/wrap_off.ico"
|
||||
IDI_SAVE_DISABLE_ICON ICON "icons/save_dis.ico"
|
||||
IDI_SAVEALL_DISABLE_ICON ICON "icons/saveall_dis.ico"
|
||||
IDI_CUT_DISABLE_ICON ICON "icons/cut_dis.ico"
|
||||
|
@ -103,7 +96,66 @@ IDI_COPY_DISABLE_ICON ICON "icons/dupli_dis.ico"
|
|||
IDI_PASTE_DISABLE_ICON ICON "icons/paste_dis.ico"
|
||||
IDI_UNDO_DISABLE_ICON ICON "icons/undo_dis.ico"
|
||||
IDI_REDO_DISABLE_ICON ICON "icons/redo_dis.ico"
|
||||
IDI_SYNCV_ICON ICON "icons/syncV_off.ico"
|
||||
IDI_SYNCV_DISABLE_ICON ICON "icons/syncV_dis.ico"
|
||||
IDI_SYNCH_ICON ICON "icons/syncH_off.ico"
|
||||
IDI_SYNCH_DISABLE_ICON ICON "icons/syncH_dis.ico"
|
||||
IDI_VIEW_DOC_MAP_ICON ICON "icons/docMap_off.ico"
|
||||
IDI_VIEW_FUNCLIST_ICON ICON "icons/funcList_off.ico"
|
||||
IDI_VIEW_FILEBROWSER_ICON ICON "icons/fileBrowser_off.ico"
|
||||
IDI_VIEW_MONITORING_ICON ICON "icons/monitoring_off.ico"
|
||||
|
||||
//
|
||||
// TOOLBAR ICO - set 2
|
||||
//
|
||||
IDI_NEW_ICON2 ICON "icons/filledFluentUI/new_off.ico"
|
||||
IDI_OPEN_ICON2 ICON "icons/filledFluentUI/open_off.ico"
|
||||
IDI_CLOSE_ICON2 ICON "icons/filledFluentUI/supp_off.ico"
|
||||
IDI_CLOSEALL_ICON2 ICON "icons/filledFluentUI/suppall_off.ico"
|
||||
IDI_SAVE_ICON2 ICON "icons/filledFluentUI/save_off.ico"
|
||||
IDI_SAVEALL_ICON2 ICON "icons/filledFluentUI/saveall_off.ico"
|
||||
IDI_CUT_ICON2 ICON "icons/filledFluentUI/cut_off.ico"
|
||||
IDI_COPY_ICON2 ICON "icons/filledFluentUI/dupli_off.ico"
|
||||
IDI_PASTE_ICON2 ICON "icons/filledFluentUI/paste_off.ico"
|
||||
IDI_UNDO_ICON2 ICON "icons/filledFluentUI/undo_off.ico"
|
||||
IDI_REDO_ICON2 ICON "icons/filledFluentUI/redo_off.ico"
|
||||
IDI_FIND_ICON2 ICON "icons/filledFluentUI/find_off.ico"
|
||||
IDI_REPLACE_ICON2 ICON "icons/filledFluentUI/findrep_off.ico"
|
||||
IDI_ZOOMIN_ICON2 ICON "icons/filledFluentUI/zoomIn_off.ico"
|
||||
IDI_ZOOMOUT_ICON2 ICON "icons/filledFluentUI/zoomOut_off.ico"
|
||||
IDI_VIEW_UD_DLG_ICON2 ICON "icons/filledFluentUI/userDefineDlg_off.ico"
|
||||
IDI_PRINT_ICON2 ICON "icons/filledFluentUI/imprim_off.ico"
|
||||
IDI_STARTRECORD_ICON2 ICON "icons/filledFluentUI/startrecord_off.ico"
|
||||
IDI_STARTRECORD_DISABLE_ICON2 ICON "icons/filledFluentUI/startrecord_dis.ico"
|
||||
IDI_STOPRECORD_ICON2 ICON "icons/filledFluentUI/stoprecord_off.ico"
|
||||
IDI_STOPRECORD_DISABLE_ICON2 ICON "icons/filledFluentUI/stoprecord_dis.ico"
|
||||
IDI_PLAYRECORD_ICON2 ICON "icons/filledFluentUI/playrecord_off.ico"
|
||||
IDI_PLAYRECORD_DISABLE_ICON2 ICON "icons/filledFluentUI/playrecord_dis.ico"
|
||||
IDI_SAVERECORD_ICON2 ICON "icons/filledFluentUI/saverecord_off.ico"
|
||||
IDI_SAVERECORD_DISABLE_ICON2 ICON "icons/filledFluentUI/saverecord_dis.ico"
|
||||
IDI_MMPLAY_DIS_ICON2 ICON "icons/filledFluentUI/playrecord_m_dis.ico"
|
||||
IDI_MMPLAY_ICON2 ICON "icons/filledFluentUI/playrecord_m_off.ico"
|
||||
IDI_VIEW_ALL_CHAR_ICON2 ICON "icons/filledFluentUI/allChars_off.ico"
|
||||
IDI_VIEW_INDENT_ICON2 ICON "icons/filledFluentUI/indentGuide_off.ico"
|
||||
IDI_VIEW_WRAP_ICON2 ICON "icons/filledFluentUI/wrap_off.ico"
|
||||
IDI_SAVE_DISABLE_ICON2 ICON "icons/filledFluentUI/save_dis.ico"
|
||||
IDI_SAVEALL_DISABLE_ICON2 ICON "icons/filledFluentUI/saveall_dis.ico"
|
||||
IDI_CUT_DISABLE_ICON2 ICON "icons/filledFluentUI/cut_dis.ico"
|
||||
IDI_COPY_DISABLE_ICON2 ICON "icons/filledFluentUI/dupli_dis.ico"
|
||||
IDI_PASTE_DISABLE_ICON2 ICON "icons/filledFluentUI/paste_dis.ico"
|
||||
IDI_UNDO_DISABLE_ICON2 ICON "icons/filledFluentUI/undo_dis.ico"
|
||||
IDI_REDO_DISABLE_ICON2 ICON "icons/filledFluentUI/redo_dis.ico"
|
||||
IDI_SYNCV_ICON2 ICON "icons/filledFluentUI/syncV_off.ico"
|
||||
IDI_SYNCV_DISABLE_ICON2 ICON "icons/filledFluentUI/syncV_dis.ico"
|
||||
IDI_SYNCH_ICON2 ICON "icons/filledFluentUI/syncH_off.ico"
|
||||
IDI_SYNCH_DISABLE_ICON2 ICON "icons/filledFluentUI/syncH_dis.ico"
|
||||
IDI_VIEW_DOC_MAP_ICON2 ICON "icons/filledFluentUI/docMap_off.ico"
|
||||
IDI_VIEW_FUNCLIST_ICON2 ICON "icons/filledFluentUI/funcList_off.ico"
|
||||
IDI_VIEW_FILEBROWSER_ICON2 ICON "icons/filledFluentUI/fileBrowser_off.ico"
|
||||
IDI_VIEW_MONITORING_ICON2 ICON "icons/filledFluentUI/monitoring_off.ico"
|
||||
|
||||
|
||||
|
||||
IDI_SAVED_ICON ICON "icons/saved.ico"
|
||||
IDI_SAVED_ALT_ICON ICON "icons/saved_alt.ico"
|
||||
IDI_UNSAVED_ICON ICON "icons/unsaved.ico"
|
||||
|
@ -162,30 +214,6 @@ IDR_FILEBROWSER_ICO ICON "icons/fileBrowser.ico"
|
|||
IDR_CLIPBOARDPANEL_ICO ICON "icons/clipboardPanel.ico"
|
||||
IDR_ASCIIPANEL_ICO ICON "icons/asciiPanel.ico"
|
||||
IDR_DOCSWITCHER_ICO ICON "icons/docSwitcher.ico"
|
||||
IDI_STARTRECORD_OFF_ICON ICON "icons/startrecord_off.ico"
|
||||
IDI_STARTRECORD_ON_ICON ICON "icons/startrecord_on.ico"
|
||||
IDI_STARTRECORD_DISABLE_ICON ICON "icons/startrecord_dis.ico"
|
||||
IDI_STOPRECORD_OFF_ICON ICON "icons/stoprecord_off.ico"
|
||||
IDI_STOPRECORD_ON_ICON ICON "icons/stoprecord_on.ico"
|
||||
IDI_STOPRECORD_DISABLE_ICON ICON "icons/stoprecord_dis.ico"
|
||||
IDI_PLAYRECORD_OFF_ICON ICON "icons/playrecord_off.ico"
|
||||
IDI_PLAYRECORD_ON_ICON ICON "icons/playrecord_on.ico"
|
||||
IDI_PLAYRECORD_DISABLE_ICON ICON "icons/playrecord_dis.ico"
|
||||
IDI_SAVERECORD_OFF_ICON ICON "icons/saverecord_off.ico"
|
||||
IDI_SAVERECORD_ON_ICON ICON "icons/saverecord_on.ico"
|
||||
IDI_SAVERECORD_DISABLE_ICON ICON "icons/saverecord_dis.ico"
|
||||
|
||||
IDI_SYNCV_OFF_ICON ICON "icons/syncV_off.ico"
|
||||
IDI_SYNCV_ON_ICON ICON "icons/syncV_on.ico"
|
||||
IDI_SYNCV_DISABLE_ICON ICON "icons/syncV_dis.ico"
|
||||
IDI_SYNCH_OFF_ICON ICON "icons/syncH_off.ico"
|
||||
IDI_SYNCH_ON_ICON ICON "icons/syncH_on.ico"
|
||||
IDI_SYNCH_DISABLE_ICON ICON "icons/syncH_dis.ico"
|
||||
|
||||
// multi run macro
|
||||
IDI_MMPLAY_DIS_ICON ICON "icons/playrecord_m_dis.ico"
|
||||
IDI_MMPLAY_OFF_ICON ICON "icons/playrecord_m_off.ico"
|
||||
IDI_MMPLAY_ON_ICON ICON "icons/playrecord_m_on.ico"
|
||||
|
||||
|
||||
IDI_PROJECT_WORKSPACE BITMAP "icons/project_work_space.bmp"
|
||||
|
@ -209,16 +237,9 @@ IDI_FUNCLIST_LEAF BITMAP "icons/funcList_leaf.bmp"
|
|||
IDI_FUNCLIST_SORTBUTTON BITMAP "icons/funclstSort.bmp"
|
||||
IDI_FUNCLIST_RELOADBUTTON BITMAP "icons/funclstReload.bmp"
|
||||
|
||||
IDI_VIEW_DOC_MAP_ON_ICON ICON "icons/docMap_on.ico"
|
||||
IDI_VIEW_DOC_MAP_OFF_ICON ICON "icons/docMap_off.ico"
|
||||
IDI_VIEW_FUNCLIST_ON_ICON ICON "icons/funcList_on.ico"
|
||||
IDI_VIEW_FUNCLIST_OFF_ICON ICON "icons/funcList_off.ico"
|
||||
IDI_VIEW_FILEBROWSER_ON_ICON ICON "icons/fileBrowser_on.ico"
|
||||
IDI_VIEW_FILEBROWSER_OFF_ICON ICON "icons/fileBrowser_off.ico"
|
||||
IDI_VIEW_MONITORING_ON_ICON ICON "icons/monitoring_on.ico"
|
||||
IDI_VIEW_MONITORING_OFF_ICON ICON "icons/monitoring_off.ico"
|
||||
|
||||
IDI_MORE_ON_TOOLTIP ICON "icons/MoreOnTooltip.ico"
|
||||
|
||||
IDI_GET_INFO_FROM_TOOLTIP ICON "icons/MoreOnTooltip.ico"
|
||||
|
||||
IDR_M30_MENU MENU
|
||||
BEGIN
|
||||
|
|
|
@ -1917,13 +1917,37 @@ void Notepad_plus::command(int id)
|
|||
}
|
||||
break;
|
||||
|
||||
case IDM_VIEW_TOOLBAR_REDUCE_SET2:
|
||||
{
|
||||
toolBarStatusType state = _toolBar.getState();
|
||||
|
||||
if (state != TB_SMALL2)
|
||||
{
|
||||
_toolBar.reduceToSet2();
|
||||
changeToolBarIcons();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case IDM_VIEW_TOOLBAR_ENLARGE_SET2:
|
||||
{
|
||||
toolBarStatusType state = _toolBar.getState();
|
||||
|
||||
if (state != TB_LARGE2)
|
||||
{
|
||||
_toolBar.enlargeToSet2();
|
||||
changeToolBarIcons();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
case IDM_VIEW_TOOLBAR_STANDARD:
|
||||
{
|
||||
toolBarStatusType state = _toolBar.getState();
|
||||
|
||||
if (state != TB_STANDARD)
|
||||
{
|
||||
_toolBar.setToUglyIcons();
|
||||
_toolBar.setToBmpIcons();
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
@ -1940,7 +1964,7 @@ void Notepad_plus::command(int id)
|
|||
int tabDpiDynamicalHeight = NppParameters::getInstance()._dpiManager.scaleY(_toReduceTabBar?22:25);
|
||||
TabCtrl_SetItemSize(_mainDocTab.getHSelf(), tabDpiDynamicalWidth, tabDpiDynamicalHeight);
|
||||
TabCtrl_SetItemSize(_subDocTab.getHSelf(), tabDpiDynamicalWidth, tabDpiDynamicalHeight);
|
||||
_docTabIconList.setIconSize(iconDpiDynamicalSize);
|
||||
_docTabIconList.addIcons(iconDpiDynamicalSize);
|
||||
|
||||
//change the font
|
||||
int stockedFont = _toReduceTabBar?DEFAULT_GUI_FONT:SYSTEM_FONT;
|
||||
|
|
|
@ -4151,7 +4151,11 @@ void NppParameters::feedGUIParameters(TiXmlNode *node)
|
|||
_nppGUI._toolBarStatus = TB_SMALL;
|
||||
else if (!lstrcmp(val, TEXT("large")))
|
||||
_nppGUI._toolBarStatus = TB_LARGE;
|
||||
else// if (!lstrcmp(val, TEXT("standard"))) //assume standard in all other cases
|
||||
else if (!lstrcmp(val, TEXT("small2")))
|
||||
_nppGUI._toolBarStatus = TB_SMALL2;
|
||||
else if (!lstrcmp(val, TEXT("large2")))
|
||||
_nppGUI._toolBarStatus = TB_LARGE2;
|
||||
else //if (!lstrcmp(val, TEXT("standard")))
|
||||
_nppGUI._toolBarStatus = TB_STANDARD;
|
||||
}
|
||||
}
|
||||
|
@ -5916,7 +5920,17 @@ void NppParameters::createXmlTreeFromGUIParams()
|
|||
GUIConfigElement->SetAttribute(TEXT("name"), TEXT("ToolBar"));
|
||||
const TCHAR *pStr = (_nppGUI._toolbarShow) ? TEXT("yes") : TEXT("no");
|
||||
GUIConfigElement->SetAttribute(TEXT("visible"), pStr);
|
||||
pStr = _nppGUI._toolBarStatus == TB_SMALL ? TEXT("small") : (_nppGUI._toolBarStatus == TB_STANDARD ? TEXT("standard") : TEXT("large"));
|
||||
|
||||
if (_nppGUI._toolBarStatus == TB_SMALL)
|
||||
pStr = TEXT("small");
|
||||
else if (_nppGUI._toolBarStatus == TB_LARGE)
|
||||
pStr = TEXT("large");
|
||||
else if (_nppGUI._toolBarStatus == TB_SMALL2)
|
||||
pStr = TEXT("small2");
|
||||
else if (_nppGUI._toolBarStatus == TB_LARGE2)
|
||||
pStr = TEXT("large2");
|
||||
else //if (_nppGUI._toolBarStatus == TB_STANDARD)
|
||||
pStr = TEXT("standard");
|
||||
GUIConfigElement->InsertEndChild(TiXmlText(pStr));
|
||||
}
|
||||
|
||||
|
|
|
@ -3727,7 +3727,7 @@ void FindReplaceDlg::drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
|
|||
}
|
||||
|
||||
if (!_statusbarTooltipIcon)
|
||||
_statusbarTooltipIcon = (HICON)::LoadImage(_hInst, MAKEINTRESOURCE(IDI_MORE_ON_TOOLTIP), IMAGE_ICON, s, s, 0);
|
||||
_statusbarTooltipIcon = (HICON)::LoadImage(_hInst, MAKEINTRESOURCE(IDI_GET_INFO_FROM_TOOLTIP), IMAGE_ICON, s, s, 0);
|
||||
|
||||
if (_statusbarTooltipIcon)
|
||||
{
|
||||
|
|
|
@ -18,19 +18,21 @@
|
|||
#include <stdexcept>
|
||||
#include "ImageListSet.h"
|
||||
|
||||
void IconList::create(HINSTANCE hInst, int iconSize)
|
||||
|
||||
void IconList::init(HINSTANCE hInst, int iconSize)
|
||||
{
|
||||
InitCommonControls();
|
||||
_hInst = hInst;
|
||||
_iconSize = iconSize;
|
||||
_hImglst = ImageList_Create(iconSize, iconSize, ILC_COLOR32 | ILC_MASK, 0, nbMax);
|
||||
_iconSize = iconSize;
|
||||
const int nbMore = 45;
|
||||
_hImglst = ImageList_Create(iconSize, iconSize, ILC_COLOR32 | ILC_MASK, 0, nbMore);
|
||||
if (!_hImglst)
|
||||
throw std::runtime_error("IconList::create : ImageList_Create() function return null");
|
||||
throw std::runtime_error("IconList::create : ImageList_Create() function returns null");
|
||||
};
|
||||
|
||||
void IconList::create(int iconSize, HINSTANCE hInst, int *iconIDArray, int iconIDArraySize)
|
||||
{
|
||||
create(hInst, iconSize);
|
||||
init(hInst, iconSize);
|
||||
_pIconIDArray = iconIDArray;
|
||||
_iconIDArraySize = iconIDArraySize;
|
||||
|
||||
|
@ -48,6 +50,12 @@ void IconList::addIcon(int iconID) const
|
|||
::DestroyIcon(hIcon);
|
||||
};
|
||||
|
||||
void IconList::addIcon(HICON hIcon) const
|
||||
{
|
||||
if (hIcon)
|
||||
ImageList_AddIcon(_hImglst, hIcon);
|
||||
};
|
||||
|
||||
bool IconList::changeIcon(int index, const TCHAR *iconLocation) const
|
||||
{
|
||||
HBITMAP hBmp = (HBITMAP)::LoadImage(_hInst, iconLocation, IMAGE_ICON, _iconSize, _iconSize, LR_LOADFROMFILE | LR_LOADMAP3DCOLORS | LR_LOADTRANSPARENT);
|
||||
|
@ -59,35 +67,49 @@ bool IconList::changeIcon(int index, const TCHAR *iconLocation) const
|
|||
return (i == index);
|
||||
}
|
||||
|
||||
void IconList::setIconSize(int size) const
|
||||
// used by tabbar only
|
||||
void IconList::addIcons(int size) const
|
||||
{
|
||||
ImageList_SetIconSize(_hImglst, size, size);
|
||||
for (int i = 0 ; i < _iconIDArraySize ; ++i)
|
||||
addIcon(_pIconIDArray[i]);
|
||||
}
|
||||
|
||||
void ToolBarIcons::init(ToolBarButtonUnit *buttonUnitArray, int arraySize)
|
||||
void ToolBarIcons::init(ToolBarButtonUnit *buttonUnitArray, int arraySize, std::vector<DynamicCmdIcoBmp> moreCmds)
|
||||
{
|
||||
for (int i = 0 ; i < arraySize ; ++i)
|
||||
_tbiis.push_back(buttonUnitArray[i]);
|
||||
_nbCmd = arraySize;
|
||||
|
||||
_moreCmds = moreCmds;
|
||||
}
|
||||
|
||||
void ToolBarIcons::reInit(int size)
|
||||
{
|
||||
ImageList_SetIconSize(getDefaultLst(), size, size);
|
||||
ImageList_SetIconSize(getHotLst(), size, size);
|
||||
ImageList_SetIconSize(getDisableLst(), size, size);
|
||||
|
||||
ImageList_SetIconSize(getDefaultLstSet2(), size, size);
|
||||
ImageList_SetIconSize(getDisableLstSet2(), size, size);
|
||||
|
||||
for (size_t i = 0, len = _tbiis.size(); i < len; ++i)
|
||||
{
|
||||
if (_tbiis[i]._defaultIcon != -1)
|
||||
{
|
||||
_iconListVector[HLIST_DEFAULT].addIcon(_tbiis[i]._defaultIcon);
|
||||
_iconListVector[HLIST_HOT].addIcon(_tbiis[i]._hotIcon);
|
||||
_iconListVector[HLIST_DISABLE].addIcon(_tbiis[i]._grayIcon);
|
||||
_iconListVector[HLIST_DEFAULT2].addIcon(_tbiis[i]._defaultIcon2);
|
||||
_iconListVector[HLIST_DISABLE2].addIcon(_tbiis[i]._grayIcon2);
|
||||
}
|
||||
}
|
||||
|
||||
// Add dynamic icons
|
||||
for (auto i : _moreCmds)
|
||||
{
|
||||
_iconListVector[HLIST_DEFAULT].addIcon(i._hIcon);
|
||||
_iconListVector[HLIST_DISABLE].addIcon(i._hIcon);
|
||||
_iconListVector[HLIST_DEFAULT2].addIcon(i._hIcon);
|
||||
_iconListVector[HLIST_DISABLE2].addIcon(i._hIcon);
|
||||
}
|
||||
}
|
||||
|
||||
void ToolBarIcons::create(HINSTANCE hInst, int iconSize)
|
||||
|
@ -95,10 +117,12 @@ void ToolBarIcons::create(HINSTANCE hInst, int iconSize)
|
|||
_iconListVector.push_back(IconList());
|
||||
_iconListVector.push_back(IconList());
|
||||
_iconListVector.push_back(IconList());
|
||||
_iconListVector.push_back(IconList());
|
||||
|
||||
_iconListVector[HLIST_DEFAULT].create(hInst, iconSize);
|
||||
_iconListVector[HLIST_HOT].create(hInst, iconSize);
|
||||
_iconListVector[HLIST_DISABLE].create(hInst, iconSize);
|
||||
_iconListVector[HLIST_DEFAULT].init(hInst, iconSize);
|
||||
_iconListVector[HLIST_DISABLE].init(hInst, iconSize);
|
||||
_iconListVector[HLIST_DEFAULT2].init(hInst, iconSize);
|
||||
_iconListVector[HLIST_DISABLE2].init(hInst, iconSize);
|
||||
|
||||
reInit(iconSize);
|
||||
}
|
||||
|
@ -106,9 +130,9 @@ void ToolBarIcons::create(HINSTANCE hInst, int iconSize)
|
|||
void ToolBarIcons::destroy()
|
||||
{
|
||||
_iconListVector[HLIST_DEFAULT].destroy();
|
||||
_iconListVector[HLIST_HOT].destroy();
|
||||
_iconListVector[HLIST_DEFAULT2].destroy();
|
||||
_iconListVector[HLIST_DISABLE].destroy();
|
||||
//_iconListVector[HLIST_UGLY].destroy();
|
||||
_iconListVector[HLIST_DISABLE2].destroy();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -21,14 +21,13 @@
|
|||
#include <windows.h>
|
||||
#include <commctrl.h>
|
||||
|
||||
const int nbMax = 45;
|
||||
#define IDI_SEPARATOR_ICON -1
|
||||
|
||||
class IconList
|
||||
{
|
||||
public :
|
||||
IconList() = default;
|
||||
void create(HINSTANCE hInst, int iconSize);
|
||||
void init(HINSTANCE hInst, int iconSize);
|
||||
void create(int iconSize, HINSTANCE hInst, int *iconIDArray, int iconIDArraySize);
|
||||
|
||||
void destroy() {
|
||||
|
@ -36,8 +35,9 @@ public :
|
|||
};
|
||||
HIMAGELIST getHandle() const {return _hImglst;};
|
||||
void addIcon(int iconID) const;
|
||||
void addIcon(HICON hIcon) const;
|
||||
bool changeIcon(int index, const TCHAR *iconLocation) const;
|
||||
void setIconSize(int size) const;
|
||||
void addIcons(int size) const;
|
||||
|
||||
private :
|
||||
HIMAGELIST _hImglst = nullptr;
|
||||
|
@ -52,76 +52,75 @@ typedef struct
|
|||
int _cmdID;
|
||||
|
||||
int _defaultIcon;
|
||||
int _hotIcon;
|
||||
int _grayIcon;
|
||||
|
||||
int _defaultIcon2;
|
||||
int _grayIcon2;
|
||||
|
||||
int _stdIcon;
|
||||
} ToolBarButtonUnit;
|
||||
|
||||
typedef std::vector<ToolBarButtonUnit> ToolBarIconIDs;
|
||||
|
||||
typedef std::vector<IconList> IconListVector;
|
||||
|
||||
class IconLists
|
||||
{
|
||||
public :
|
||||
IconLists() = default;
|
||||
HIMAGELIST getImageListHandle(int index) const {
|
||||
return _iconListVector[index].getHandle();
|
||||
};
|
||||
|
||||
protected :
|
||||
IconListVector _iconListVector;
|
||||
struct DynamicCmdIcoBmp {
|
||||
UINT _message; // identification of icon in tool bar (menu ID)
|
||||
HBITMAP _hBmp; // bitmap for toolbar
|
||||
HICON _hIcon; // icon for toolbar
|
||||
};
|
||||
|
||||
const int HLIST_DEFAULT = 0;
|
||||
const int HLIST_HOT = 1;
|
||||
const int HLIST_DISABLE = 2;
|
||||
typedef std::vector<ToolBarButtonUnit> ToolBarIconIDs;
|
||||
|
||||
class ToolBarIcons : public IconLists
|
||||
|
||||
const int HLIST_DEFAULT = 0;
|
||||
const int HLIST_DISABLE = 1;
|
||||
const int HLIST_DEFAULT2 = 2;
|
||||
const int HLIST_DISABLE2 = 3;
|
||||
|
||||
class ToolBarIcons
|
||||
{
|
||||
public :
|
||||
ToolBarIcons() = default;
|
||||
|
||||
void init(ToolBarButtonUnit *buttonUnitArray, int arraySize);
|
||||
void init(ToolBarButtonUnit *buttonUnitArray, int arraySize, std::vector<DynamicCmdIcoBmp> cmds2add);
|
||||
void create(HINSTANCE hInst, int iconSize);
|
||||
void destroy();
|
||||
|
||||
HIMAGELIST getDefaultLst() const {
|
||||
return IconLists::getImageListHandle(HLIST_DEFAULT);
|
||||
};
|
||||
|
||||
HIMAGELIST getHotLst() const {
|
||||
return IconLists::getImageListHandle(HLIST_HOT);
|
||||
return _iconListVector[HLIST_DEFAULT].getHandle();
|
||||
};
|
||||
|
||||
HIMAGELIST getDisableLst() const {
|
||||
return IconLists::getImageListHandle(HLIST_DISABLE);
|
||||
return _iconListVector[HLIST_DISABLE].getHandle();
|
||||
};
|
||||
|
||||
HIMAGELIST getDefaultLstSet2() const {
|
||||
return _iconListVector[HLIST_DEFAULT2].getHandle();
|
||||
};
|
||||
|
||||
HIMAGELIST getDisableLstSet2() const {
|
||||
return _iconListVector[HLIST_DISABLE2].getHandle();
|
||||
};
|
||||
|
||||
unsigned int getNbCommand() const {return _nbCmd;};
|
||||
void resizeIcon(int size) {
|
||||
reInit(size);
|
||||
};
|
||||
|
||||
void reInit(int size);
|
||||
|
||||
int getNbIcon() const {
|
||||
return int(_tbiis.size());
|
||||
};
|
||||
|
||||
int getStdIconAt(int i) const {
|
||||
return _tbiis[i]._stdIcon;
|
||||
};
|
||||
|
||||
bool replaceIcon(int witchList, int iconIndex, const TCHAR *iconLocation) const {
|
||||
if ((witchList != HLIST_DEFAULT) && (witchList != HLIST_HOT) && (witchList != HLIST_DISABLE))
|
||||
if ((witchList != HLIST_DEFAULT) && (witchList != HLIST_DISABLE) &&
|
||||
(witchList != HLIST_DEFAULT2) && (witchList != HLIST_DISABLE2))
|
||||
return false;
|
||||
|
||||
return _iconListVector[witchList].changeIcon(iconIndex, iconLocation);
|
||||
};
|
||||
|
||||
private :
|
||||
ToolBarIconIDs _tbiis;
|
||||
unsigned int _nbCmd = 0;
|
||||
std::vector<DynamicCmdIcoBmp> _moreCmds;
|
||||
|
||||
std::vector<IconList> _iconListVector;
|
||||
};
|
||||
|
||||
|
|
|
@ -33,38 +33,46 @@ BEGIN
|
|||
END
|
||||
|
||||
|
||||
|
||||
IDD_PREFERENCE_SUB_GENRAL DIALOGEX 0, 0, 455, 185
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Localization",IDC_LOCALIZATION_GB_STATIC,57,6,147,35,BS_CENTER
|
||||
COMBOBOX IDC_COMBO_LOCALIZATION,68,20,119,80,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Toolbar",IDC_TOOLBAR_GB_STATIC,57,45,147,68,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,64,55,94,10
|
||||
CONTROL "Small icons",IDC_RADIO_SMALLICON,"Button",BS_AUTORADIOBUTTON,64,69,114,10
|
||||
CONTROL "Big icons",IDC_RADIO_BIGICON,"Button",BS_AUTORADIOBUTTON,64,83,109,10
|
||||
CONTROL "Standard icons",IDC_RADIO_STANDARD,"Button",BS_AUTORADIOBUTTON,64,97,119,10
|
||||
GROUPBOX "Document List Panel",IDC_DOCSWITCH_GB_STATIC,57,121,147,41,BS_CENTER
|
||||
CONTROL "Show",IDC_CHECK_DOCSWITCH,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,64,131,135,10
|
||||
CONTROL "Disable extension column",IDC_CHECK_DOCSWITCH_NOEXTCOLUMN, "Button", BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,64,146,124,10
|
||||
RTEXT "Localization:",IDC_LOCALIZATION_GB_STATIC,2,7,78,8
|
||||
COMBOBOX IDC_COMBO_LOCALIZATION,83,5,119,80,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Toolbar",IDC_TOOLBAR_GB_STATIC,57,22,147,97,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,64,30,94,10
|
||||
CONTROL "Fluent UI: small",IDC_RADIO_SMALLICON,"Button",BS_AUTORADIOBUTTON,64,45,114,10
|
||||
CONTROL "Fluent UI: large",IDC_RADIO_BIGICON,"Button",BS_AUTORADIOBUTTON,64,59,109,10
|
||||
CONTROL "Filled Fluent UI: small",IDC_RADIO_SMALLICON2,"Button",BS_AUTORADIOBUTTON,64,73,114,10
|
||||
CONTROL "Filled Fluent UI: large",IDC_RADIO_BIGICON2,"Button",BS_AUTORADIOBUTTON,64,87,109,10
|
||||
CONTROL "Standard icons: small",IDC_RADIO_STANDARD,"Button",BS_AUTORADIOBUTTON,64,101,119,10
|
||||
GROUPBOX "Document List Panel",IDC_DOCSWITCH_GB_STATIC,57,125,147,37,BS_CENTER
|
||||
CONTROL "Show",IDC_CHECK_DOCSWITCH,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,64,133,135,10
|
||||
CONTROL "Disable extension column",IDC_CHECK_DOCSWITCH_NOEXTCOLUMN,
|
||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,64,147,124,10
|
||||
GROUPBOX "Tab Bar",IDC_TABBAR_GB_STATIC,223,6,176,156,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_TAB_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,15,108,10
|
||||
CONTROL "Multi-line",IDC_CHECK_TAB_MULTILINE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,29,134,10
|
||||
CONTROL "Vertical",IDC_CHECK_TAB_VERTICAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,41,134,10
|
||||
CONTROL "Reduce",IDC_CHECK_REDUCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,54,108,10
|
||||
CONTROL "Alternate icons", IDC_CHECK_TAB_ALTICONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,67,164,10
|
||||
CONTROL "Alternate icons",IDC_CHECK_TAB_ALTICONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,67,164,10
|
||||
CONTROL "Lock (no drag and drop)",IDC_CHECK_LOCK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,80,134,10
|
||||
CONTROL "Darken inactive tabs",IDC_CHECK_DRAWINACTIVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,93,134,10
|
||||
CONTROL "Draw a coloured bar on active tab",IDC_CHECK_ORANGE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP,229,106,137,10
|
||||
CONTROL "Show close button on each tab",IDC_CHECK_ENABLETABCLOSE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP,229,119,133,10
|
||||
CONTROL "Double click to close document",IDC_CHECK_DBCLICK2CLOSE, "Button", BS_AUTOCHECKBOX | WS_TABSTOP,229,132,133,10
|
||||
CONTROL "Exit on close the last tab",IDC_CHECK_TAB_LAST_EXIT, "Button", BS_AUTOCHECKBOX | WS_TABSTOP,229,145,165,10
|
||||
CONTROL "Draw a coloured bar on active tab",IDC_CHECK_ORANGE,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,106,137,10
|
||||
CONTROL "Show close button on each tab",IDC_CHECK_ENABLETABCLOSE,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,119,133,10
|
||||
CONTROL "Double click to close document",IDC_CHECK_DBCLICK2CLOSE,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,132,133,10
|
||||
CONTROL "Exit on close the last tab",IDC_CHECK_TAB_LAST_EXIT,
|
||||
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,145,165,10
|
||||
CONTROL "Show status bar",IDC_CHECK_SHOWSTATUSBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,57,169,130,10
|
||||
CONTROL "Hide menu bar (use Alt or F10 key to toggle)",IDC_CHECK_HIDEMENUBAR, "Button", BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,223,169,218,10
|
||||
CONTROL "Hide menu bar (use Alt or F10 key to toggle)",IDC_CHECK_HIDEMENUBAR,
|
||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,223,169,218,10
|
||||
END
|
||||
|
||||
|
||||
|
||||
IDD_PREFERENCE_SUB_EDITING DIALOGEX 0, 0, 455, 185
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
|
|
|
@ -384,6 +384,12 @@ INT_PTR CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
|
|||
case TB_LARGE :
|
||||
ID2Check = IDC_RADIO_BIGICON;
|
||||
break;
|
||||
case TB_SMALL2 :
|
||||
ID2Check = IDC_RADIO_SMALLICON2;
|
||||
break;
|
||||
case TB_LARGE2 :
|
||||
ID2Check = IDC_RADIO_BIGICON2;
|
||||
break;
|
||||
case TB_STANDARD:
|
||||
default :
|
||||
ID2Check = IDC_RADIO_STANDARD;
|
||||
|
@ -547,7 +553,15 @@ INT_PTR CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
|
|||
case IDC_RADIO_BIGICON :
|
||||
::SendMessage(_hParent, WM_COMMAND, IDM_VIEW_TOOLBAR_ENLARGE, 0);
|
||||
return TRUE;
|
||||
|
||||
|
||||
case IDC_RADIO_SMALLICON2:
|
||||
::SendMessage(_hParent, WM_COMMAND, IDM_VIEW_TOOLBAR_REDUCE_SET2, 0);
|
||||
return TRUE;
|
||||
|
||||
case IDC_RADIO_BIGICON2:
|
||||
::SendMessage(_hParent, WM_COMMAND, IDM_VIEW_TOOLBAR_ENLARGE_SET2, 0);
|
||||
return TRUE;
|
||||
|
||||
case IDC_RADIO_STANDARD :
|
||||
::SendMessage(_hParent, WM_COMMAND, IDM_VIEW_TOOLBAR_STANDARD, 0);
|
||||
return TRUE;
|
||||
|
|
|
@ -52,6 +52,8 @@
|
|||
#define IDC_CHECK_DOCSWITCH (IDD_PREFERENCE_SUB_GENRAL + 26)
|
||||
#define IDC_CHECK_DOCSWITCH_NOEXTCOLUMN (IDD_PREFERENCE_SUB_GENRAL + 27)
|
||||
#define IDC_CHECK_TAB_ALTICONS (IDD_PREFERENCE_SUB_GENRAL + 28)
|
||||
#define IDC_RADIO_SMALLICON2 (IDD_PREFERENCE_SUB_GENRAL + 29)
|
||||
#define IDC_RADIO_BIGICON2 (IDD_PREFERENCE_SUB_GENRAL + 30)
|
||||
|
||||
#define IDD_PREFERENCE_SUB_MULTIINSTANCE 6150 //(IDD_PREFERENCE_BOX + 150)
|
||||
#define IDC_MULTIINST_GB_STATIC (IDD_PREFERENCE_SUB_MULTIINSTANCE + 1)
|
||||
|
|
|
@ -97,9 +97,9 @@ bool ToolBar::init( HINSTANCE hInst, HWND hPere, toolBarStatusType type, ToolBar
|
|||
{
|
||||
Window::init(hInst, hPere);
|
||||
_state = type;
|
||||
int iconSize = NppParameters::getInstance()._dpiManager.scaleX(_state == TB_LARGE?32:16);
|
||||
int iconSize = NppParameters::getInstance()._dpiManager.scaleX(_state == TB_LARGE || _state == TB_LARGE2 ? 32 : 16);
|
||||
|
||||
_toolBarIcons.init(buttonUnitArray, arraySize);
|
||||
_toolBarIcons.init(buttonUnitArray, arraySize, _vDynBtnReg);
|
||||
_toolBarIcons.create(_hInst, iconSize);
|
||||
|
||||
INITCOMMONCONTROLSEX icex;
|
||||
|
@ -129,7 +129,7 @@ bool ToolBar::init( HINSTANCE hInst, HWND hPere, toolBarStatusType type, ToolBar
|
|||
style = BTNS_SEP;
|
||||
}
|
||||
|
||||
_pTBB[i].iBitmap = (cmd != 0?bmpIndex:0);
|
||||
_pTBB[i].iBitmap = (cmd != 0 ? bmpIndex : 0);
|
||||
_pTBB[i].idCommand = cmd;
|
||||
_pTBB[i].fsState = TBSTATE_ENABLED;
|
||||
_pTBB[i].fsStyle = (BYTE)style;
|
||||
|
@ -147,10 +147,11 @@ bool ToolBar::init( HINSTANCE hInst, HWND hPere, toolBarStatusType type, ToolBar
|
|||
_pTBB[i].dwData = 0;
|
||||
_pTBB[i].iString = 0;
|
||||
++i;
|
||||
|
||||
//add plugin buttons
|
||||
for (size_t j = 0; j < _nbDynButtons ; ++j, ++i)
|
||||
{
|
||||
cmd = _vDynBtnReg[j].message;
|
||||
cmd = _vDynBtnReg[j]._message;
|
||||
++bmpIndex;
|
||||
|
||||
_pTBB[i].iBitmap = bmpIndex;
|
||||
|
@ -207,9 +208,8 @@ void ToolBar::reduce()
|
|||
|
||||
int iconDpiDynamicalSize = NppParameters::getInstance()._dpiManager.scaleX(16);
|
||||
_toolBarIcons.resizeIcon(iconDpiDynamicalSize);
|
||||
bool recreate = (_state == TB_STANDARD || _state == TB_LARGE);
|
||||
setState(TB_SMALL);
|
||||
reset(recreate); //recreate toolbar if previous state was Std icons or Big icons
|
||||
reset(true); //recreate toolbar if previous state was Std icons or Big icons
|
||||
Window::redraw();
|
||||
}
|
||||
|
||||
|
@ -220,13 +220,37 @@ void ToolBar::enlarge()
|
|||
|
||||
int iconDpiDynamicalSize = NppParameters::getInstance()._dpiManager.scaleX(32);
|
||||
_toolBarIcons.resizeIcon(iconDpiDynamicalSize);
|
||||
bool recreate = (_state == TB_STANDARD || _state == TB_SMALL);
|
||||
setState(TB_LARGE);
|
||||
reset(recreate); //recreate toolbar if previous state was Std icons or Small icons
|
||||
reset(true); //recreate toolbar if previous state was Std icons or Small icons
|
||||
Window::redraw();
|
||||
}
|
||||
|
||||
void ToolBar::setToUglyIcons()
|
||||
void ToolBar::reduceToSet2()
|
||||
{
|
||||
if (_state == TB_SMALL2)
|
||||
return;
|
||||
|
||||
int iconDpiDynamicalSize = NppParameters::getInstance()._dpiManager.scaleX(16);
|
||||
_toolBarIcons.resizeIcon(iconDpiDynamicalSize);
|
||||
|
||||
setState(TB_SMALL2);
|
||||
reset(true);
|
||||
Window::redraw();
|
||||
}
|
||||
|
||||
void ToolBar::enlargeToSet2()
|
||||
{
|
||||
if (_state == TB_LARGE2)
|
||||
return;
|
||||
|
||||
int iconDpiDynamicalSize = NppParameters::getInstance()._dpiManager.scaleX(32);
|
||||
_toolBarIcons.resizeIcon(iconDpiDynamicalSize);
|
||||
setState(TB_LARGE2);
|
||||
reset(true); //recreate toolbar if previous state was Std icons or Small icons
|
||||
Window::redraw();
|
||||
}
|
||||
|
||||
void ToolBar::setToBmpIcons()
|
||||
{
|
||||
if (_state == TB_STANDARD)
|
||||
return;
|
||||
|
@ -237,7 +261,7 @@ void ToolBar::setToUglyIcons()
|
|||
}
|
||||
|
||||
|
||||
void ToolBar::reset(bool create)
|
||||
void ToolBar::reset(bool create)
|
||||
{
|
||||
|
||||
if (create && _hSelf)
|
||||
|
@ -283,12 +307,18 @@ void ToolBar::reset(bool create)
|
|||
throw std::runtime_error("ToolBar::reset : CreateWindowEx() function return null");
|
||||
}
|
||||
|
||||
if (_state != TB_STANDARD)
|
||||
if (_state != TB_STANDARD) //If non standard icons, use custom imagelists
|
||||
{
|
||||
//If non standard icons, use custom imagelists
|
||||
setDefaultImageList();
|
||||
setHotImageList();
|
||||
setDisableImageList();
|
||||
if (_state == TB_SMALL || _state == TB_LARGE)
|
||||
{
|
||||
setDefaultImageList();
|
||||
setDisableImageList();
|
||||
}
|
||||
else
|
||||
{
|
||||
setDefaultImageList2();
|
||||
setDisableImageList2();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -296,7 +326,6 @@ void ToolBar::reset(bool create)
|
|||
int iconDpiDynamicalSize = NppParameters::getInstance()._dpiManager.scaleX(16);
|
||||
::SendMessage(_hSelf, TB_SETBITMAPSIZE, 0, MAKELPARAM(iconDpiDynamicalSize, iconDpiDynamicalSize));
|
||||
|
||||
//TBADDBITMAP addbmp = {_hInst, 0};
|
||||
TBADDBITMAP addbmp = {0, 0};
|
||||
TBADDBITMAP addbmpdyn = {0, 0};
|
||||
for (size_t i = 0 ; i < _nbButtons ; ++i)
|
||||
|
@ -312,7 +341,7 @@ void ToolBar::reset(bool create)
|
|||
{
|
||||
for (size_t j = 0; j < _nbDynButtons; ++j)
|
||||
{
|
||||
addbmpdyn.nID = reinterpret_cast<UINT_PTR>(_vDynBtnReg.at(j).hBmp);
|
||||
addbmpdyn.nID = reinterpret_cast<UINT_PTR>(_vDynBtnReg.at(j)._hBmp);
|
||||
::SendMessage(_hSelf, TB_ADDBITMAP, 1, reinterpret_cast<LPARAM>(&addbmpdyn));
|
||||
}
|
||||
}
|
||||
|
@ -325,9 +354,17 @@ void ToolBar::reset(bool create)
|
|||
WORD btnSize = (_state == TB_LARGE?32:16);
|
||||
::SendMessage(_hSelf, TB_SETBUTTONSIZE , 0, MAKELONG(btnSize, btnSize));
|
||||
::SendMessage(_hSelf, TB_ADDBUTTONS, nbBtnToAdd, reinterpret_cast<LPARAM>(_pTBB));
|
||||
|
||||
HIMAGELIST hImgLst = (HIMAGELIST)::SendMessage(_hSelf, TB_GETIMAGELIST, 0, 0);
|
||||
for (size_t j = 0; j < _nbDynButtons; ++j)
|
||||
{
|
||||
ImageList_AddIcon(hImgLst, _vDynBtnReg.at(j)._hIcon);
|
||||
}
|
||||
}
|
||||
::SendMessage(_hSelf, TB_AUTOSIZE, 0, 0);
|
||||
|
||||
|
||||
|
||||
if (_pRebar)
|
||||
{
|
||||
_rbBand.hwndChild = getHSelf();
|
||||
|
@ -343,12 +380,12 @@ void ToolBar::reset(bool create)
|
|||
void ToolBar::registerDynBtn(UINT messageID, toolbarIcons* tIcon)
|
||||
{
|
||||
// Note: Register of buttons only possible before init!
|
||||
if ((_hSelf == NULL) && (messageID != 0) && (tIcon->hToolbarBmp != NULL))
|
||||
if ((_hSelf == NULL) && (messageID != 0) && (tIcon->hToolbarBmp != NULL) && (tIcon->hToolbarIcon != NULL))
|
||||
{
|
||||
tDynamicList dynList;
|
||||
dynList.message = messageID;
|
||||
dynList.hBmp = tIcon->hToolbarBmp;
|
||||
dynList.hIcon = tIcon->hToolbarIcon;
|
||||
DynamicCmdIcoBmp dynList;
|
||||
dynList._message = messageID;
|
||||
dynList._hBmp = tIcon->hToolbarBmp;
|
||||
dynList._hIcon = tIcon->hToolbarIcon;
|
||||
_vDynBtnReg.push_back(dynList);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -30,15 +30,9 @@
|
|||
#define _WIN32_IE 0x0600
|
||||
#endif //_WIN32_IE
|
||||
|
||||
enum toolBarStatusType {TB_SMALL, TB_LARGE, TB_STANDARD};
|
||||
enum toolBarStatusType {TB_SMALL, TB_LARGE, TB_SMALL2, TB_LARGE2, TB_STANDARD};
|
||||
|
||||
|
||||
typedef struct {
|
||||
UINT message; // identification of icon in tool bar (menu ID)
|
||||
HBITMAP hBmp; // bitmap for toolbar
|
||||
HICON hIcon; // icon for toolbar
|
||||
} tDynamicList;
|
||||
|
||||
struct iconLocator {
|
||||
int listIndex;
|
||||
int iconIndex;
|
||||
|
@ -72,7 +66,9 @@ public :
|
|||
|
||||
void reduce();
|
||||
void enlarge();
|
||||
void setToUglyIcons();
|
||||
void reduceToSet2();
|
||||
void enlargeToSet2();
|
||||
void setToBmpIcons();
|
||||
|
||||
bool getCheckState(int ID2Check) const {
|
||||
return bool(::SendMessage(_hSelf, TB_GETSTATE, ID2Check, 0) & TBSTATE_CHECKED);
|
||||
|
@ -87,8 +83,8 @@ public :
|
|||
};
|
||||
|
||||
bool changeIcons() {
|
||||
if (!_toolIcons)
|
||||
return false;
|
||||
if (!_toolIcons) return false;
|
||||
|
||||
for (size_t i = 0, len = _customIconVect.size(); i < len; ++i)
|
||||
changeIcons(_customIconVect[i].listIndex, _customIconVect[i].iconIndex, (_customIconVect[i].iconLocation).c_str());
|
||||
return true;
|
||||
|
@ -108,7 +104,7 @@ private :
|
|||
TBBUTTON *_pTBB = nullptr;
|
||||
ToolBarIcons _toolBarIcons;
|
||||
toolBarStatusType _state = TB_SMALL;
|
||||
std::vector<tDynamicList> _vDynBtnReg;
|
||||
std::vector<DynamicCmdIcoBmp> _vDynBtnReg;
|
||||
size_t _nbButtons = 0;
|
||||
size_t _nbDynButtons = 0;
|
||||
size_t _nbTotalButtons = 0;
|
||||
|
@ -121,13 +117,19 @@ private :
|
|||
void setDefaultImageList() {
|
||||
::SendMessage(_hSelf, TB_SETIMAGELIST, 0, reinterpret_cast<LPARAM>(_toolBarIcons.getDefaultLst()));
|
||||
};
|
||||
void setHotImageList() {
|
||||
::SendMessage(_hSelf, TB_SETHOTIMAGELIST, 0, reinterpret_cast<LPARAM>(_toolBarIcons.getHotLst()));
|
||||
};
|
||||
|
||||
void setDisableImageList() {
|
||||
::SendMessage(_hSelf, TB_SETDISABLEDIMAGELIST, 0, reinterpret_cast<LPARAM>(_toolBarIcons.getDisableLst()));
|
||||
};
|
||||
|
||||
void setDefaultImageList2() {
|
||||
::SendMessage(_hSelf, TB_SETIMAGELIST, 0, reinterpret_cast<LPARAM>(_toolBarIcons.getDefaultLstSet2()));
|
||||
};
|
||||
|
||||
void setDisableImageList2() {
|
||||
::SendMessage(_hSelf, TB_SETDISABLEDIMAGELIST, 0, reinterpret_cast<LPARAM>(_toolBarIcons.getDisableLstSet2()));
|
||||
};
|
||||
|
||||
void reset(bool create = false);
|
||||
void setState(toolBarStatusType state) {
|
||||
_state = state;
|
||||
|
|
Before Width: | Height: | Size: 3.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 17 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.2 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 3.2 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |
Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB |