mirror of
https://github.com/notepad-plus-plus/notepad-plus-plus.git
synced 2025-07-27 07:44:24 +02:00
Make "Show close/pin button on each inactive tab" optional
Fix #15912, fix #16035, close #16059
This commit is contained in:
parent
26c3008525
commit
8fde4bd8aa
@ -926,6 +926,7 @@ bool Notepad_plus::saveGUIParams()
|
||||
(TabBarPlus::isDbClk2Close() ? TAB_DBCLK2CLOSE : 0) | \
|
||||
(TabBarPlus::isVertical() ? TAB_VERTICAL : 0) | \
|
||||
(TabBarPlus::isMultiLine() ? TAB_MULTILINE : 0) |\
|
||||
(nppGUI._tabStatus & TAB_INACTIVETABSHOWBUTTON) | \
|
||||
(nppGUI._tabStatus & TAB_HIDE) | \
|
||||
(nppGUI._tabStatus & TAB_QUITONEMPTY) | \
|
||||
(nppGUI._tabStatus & TAB_ALTICONS);
|
||||
|
@ -327,24 +327,28 @@ IDR_FILEBROWSER BITMAP "icons/standard/toolbar/fileBrowser.bm
|
||||
IDR_FILEMONITORING BITMAP "icons/standard/toolbar/monitoring.bmp"
|
||||
|
||||
IDR_CLOSETAB ICON "icons/standard/tabbar/closeTabButton.ico"
|
||||
IDR_CLOSETAB_INACT ICON "icons/standard/tabbar/empty.ico"
|
||||
IDR_CLOSETAB_INACT ICON "icons/standard/tabbar/closeTabButton_hoverOnTab.ico"
|
||||
IDR_CLOSETAB_INACT_EMPTY ICON "icons/standard/tabbar/empty.ico"
|
||||
IDR_CLOSETAB_HOVERIN ICON "icons/standard/tabbar/closeTabButton_hoverIn.ico"
|
||||
IDR_CLOSETAB_HOVERONTAB ICON "icons/standard/tabbar/closeTabButton_hoverOnTab.ico"
|
||||
IDR_CLOSETAB_PUSH ICON "icons/standard/tabbar/closeTabButton_push.ico"
|
||||
IDR_CLOSETAB_DM ICON "icons/dark/tabbar/closeTabButton.ico"
|
||||
IDR_CLOSETAB_INACT_DM ICON "icons/dark/tabbar/empty.ico"
|
||||
IDR_CLOSETAB_INACT_DM ICON "icons/dark/tabbar/closeTabButton.ico"
|
||||
IDR_CLOSETAB_INACT_EMPTY_DM ICON "icons/dark/tabbar/empty.ico"
|
||||
IDR_CLOSETAB_HOVERIN_DM ICON "icons/dark/tabbar/closeTabButton_hoverIn.ico"
|
||||
IDR_CLOSETAB_HOVERONTAB_DM ICON "icons/dark/tabbar/closeTabButton_hoverOnTab.ico"
|
||||
IDR_CLOSETAB_PUSH_DM ICON "icons/dark/tabbar/closeTabButton_push.ico"
|
||||
|
||||
IDR_PINTAB ICON "icons/standard/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_INACT ICON "icons/standard/tabbar/empty.ico"
|
||||
IDR_PINTAB_INACT ICON "icons/standard/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_INACT_EMPTY ICON "icons/standard/tabbar/empty.ico"
|
||||
IDR_PINTAB_HOVERIN ICON "icons/standard/tabbar/pinTabButton_pinned.ico"
|
||||
IDR_PINTAB_HOVERONTAB ICON "icons/standard/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_PINNED ICON "icons/standard/tabbar/pinTabButton_pinned.ico"
|
||||
IDR_PINTAB_PINNEDHOVERIN ICON "icons/standard/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_DM ICON "icons/dark/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_INACT_DM ICON "icons/dark/tabbar/empty.ico"
|
||||
IDR_PINTAB_INACT_DM ICON "icons/dark/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_INACT_EMPTY_DM ICON "icons/dark/tabbar/empty.ico"
|
||||
IDR_PINTAB_HOVERIN_DM ICON "icons/dark/tabbar/pinTabButton_pinned.ico"
|
||||
IDR_PINTAB_HOVERONTAB_DM ICON "icons/dark/tabbar/pinTabButton.ico"
|
||||
IDR_PINTAB_PINNED_DM ICON "icons/dark/tabbar/pinTabButton_pinned.ico"
|
||||
|
@ -4088,6 +4088,19 @@ LRESULT Notepad_plus::process(HWND hwnd, UINT message, WPARAM wParam, LPARAM lPa
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case NPPM_INTERNAL_DRAWINACTIVETABBARBUTTON:
|
||||
{
|
||||
::SendMessage(_mainDocTab.getHSelf(), NPPM_INTERNAL_REFRESHDARKMODE, 0, 0);
|
||||
::SendMessage(_subDocTab.getHSelf(), NPPM_INTERNAL_REFRESHDARKMODE, 0, 0);
|
||||
|
||||
::SendMessage(_pPublicInterface->getHSelf(), WM_SIZE, 0, 0);
|
||||
_mainDocTab.refresh();
|
||||
_subDocTab.refresh();
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
default:
|
||||
{
|
||||
if (message == WDN_NOTIFY)
|
||||
|
@ -4932,6 +4932,17 @@ void NppParameters::feedGUIParameters(TiXmlNode *node)
|
||||
_nppGUI._tabStatus |= TAB_PINBUTTON;
|
||||
}
|
||||
|
||||
val = element->Attribute(L"buttonsOninactiveTabs");
|
||||
if (val)
|
||||
{
|
||||
if (!lstrcmp(val, L"yes"))
|
||||
_nppGUI._tabStatus |= TAB_INACTIVETABSHOWBUTTON;
|
||||
else if (!lstrcmp(val, L"no"))
|
||||
_nppGUI._tabStatus |= 0;
|
||||
else
|
||||
isFailed = true;
|
||||
}
|
||||
|
||||
val = element->Attribute(L"doubleClick2Close");
|
||||
if (val)
|
||||
{
|
||||
@ -7282,6 +7293,9 @@ void NppParameters::createXmlTreeFromGUIParams()
|
||||
pStr = (_nppGUI._tabStatus & TAB_PINBUTTON) ? L"yes" : L"no";
|
||||
GUIConfigElement->SetAttribute(L"pinButton", pStr);
|
||||
|
||||
pStr = (_nppGUI._tabStatus & TAB_INACTIVETABSHOWBUTTON) ? L"yes" : L"no";
|
||||
GUIConfigElement->SetAttribute(L"buttonsOninactiveTabs", pStr);
|
||||
|
||||
pStr = (_nppGUI._tabStatus & TAB_DBCLK2CLOSE) ? L"yes" : L"no";
|
||||
GUIConfigElement->SetAttribute(L"doubleClick2Close", pStr);
|
||||
|
||||
|
@ -64,18 +64,19 @@ const int UDD_DOCKED = 2; // 0000 0010
|
||||
// 2 : 0000 0010 hide & docked
|
||||
// 3 : 0000 0011 show & docked
|
||||
|
||||
const int TAB_DRAWTOPBAR = 1; //0000 0000 0001
|
||||
const int TAB_DRAWINACTIVETAB = 2; //0000 0000 0010
|
||||
const int TAB_DRAGNDROP = 4; //0000 0000 0100
|
||||
const int TAB_REDUCE = 8; //0000 0000 1000
|
||||
const int TAB_CLOSEBUTTON = 16; //0000 0001 0000
|
||||
const int TAB_DBCLK2CLOSE = 32; //0000 0010 0000
|
||||
const int TAB_VERTICAL = 64; //0000 0100 0000
|
||||
const int TAB_MULTILINE = 128; //0000 1000 0000
|
||||
const int TAB_HIDE = 256; //0001 0000 0000
|
||||
const int TAB_QUITONEMPTY = 512; //0010 0000 0000
|
||||
const int TAB_ALTICONS = 1024; //0100 0000 0000
|
||||
const int TAB_PINBUTTON = 2048; //1000 0000 0000
|
||||
const int TAB_DRAWTOPBAR = 1; // 0000 0000 0000 0001
|
||||
const int TAB_DRAWINACTIVETAB = 2; // 0000 0000 0000 0010
|
||||
const int TAB_DRAGNDROP = 4; // 0000 0000 0000 0100
|
||||
const int TAB_REDUCE = 8; // 0000 0000 0000 1000
|
||||
const int TAB_CLOSEBUTTON = 16; // 0000 0000 0001 0000
|
||||
const int TAB_DBCLK2CLOSE = 32; // 0000 0000 0010 0000
|
||||
const int TAB_VERTICAL = 64; // 0000 0000 0100 0000
|
||||
const int TAB_MULTILINE = 128; // 0000 0000 1000 0000
|
||||
const int TAB_HIDE = 256; // 0000 0001 0000 0000
|
||||
const int TAB_QUITONEMPTY = 512; // 0000 0010 0000 0000
|
||||
const int TAB_ALTICONS = 1024; // 0000 0100 0000 0000
|
||||
const int TAB_PINBUTTON = 2048; // 0000 1000 0000 0000
|
||||
const int TAB_INACTIVETABSHOWBUTTON = 4096; // 0001 0000 0000 0000
|
||||
|
||||
const bool activeText = true;
|
||||
const bool activeNumeric = false;
|
||||
|
@ -38,33 +38,38 @@ IDD_PREFERENCE_SUB_GENRAL DIALOGEX 115, 10, 460, 205
|
||||
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||
BEGIN
|
||||
GROUPBOX "Localization",IDC_LOCALIZATION_GB_STATIC,27,0,186,36,BS_CENTER
|
||||
COMBOBOX IDC_COMBO_LOCALIZATION,60,14,125,80,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
GROUPBOX "Status Bar",IDC_STATUSBAR_GB_STATIC,27,39,186,31,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDESTATUSBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,33,52,174,10
|
||||
GROUPBOX "Toolbar",IDC_TOOLBAR_GB_STATIC,27,75,186,91,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,33,84,100,10
|
||||
CONTROL "Fluent UI: small",IDC_RADIO_SMALLICON,"Button",BS_AUTORADIOBUTTON,33,100,174,10
|
||||
CONTROL "Fluent UI: large",IDC_RADIO_BIGICON,"Button",BS_AUTORADIOBUTTON,33,113,174,10
|
||||
CONTROL "Filled Fluent UI: small",IDC_RADIO_SMALLICON2,"Button",BS_AUTORADIOBUTTON,33,126,174,10
|
||||
CONTROL "Filled Fluent UI: large",IDC_RADIO_BIGICON2,"Button",BS_AUTORADIOBUTTON,33,139,174,10
|
||||
CONTROL "Standard icons: small",IDC_RADIO_STANDARD,"Button",BS_AUTORADIOBUTTON,33,152,174,10
|
||||
GROUPBOX "Tab Bar",IDC_TABBAR_GB_STATIC,223,0,177,166,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_TAB_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,8,100,10
|
||||
CONTROL "Multi-line",IDC_CHECK_TAB_MULTILINE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,21,164,10
|
||||
CONTROL "Vertical",IDC_CHECK_TAB_VERTICAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,34,164,10
|
||||
CONTROL "Reduce",IDC_CHECK_REDUCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,47,164,10
|
||||
CONTROL "Alternate icons",IDC_CHECK_TAB_ALTICONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,60,164,10
|
||||
CONTROL "Lock (no drag and drop)",IDC_CHECK_LOCK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,73,164,10
|
||||
CONTROL "Change inactive tab color",IDC_CHECK_DRAWINACTIVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,86,164,10
|
||||
CONTROL "Draw a coloured bar on active tab",IDC_CHECK_ORANGE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,99,164,10
|
||||
CONTROL "Show close button",IDC_CHECK_ENABLETABCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,112,164,10
|
||||
CONTROL "Enable pin tab feature", IDC_CHECK_ENABLETABPIN,"Button", BS_AUTOCHECKBOX | WS_TABSTOP, 229, 125, 164, 10
|
||||
CONTROL "Double click to close document",IDC_CHECK_DBCLICK2CLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,138,164,10
|
||||
CONTROL "Exit on close the last tab",IDC_CHECK_TAB_LAST_EXIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,229,151,164,10
|
||||
GROUPBOX "Menu",IDC_MENU_GB_STATIC,27,168,373,34,BS_CENTER
|
||||
CONTROL "Hide menu bar (use Alt or F10 key to toggle)",IDC_CHECK_HIDEMENUBAR, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,33,176,218,10
|
||||
CONTROL "Hide right shortcuts + ? ? from the menu bar (Need to restart Notepad++)",IDC_CHECK_HIDERIGHTSHORTCUTSOFMENUBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,33,189,350,10
|
||||
GROUPBOX "Localization",IDC_LOCALIZATION_GB_STATIC,39,0,186,36,BS_CENTER
|
||||
COMBOBOX IDC_COMBO_LOCALIZATION,72,14,125,80,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
||||
|
||||
GROUPBOX "Menu",IDC_MENU_GB_STATIC,39,39,186,34,BS_CENTER
|
||||
CONTROL "Hide (use Alt or F10 key to toggle)",IDC_CHECK_HIDEMENUBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,45,47,174,10
|
||||
CONTROL "Hide right shortcuts + ▼ ✕",IDC_CHECK_HIDERIGHTSHORTCUTSOFMENUBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,45,60,174,10
|
||||
|
||||
GROUPBOX "Toolbar",IDC_TOOLBAR_GB_STATIC,39,75,186,91,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,45,84,100,10
|
||||
CONTROL "Fluent UI: small",IDC_RADIO_SMALLICON,"Button",BS_AUTORADIOBUTTON,45,100,174,10
|
||||
CONTROL "Fluent UI: large",IDC_RADIO_BIGICON,"Button",BS_AUTORADIOBUTTON,45,113,174,10
|
||||
CONTROL "Filled Fluent UI: small",IDC_RADIO_SMALLICON2,"Button",BS_AUTORADIOBUTTON,45,126,174,10
|
||||
CONTROL "Filled Fluent UI: large",IDC_RADIO_BIGICON2,"Button",BS_AUTORADIOBUTTON,45,139,174,10
|
||||
CONTROL "Standard icons: small",IDC_RADIO_STANDARD,"Button",BS_AUTORADIOBUTTON,45,152,174,10
|
||||
|
||||
GROUPBOX "Status Bar",IDC_STATUSBAR_GB_STATIC,39,169,186,26,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_HIDESTATUSBAR,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,45,179,174,10
|
||||
|
||||
GROUPBOX "Tab Bar",IDC_TABBAR_GB_STATIC,235,0,177,195,BS_CENTER
|
||||
CONTROL "Hide",IDC_CHECK_TAB_HIDE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,15,100,10
|
||||
CONTROL "Multi-line",IDC_CHECK_TAB_MULTILINE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,28,164,10
|
||||
CONTROL "Vertical",IDC_CHECK_TAB_VERTICAL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,41,164,10
|
||||
CONTROL "Reduce",IDC_CHECK_REDUCE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,54,164,10
|
||||
CONTROL "Alternate icons",IDC_CHECK_TAB_ALTICONS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,67,164,10
|
||||
CONTROL "Lock (no drag and drop)",IDC_CHECK_LOCK,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,80,164,10
|
||||
CONTROL "Change inactive tab color",IDC_CHECK_DRAWINACTIVE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,93,164,10
|
||||
CONTROL "Draw a coloured bar on active tab",IDC_CHECK_ORANGE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,106,164,10
|
||||
CONTROL "Show close button",IDC_CHECK_ENABLETABCLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,119,164,10
|
||||
CONTROL "Enable pin tab feature",IDC_CHECK_ENABLETABPIN,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,132,164,10
|
||||
CONTROL "Show buttons on inactive tabs",IDC_CHECK_INACTTABDRAWBUTTON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,144,164,10
|
||||
CONTROL "Double click to close document",IDC_CHECK_DBCLICK2CLOSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,157,164,10
|
||||
CONTROL "Exit on close the last tab",IDC_CHECK_TAB_LAST_EXIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,241,170,164,10
|
||||
END
|
||||
|
||||
IDD_PREFERENCE_SUB_EDITING DIALOGEX 115, 10, 460, 205
|
||||
|
@ -575,7 +575,7 @@ intptr_t CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
|
||||
{
|
||||
case WM_INITDIALOG :
|
||||
{
|
||||
const NppGUI & nppGUI = nppParam.getNppGUI();
|
||||
NppGUI & nppGUI = nppParam.getNppGUI();
|
||||
toolBarStatusType tbStatus = nppGUI._toolBarStatus;
|
||||
int tabBarStatus = nppGUI._tabStatus;
|
||||
bool showTool = nppGUI._toolbarShow;
|
||||
@ -609,8 +609,22 @@ intptr_t CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_LOCK, BM_SETCHECK, !(tabBarStatus & TAB_DRAGNDROP), 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ORANGE, BM_SETCHECK, tabBarStatus & TAB_DRAWTOPBAR, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_DRAWINACTIVE, BM_SETCHECK, tabBarStatus & TAB_DRAWINACTIVETAB, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLETABCLOSE, BM_SETCHECK, tabBarStatus & TAB_CLOSEBUTTON, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLETABPIN, BM_SETCHECK, tabBarStatus & TAB_PINBUTTON, 0);
|
||||
|
||||
bool showCloseButton = tabBarStatus & TAB_CLOSEBUTTON;
|
||||
bool enablePinButton = tabBarStatus & TAB_PINBUTTON;
|
||||
bool showButtonOnInactiveTabs = tabBarStatus & TAB_INACTIVETABSHOWBUTTON;
|
||||
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLETABCLOSE, BM_SETCHECK, showCloseButton, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLETABPIN, BM_SETCHECK, enablePinButton, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_INACTTABDRAWBUTTON, BM_SETCHECK, showButtonOnInactiveTabs, 0);
|
||||
|
||||
if (!(showCloseButton || enablePinButton))
|
||||
{
|
||||
nppGUI._tabStatus &= ~TAB_INACTIVETABSHOWBUTTON;
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_INACTTABDRAWBUTTON, BM_SETCHECK, FALSE, 0);
|
||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_INACTTABDRAWBUTTON), FALSE);
|
||||
}
|
||||
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_DBCLICK2CLOSE, BM_SETCHECK, tabBarStatus & TAB_DBCLK2CLOSE, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_TAB_VERTICAL, BM_SETCHECK, tabBarStatus & TAB_VERTICAL, 0);
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_TAB_MULTILINE, BM_SETCHECK, tabBarStatus & TAB_MULTILINE, 0);
|
||||
@ -753,13 +767,36 @@ intptr_t CALLBACK GeneralSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
|
||||
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_DRAWINACIVETAB, 0, 0);
|
||||
return TRUE;
|
||||
|
||||
case IDC_CHECK_ENABLETABCLOSE :
|
||||
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_DRAWTABBARCLOSEBUTTON, 0, 0);
|
||||
return TRUE;
|
||||
|
||||
case IDC_CHECK_ENABLETABCLOSE:
|
||||
case IDC_CHECK_ENABLETABPIN:
|
||||
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_DRAWTABBARPINBUTTON, 0, 0);
|
||||
{
|
||||
::SendMessage(::GetParent(_hParent), wParam == IDC_CHECK_ENABLETABCLOSE ? NPPM_INTERNAL_DRAWTABBARCLOSEBUTTON : NPPM_INTERNAL_DRAWTABBARPINBUTTON, 0, 0);
|
||||
|
||||
bool showCloseButton = isCheckedOrNot(IDC_CHECK_ENABLETABCLOSE);
|
||||
bool enablePinButton = isCheckedOrNot(IDC_CHECK_ENABLETABPIN);
|
||||
|
||||
if (!(showCloseButton || enablePinButton))
|
||||
{
|
||||
nppParam.getNppGUI()._tabStatus &= ~TAB_INACTIVETABSHOWBUTTON;
|
||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_INACTTABDRAWBUTTON, BM_SETCHECK, FALSE, 0);
|
||||
}
|
||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_INACTTABDRAWBUTTON), showCloseButton || enablePinButton);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case IDC_CHECK_INACTTABDRAWBUTTON:
|
||||
{
|
||||
const bool isChecked = isCheckedOrNot(IDC_CHECK_INACTTABDRAWBUTTON);
|
||||
NppGUI& nppgui = nppParam.getNppGUI();
|
||||
if (isChecked)
|
||||
nppgui._tabStatus |= TAB_INACTIVETABSHOWBUTTON;
|
||||
else
|
||||
nppgui._tabStatus &= ~TAB_INACTIVETABSHOWBUTTON;
|
||||
|
||||
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_DRAWINACTIVETABBARBUTTON, 0, 0);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
case IDC_CHECK_DBCLICK2CLOSE :
|
||||
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_TABDBCLK2CLOSE, 0, 0);
|
||||
|
@ -36,7 +36,7 @@
|
||||
#define IDC_CHECK_LOCK (IDD_PREFERENCE_SUB_GENRAL + 8)
|
||||
#define IDC_CHECK_DRAWINACTIVE (IDD_PREFERENCE_SUB_GENRAL + 9)
|
||||
#define IDC_CHECK_ORANGE (IDD_PREFERENCE_SUB_GENRAL + 10)
|
||||
//#define IDC_CHECK_SHOWSTATUSBAR (IDD_PREFERENCE_SUB_GENRAL + 11)
|
||||
#define IDC_CHECK_INACTTABDRAWBUTTON (IDD_PREFERENCE_SUB_GENRAL + 11)
|
||||
#define IDC_CHECK_ENABLETABCLOSE (IDD_PREFERENCE_SUB_GENRAL + 12)
|
||||
#define IDC_CHECK_DBCLICK2CLOSE (IDD_PREFERENCE_SUB_GENRAL + 13)
|
||||
#define IDC_CHECK_ENABLEDOCSWITCHER (IDD_PREFERENCE_SUB_GENRAL + 14)
|
||||
|
@ -521,15 +521,27 @@ void TabBarPlus::setCloseBtnImageList()
|
||||
int iconSize = 0;
|
||||
std::vector<int> ids;
|
||||
|
||||
NppParameters& nppParam = NppParameters::getInstance();
|
||||
bool showInactiveTabButtons = nppParam.getNppGUI()._tabStatus & TAB_INACTIVETABSHOWBUTTON;
|
||||
|
||||
if (NppDarkMode::isEnabled())
|
||||
{
|
||||
iconSize = g_TabCloseBtnSize_DM;
|
||||
|
||||
if (showInactiveTabButtons)
|
||||
ids = { IDR_CLOSETAB_DM, IDR_CLOSETAB_INACT_DM, IDR_CLOSETAB_HOVERIN_DM, IDR_CLOSETAB_HOVERONTAB_DM, IDR_CLOSETAB_PUSH_DM };
|
||||
else
|
||||
ids = { IDR_CLOSETAB_DM, IDR_CLOSETAB_INACT_EMPTY_DM, IDR_CLOSETAB_HOVERIN_DM, IDR_CLOSETAB_HOVERONTAB_DM, IDR_CLOSETAB_PUSH_DM };
|
||||
}
|
||||
else
|
||||
{
|
||||
iconSize = g_TabCloseBtnSize;
|
||||
|
||||
if (showInactiveTabButtons)
|
||||
ids = { IDR_CLOSETAB, IDR_CLOSETAB_INACT, IDR_CLOSETAB_HOVERIN, IDR_CLOSETAB_HOVERONTAB, IDR_CLOSETAB_PUSH };
|
||||
else
|
||||
ids = { IDR_CLOSETAB, IDR_CLOSETAB_INACT_EMPTY, IDR_CLOSETAB_HOVERIN, IDR_CLOSETAB_HOVERONTAB, IDR_CLOSETAB_PUSH };
|
||||
|
||||
}
|
||||
|
||||
if (_hCloseBtnImgLst != nullptr)
|
||||
@ -560,15 +572,26 @@ void TabBarPlus::setPinBtnImageList()
|
||||
int iconSize = 0;
|
||||
std::vector<int> ids;
|
||||
|
||||
NppParameters& nppParam = NppParameters::getInstance();
|
||||
bool showInactiveTabButtons = nppParam.getNppGUI()._tabStatus & TAB_INACTIVETABSHOWBUTTON;
|
||||
|
||||
if (NppDarkMode::isEnabled())
|
||||
{
|
||||
iconSize = g_TabPinBtnSize_DM;
|
||||
|
||||
if (showInactiveTabButtons)
|
||||
ids = { IDR_PINTAB_DM, IDR_PINTAB_INACT_DM, IDR_PINTAB_HOVERIN_DM, IDR_PINTAB_HOVERONTAB_DM, IDR_PINTAB_PINNED_DM, IDR_PINTAB_PINNEDHOVERIN_DM };
|
||||
else
|
||||
ids = { IDR_PINTAB_DM, IDR_PINTAB_INACT_EMPTY_DM, IDR_PINTAB_HOVERIN_DM, IDR_PINTAB_HOVERONTAB_DM, IDR_PINTAB_PINNED_DM, IDR_PINTAB_PINNEDHOVERIN_DM };
|
||||
}
|
||||
else
|
||||
{
|
||||
iconSize = g_TabPinBtnSize;
|
||||
|
||||
if (showInactiveTabButtons)
|
||||
ids = { IDR_PINTAB, IDR_PINTAB_INACT, IDR_PINTAB_HOVERIN, IDR_PINTAB_HOVERONTAB, IDR_PINTAB_PINNED, IDR_PINTAB_PINNEDHOVERIN };
|
||||
else
|
||||
ids = { IDR_PINTAB, IDR_PINTAB_INACT_EMPTY, IDR_PINTAB_HOVERIN, IDR_PINTAB_HOVERONTAB, IDR_PINTAB_PINNED, IDR_PINTAB_PINNEDHOVERIN };
|
||||
}
|
||||
|
||||
if (_hPinBtnImgLst != nullptr)
|
||||
|
@ -371,54 +371,58 @@
|
||||
#define IDR_FILEBROWSER 1529
|
||||
#define IDR_CLOSETAB 1530
|
||||
#define IDR_CLOSETAB_INACT 1531
|
||||
#define IDR_CLOSETAB_HOVERIN 1532
|
||||
#define IDR_CLOSETAB_HOVERONTAB 1533
|
||||
#define IDR_CLOSETAB_PUSH 1534
|
||||
#define IDR_FUNC_LIST_ICO 1535
|
||||
#define IDR_DOCMAP_ICO 1536
|
||||
#define IDR_PROJECTPANEL_ICO 1537
|
||||
#define IDR_CLIPBOARDPANEL_ICO 1538
|
||||
#define IDR_ASCIIPANEL_ICO 1539
|
||||
#define IDR_DOCSWITCHER_ICO 1540
|
||||
#define IDR_FILEBROWSER_ICO 1541
|
||||
#define IDR_FILEMONITORING 1542
|
||||
#define IDR_CLOSETAB_DM 1543
|
||||
#define IDR_CLOSETAB_INACT_DM 1544
|
||||
#define IDR_CLOSETAB_HOVERIN_DM 1545
|
||||
#define IDR_CLOSETAB_HOVERONTAB_DM 1546
|
||||
#define IDR_CLOSETAB_PUSH_DM 1547
|
||||
#define IDR_DOCLIST 1548
|
||||
#define IDR_DOCLIST_ICO 1549
|
||||
#define IDR_CLOSETAB_INACT_EMPTY 1532
|
||||
#define IDR_CLOSETAB_HOVERIN 1533
|
||||
#define IDR_CLOSETAB_HOVERONTAB 1534
|
||||
#define IDR_CLOSETAB_PUSH 1535
|
||||
#define IDR_FUNC_LIST_ICO 1536
|
||||
#define IDR_DOCMAP_ICO 1537
|
||||
#define IDR_PROJECTPANEL_ICO 1538
|
||||
#define IDR_CLIPBOARDPANEL_ICO 1539
|
||||
#define IDR_ASCIIPANEL_ICO 1540
|
||||
#define IDR_DOCSWITCHER_ICO 1541
|
||||
#define IDR_FILEBROWSER_ICO 1542
|
||||
#define IDR_FILEMONITORING 1543
|
||||
#define IDR_CLOSETAB_DM 1544
|
||||
#define IDR_CLOSETAB_INACT_DM 1545
|
||||
#define IDR_CLOSETAB_INACT_EMPTY_DM 1546
|
||||
#define IDR_CLOSETAB_HOVERIN_DM 1547
|
||||
#define IDR_CLOSETAB_HOVERONTAB_DM 1548
|
||||
#define IDR_CLOSETAB_PUSH_DM 1549
|
||||
#define IDR_DOCLIST 1550
|
||||
#define IDR_DOCLIST_ICO 1551
|
||||
|
||||
#define IDR_FILEBROWSER_ICO2 1550
|
||||
#define IDR_FILEBROWSER_ICO_DM 1551
|
||||
#define IDR_FUNC_LIST_ICO2 1552
|
||||
#define IDR_FUNC_LIST_ICO_DM 1553
|
||||
#define IDR_DOCMAP_ICO2 1554
|
||||
#define IDR_DOCMAP_ICO_DM 1555
|
||||
#define IDR_DOCLIST_ICO2 1556
|
||||
#define IDR_DOCLIST_ICO_DM 1557
|
||||
#define IDR_PROJECTPANEL_ICO2 1558
|
||||
#define IDR_PROJECTPANEL_ICO_DM 1559
|
||||
#define IDR_CLIPBOARDPANEL_ICO2 1560
|
||||
#define IDR_CLIPBOARDPANEL_ICO_DM 1561
|
||||
#define IDR_ASCIIPANEL_ICO2 1562
|
||||
#define IDR_ASCIIPANEL_ICO_DM 1563
|
||||
#define IDR_FIND_RESULT_ICO2 1564
|
||||
#define IDR_FIND_RESULT_ICO_DM 1565
|
||||
#define IDR_FILEBROWSER_ICO2 1552
|
||||
#define IDR_FILEBROWSER_ICO_DM 1553
|
||||
#define IDR_FUNC_LIST_ICO2 1554
|
||||
#define IDR_FUNC_LIST_ICO_DM 1555
|
||||
#define IDR_DOCMAP_ICO2 1556
|
||||
#define IDR_DOCMAP_ICO_DM 1557
|
||||
#define IDR_DOCLIST_ICO2 1558
|
||||
#define IDR_DOCLIST_ICO_DM 1559
|
||||
#define IDR_PROJECTPANEL_ICO2 1560
|
||||
#define IDR_PROJECTPANEL_ICO_DM 1561
|
||||
#define IDR_CLIPBOARDPANEL_ICO2 1562
|
||||
#define IDR_CLIPBOARDPANEL_ICO_DM 1563
|
||||
#define IDR_ASCIIPANEL_ICO2 1564
|
||||
#define IDR_ASCIIPANEL_ICO_DM 1565
|
||||
#define IDR_FIND_RESULT_ICO2 1566
|
||||
#define IDR_FIND_RESULT_ICO_DM 1567
|
||||
|
||||
#define IDR_PINTAB 1566
|
||||
#define IDR_PINTAB_INACT 1567
|
||||
#define IDR_PINTAB_HOVERIN 1568
|
||||
#define IDR_PINTAB_HOVERONTAB 1569
|
||||
#define IDR_PINTAB_PINNED 1570
|
||||
#define IDR_PINTAB_PINNEDHOVERIN 1571
|
||||
#define IDR_PINTAB_DM 1572
|
||||
#define IDR_PINTAB_INACT_DM 1573
|
||||
#define IDR_PINTAB_HOVERIN_DM 1574
|
||||
#define IDR_PINTAB_HOVERONTAB_DM 1575
|
||||
#define IDR_PINTAB_PINNED_DM 1576
|
||||
#define IDR_PINTAB_PINNEDHOVERIN_DM 1577
|
||||
#define IDR_PINTAB 1568
|
||||
#define IDR_PINTAB_INACT 1569
|
||||
#define IDR_PINTAB_INACT_EMPTY 1570
|
||||
#define IDR_PINTAB_HOVERIN 1571
|
||||
#define IDR_PINTAB_HOVERONTAB 1572
|
||||
#define IDR_PINTAB_PINNED 1573
|
||||
#define IDR_PINTAB_PINNEDHOVERIN 1574
|
||||
#define IDR_PINTAB_DM 1575
|
||||
#define IDR_PINTAB_INACT_DM 1576
|
||||
#define IDR_PINTAB_INACT_EMPTY_DM 1577
|
||||
#define IDR_PINTAB_HOVERIN_DM 1578
|
||||
#define IDR_PINTAB_HOVERONTAB_DM 1579
|
||||
#define IDR_PINTAB_PINNED_DM 1580
|
||||
#define IDR_PINTAB_PINNEDHOVERIN_DM 1581
|
||||
|
||||
#define ID_MACRO 20000
|
||||
// O .
|
||||
@ -714,7 +718,7 @@
|
||||
#define NPPM_INTERNAL_DOCMODIFIEDBYREPLACEALL (NOTEPADPLUS_USER_INTERNAL + 79)
|
||||
#define NPPM_INTERNAL_DRAWTABBARPINBUTTON (NOTEPADPLUS_USER_INTERNAL + 80)
|
||||
#define NPPM_INTERNAL_DRAWTABBARCLOSEBUTTON (NOTEPADPLUS_USER_INTERNAL + 81)
|
||||
//#define NPPM_INTERNAL_REFRESHTABAR (NOTEPADPLUS_USER_INTERNAL + 82)
|
||||
#define NPPM_INTERNAL_DRAWINACTIVETABBARBUTTON (NOTEPADPLUS_USER_INTERNAL + 82)
|
||||
#define NPPM_INTERNAL_REDUCETABBAR (NOTEPADPLUS_USER_INTERNAL + 83)
|
||||
#define NPPM_INTERNAL_LOCKTABBAR (NOTEPADPLUS_USER_INTERNAL + 84)
|
||||
#define NPPM_INTERNAL_DRAWINACIVETAB (NOTEPADPLUS_USER_INTERNAL + 85)
|
||||
|
Loading…
x
Reference in New Issue
Block a user