Make find dlg status msgs color customizable via Style Configurator

Fix #5087, close #15597
This commit is contained in:
Don Ho 2024-09-01 20:37:31 +02:00
parent 43ebe796af
commit a866900c8d
34 changed files with 228 additions and 77 deletions

View File

@ -1008,6 +1008,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart HighLighting" styleID="29" bgColor="FF0080" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="EDD400" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1006,6 +1006,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -998,6 +998,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="EDD400" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1117,6 +1117,9 @@ Installation : Copy this file to "%APPDATA%\Notepad++\themes" and in a portable
<WidgetStyle name="White space symbol" styleID="0" fgColor="4D4D4D" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="2E2E2E" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="2E2E2E" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="88B090" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="F8F893" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="F18C96" />

View File

@ -1730,6 +1730,9 @@ License: GPL2
<WidgetStyle name="White space symbol" styleID="0" fgColor="5F5F5F" />
<WidgetStyle name="Smart HighLighting" styleID="29" bgColor="358A35" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0080" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="88B090" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="F8F893" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="F18C96" />

View File

@ -1003,6 +1003,9 @@ https://notepad-plus-plus.org/donate/
<WidgetStyle name="White space symbol" styleID="0" fgColor="FF8080" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="80FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -975,6 +975,9 @@ so your enhanced file can be included in Notepad++ future release.
<WidgetStyle name="White space symbol" styleID="0" fgColor="FFB56A" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1132,6 +1132,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="CFBA28" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="008947" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="7578DB" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="C11418" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="0088CE" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="BCBB80" />

View File

@ -1002,6 +1002,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1018,6 +1018,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1132,6 +1132,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FFC973" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="BF8830" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="6A1A01" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="FDD64A" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="AFCF90" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFDC87" />

View File

@ -1129,6 +1129,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="106060" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="BCBCBC" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="3B4092" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="870087" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="C00058" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="181880" />

View File

@ -1006,6 +1006,9 @@ Notepad++ Custom Style
<WidgetStyle name="White space symbol" styleID="0" fgColor="343F43" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="56676D" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="6B8189" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00659B" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="00880B" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="A6AA00" />

View File

@ -1014,6 +1014,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -852,6 +852,9 @@ http://sourceforge.net/donate/index.php?group_id=95717
<WidgetStyle name="White space symbol" styleID="0" fgColor="FF8080" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1140,6 +1140,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="B58900" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="002B36" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="6C71C4" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="DC322F" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="268BD2" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="2AA198" />

View File

@ -1530,6 +1530,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="B58900" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="FDF6E3" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="6C71C4" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="DC322F" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="268BD2" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="2AA198" />

View File

@ -1003,6 +1003,9 @@ Credits:
<WidgetStyle name="White space symbol" styleID="0" fgColor="FCAF3E" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="8000FF" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -974,6 +974,9 @@ http://sourceforge.net/donate/index.php?group_id=95717
<WidgetStyle name="White space symbol" styleID="0" fgColor="FF8080" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -1698,6 +1698,9 @@ License: GPL2
<WidgetStyle name="White space symbol" styleID="0" fgColor="5F5F5F" />
<WidgetStyle name="Smart HighLighting" styleID="29" bgColor="358A35" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0080" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="88B090" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="F8F893" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="F18C96" />

View File

@ -1129,6 +1129,9 @@ Installation:
<WidgetStyle name="White space symbol" styleID="0" fgColor="005F00" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="D7FF87" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="D7FF87" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="AF5F00" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="005F5F" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="AFAF87" />

View File

@ -966,6 +966,9 @@
<WidgetStyle name="White space symbol" styleID="0" fgColor="004040" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="2050D0" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="000040" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />

View File

@ -2715,7 +2715,7 @@ void Notepad_plus::setupColorSampleBitmapsOnMainMenuItems()
// Adds tab colour icons
for (int i = 0; i < 5; ++i)
{
COLORREF colour = nppParam.getIndividualTabColour(i, NppDarkMode::isDarkMenuEnabled(), true);
COLORREF colour = nppParam.getIndividualTabColor(i, NppDarkMode::isDarkMenuEnabled(), true);
HBITMAP hBitmap = generateSolidColourMenuItemIcon(colour);
SetMenuItemBitmaps(_mainMenuHandle, IDM_VIEW_TAB_COLOUR_1 + i, MF_BYCOMMAND, hBitmap, hBitmap);
}

View File

@ -2308,6 +2308,8 @@ LRESULT Notepad_plus::process(HWND hwnd, UINT message, WPARAM wParam, LPARAM lPa
addHotSpot(& _subEditView);
_findReplaceDlg.updateFinderScintilla();
_findReplaceDlg.redraw();
drawTabbarColoursFromStylerArray();

View File

@ -581,7 +581,7 @@ BOOL Notepad_plus::notify(SCNotification *notification)
// Adds colour icons
for (int i = 0; i < 5; ++i)
{
COLORREF colour = nppParam.getIndividualTabColour(i, NppDarkMode::isDarkMenuEnabled(), true);
COLORREF colour = nppParam.getIndividualTabColor(i, NppDarkMode::isDarkMenuEnabled(), true);
HBITMAP hBitmap = generateSolidColourMenuItemIcon(colour);
SetMenuItemBitmaps(_tabPopupMenu.getMenuHandle(), IDM_VIEW_TAB_COLOUR_1 + i, MF_BYCOMMAND, hBitmap, hBitmap);
}

View File

@ -8833,82 +8833,82 @@ void NppParameters::initTabCustomColors()
{
StyleArray& stylers = getMiscStylerArray();
const Style* pStyle = stylers.findByName(L"Tab color 1");
const Style* pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_1);
if (pStyle)
{
individualTabHues[0].changeHLSFrom(pStyle->_bgColor);
individualTabHues[0].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color 2");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_2);
if (pStyle)
{
individualTabHues[1].changeHLSFrom(pStyle->_bgColor);
individualTabHues[1].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color 3");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_3);
if (pStyle)
{
individualTabHues[2].changeHLSFrom(pStyle->_bgColor);
individualTabHues[2].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color 4");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_4);
if (pStyle)
{
individualTabHues[3].changeHLSFrom(pStyle->_bgColor);
individualTabHues[3].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color 5");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_5);
if (pStyle)
{
individualTabHues[4].changeHLSFrom(pStyle->_bgColor);
individualTabHues[4].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color dark mode 1");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_DM_1);
if (pStyle)
{
individualTabHuesFor_Dark[0].changeHLSFrom(pStyle->_bgColor);
individualTabHuesFor_Dark[0].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color dark mode 2");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_DM_2);
if (pStyle)
{
individualTabHuesFor_Dark[1].changeHLSFrom(pStyle->_bgColor);
individualTabHuesFor_Dark[1].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color dark mode 3");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_DM_3);
if (pStyle)
{
individualTabHuesFor_Dark[2].changeHLSFrom(pStyle->_bgColor);
individualTabHuesFor_Dark[2].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color dark mode 4");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_DM_4);
if (pStyle)
{
individualTabHuesFor_Dark[3].changeHLSFrom(pStyle->_bgColor);
individualTabHuesFor_Dark[3].loadFromRGB(pStyle->_bgColor);
}
pStyle = stylers.findByName(L"Tab color dark mode 5");
pStyle = stylers.findByName(TABBAR_INDIVIDUALCOLOR_DM_5);
if (pStyle)
{
individualTabHuesFor_Dark[4].changeHLSFrom(pStyle->_bgColor);
individualTabHuesFor_Dark[4].loadFromRGB(pStyle->_bgColor);
}
}
void NppParameters::setIndividualTabColour(COLORREF colour2Set, int colourIndex, bool isDarkMode)
void NppParameters::setIndividualTabColor(COLORREF colour2Set, int colourIndex, bool isDarkMode)
{
if (colourIndex < 0 || colourIndex > 4) return;
if (isDarkMode)
individualTabHuesFor_Dark[colourIndex].changeHLSFrom(colour2Set);
individualTabHuesFor_Dark[colourIndex].loadFromRGB(colour2Set);
else
individualTabHues[colourIndex].changeHLSFrom(colour2Set);
individualTabHues[colourIndex].loadFromRGB(colour2Set);
return;
}
COLORREF NppParameters::getIndividualTabColour(int colourIndex, bool isDarkMode, bool saturated)
COLORREF NppParameters::getIndividualTabColor(int colourIndex, bool isDarkMode, bool saturated)
{
if (colourIndex < 0 || colourIndex > 4) return {};
@ -8936,3 +8936,43 @@ COLORREF NppParameters::getIndividualTabColour(int colourIndex, bool isDarkMode,
return result.toRGB();
}
void NppParameters::initFindDlgStatusMsgCustomColors()
{
StyleArray& stylers = getMiscStylerArray();
const Style* pStyle = stylers.findByName(FINDDLG_STAUSNOTFOUND_COLOR);
if (pStyle)
{
findDlgStatusMessageColor[0] = pStyle->_fgColor;
}
pStyle = stylers.findByName(FINDDLG_STAUSMESSAGE_COLOR);
if (pStyle)
{
findDlgStatusMessageColor[1] = pStyle->_fgColor;
}
pStyle = stylers.findByName(FINDDLG_STAUSREACHED_COLOR);
if (pStyle)
{
findDlgStatusMessageColor[2] = pStyle->_fgColor;
}
}
void NppParameters::setFindDlgStatusMsgIndexColor(COLORREF colour2Set, int colourIndex)
{
if (colourIndex < 0 || colourIndex > 2) return;
findDlgStatusMessageColor[colourIndex] = colour2Set;
return;
}
COLORREF NppParameters::getFindDlgStatusMsgColor(int colourIndex)
{
if (colourIndex < 0 || colourIndex > 2) return black;
return findDlgStatusMessageColor[colourIndex];
}

View File

@ -1390,12 +1390,23 @@ private:
struct HLSColour
{
WORD _hue;
WORD _lightness;
WORD _saturation;
WORD _hue = 0;
WORD _lightness = 0;
WORD _saturation = 0;
void changeHLSFrom(COLORREF rgb) { ColorRGBToHLS(rgb, &_hue, &_lightness, &_saturation); }
HLSColour() = default;
HLSColour(WORD hue, WORD lightness, WORD saturation): _hue(hue), _lightness(lightness), _saturation(saturation) {}
HLSColour(COLORREF rgb) { ColorRGBToHLS(rgb, &_hue, &_lightness, &_saturation); }
void loadFromRGB(COLORREF rgb) { ColorRGBToHLS(rgb, &_hue, &_lightness, &_saturation); }
COLORREF toRGB() const { return ColorHLSToRGB(_hue, _lightness, _saturation); }
COLORREF toRGB4DarkModWithTuning(int lightnessMore, int saturationLess) const {
return ColorHLSToRGB(_hue,
static_cast<WORD>(static_cast<int>(_lightness) + lightnessMore),
static_cast<WORD>(static_cast<int>(_saturation) - saturationLess));
}
COLORREF toRGB4DarkMod() const { return toRGB4DarkModWithTuning(50, 20); }
};
struct UdlXmlFileState final {
@ -1919,6 +1930,8 @@ private:
std::array<HLSColour, 5> individualTabHuesFor_Dark{ { HLSColour{37, 60, 60}, HLSColour{70, 60, 60}, HLSColour{144, 70, 60}, HLSColour{255, 60, 60}, HLSColour{195, 60, 60} } };
std::array<HLSColour, 5> individualTabHues{ { HLSColour{37, 210, 150}, HLSColour{70, 210, 150}, HLSColour{144, 210, 150}, HLSColour{255, 210, 150}, HLSColour{195, 210, 150}} };
std::array<COLORREF, 3> findDlgStatusMessageColor{ red, blue, darkGreen};
public:
void setShortcutDirty() { _isAnyShortcutModified = true; };
void setAdminMode(bool isAdmin) { _isAdminMode = isAdmin; }
@ -2027,8 +2040,12 @@ public:
void initTabCustomColors();
void setIndividualTabColour(COLORREF colour2Set, int colourIndex, bool isDarkMode);
COLORREF getIndividualTabColour(int colourIndex, bool isDarkMode, bool saturated);
void setIndividualTabColor(COLORREF colour2Set, int colourIndex, bool isDarkMode);
COLORREF getIndividualTabColor(int colourIndex, bool isDarkMode, bool saturated);
void initFindDlgStatusMsgCustomColors();
void setFindDlgStatusMsgIndexColor(COLORREF colour2Set, int colourIndex);
COLORREF getFindDlgStatusMsgColor(int colourIndex);
private:
void getLangKeywordsFromXmlTree();

View File

@ -4955,18 +4955,19 @@ void FindReplaceDlg::drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
//printStr(L"OK"));
COLORREF fgColor = black; // black by default
PCTSTR ptStr =(PCTSTR)lpDrawItemStruct->itemData;
NppParameters& nppParamInst = NppParameters::getInstance();
if (_statusbarFindStatus == FSNotFound)
{
fgColor = _FSNotFoundTextColor;
fgColor = nppParamInst.getFindDlgStatusMsgColor(0);
}
else if (_statusbarFindStatus == FSMessage)
{
fgColor = _FSMessageTextColor;
fgColor = nppParamInst.getFindDlgStatusMsgColor(1);
}
else if (_statusbarFindStatus == FSTopReached || _statusbarFindStatus == FSEndReached)
{
fgColor = _FSReachedTextColor;
fgColor = nppParamInst.getFindDlgStatusMsgColor(2);
}
else if (_statusbarFindStatus == FSNoMessage)
{
@ -4979,27 +4980,18 @@ void FindReplaceDlg::drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
if (_statusbarFindStatus == FSNotFound)
{
HLSColour hls;
hls.changeHLSFrom(_FSNotFoundTextColor);
hls._lightness += 50;
hls._saturation -= 20;
fgColor = hls.toRGB(); // red
HLSColour hls(nppParamInst.getFindDlgStatusMsgColor(0));
fgColor = hls.toRGB4DarkMod();
}
else if (_statusbarFindStatus == FSMessage)
{
HLSColour hls;
hls.changeHLSFrom(_FSMessageTextColor);
hls._lightness += 50;
hls._saturation -= 20;
fgColor = hls.toRGB(); // blue
HLSColour hls(nppParamInst.getFindDlgStatusMsgColor(1));
fgColor = hls.toRGB4DarkMod();
}
else if (_statusbarFindStatus == FSTopReached || _statusbarFindStatus == FSEndReached)
{
HLSColour hls;
hls.changeHLSFrom(_FSReachedTextColor);
hls._lightness += 50;
hls._saturation -= 20;
fgColor = hls.toRGB(); // green
HLSColour hls(nppParamInst.getFindDlgStatusMsgColor(2));
fgColor = hls.toRGB4DarkMod();
}
}

View File

@ -499,12 +499,7 @@ private:
static const int FR_OP_GLOBAL = 8;
static const int FR_OP_FIP = 16;
void saveInMacro(size_t cmd, int cmdType);
COLORREF _FSNotFoundTextColor = red;
COLORREF _FSMessageTextColor = blue;
COLORREF _FSReachedTextColor = darkGreen;
void drawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
bool replaceInFilesConfirmCheck(const std::wstring& directory, const std::wstring& fileTypes);
bool replaceInProjectsConfirmCheck();
bool replaceInOpenDocsConfirmCheck(void);

View File

@ -360,6 +360,7 @@ intptr_t CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM
restoreGlobalOverrideValues();
nppParamInst.initTabCustomColors();
nppParamInst.initFindDlgStatusMsgCustomColors();
_restoreInvalid = false;
_isDirty = false;
@ -540,9 +541,18 @@ intptr_t CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM
{
TabBarPlus::setColour(_pFgColour->getColour(), (TabBarPlus::tabColourIndex)tabColourIndex, nullptr);
}
else if (isDocumentMapStyle())
else
{
ViewZoneDlg::setColour(_pFgColour->getColour(), ViewZoneDlg::ViewZoneColorIndex::focus);
int findDlgStatusMsgIndex = whichFindDlgStatusMsgColourIndex();
if (findDlgStatusMsgIndex != -1)
{
NppParameters& nppParamInst = NppParameters::getInstance();
nppParamInst.setFindDlgStatusMsgIndexColor(_pFgColour->getColour(), findDlgStatusMsgIndex);
}
else if (isDocumentMapStyle())
{
ViewZoneDlg::setColour(_pFgColour->getColour(), ViewZoneDlg::ViewZoneColorIndex::focus);
}
}
apply(applicationInfo);
return TRUE;
@ -572,7 +582,7 @@ intptr_t CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM
colourIndex -= TabBarPlus::individualTabColourId::id5;
NppParameters& nppParamInst = NppParameters::getInstance();
nppParamInst.setIndividualTabColour(_pBgColour->getColour(), colourIndex, NppDarkMode::isEnabled());
nppParamInst.setIndividualTabColor(_pBgColour->getColour(), colourIndex, NppDarkMode::isEnabled());
}
}
@ -675,20 +685,19 @@ int WordStyleDlg::getApplicationInfo() const
(lstrcmp(styleName, L"Mark Style 3") == 0) ||
(lstrcmp(styleName, L"Mark Style 4") == 0) ||
(lstrcmp(styleName, L"Mark Style 5") == 0) ||
(lstrcmp(styleName, L"Tab color 1") == 0) ||
(lstrcmp(styleName, L"Tab color 2") == 0) ||
(lstrcmp(styleName, L"Tab color 3") == 0) ||
(lstrcmp(styleName, L"Tab color 4") == 0) ||
(lstrcmp(styleName, L"Tab color 5") == 0) ||
(lstrcmp(styleName, L"Tab color dark mode 1") == 0) ||
(lstrcmp(styleName, L"Tab color dark mode 2") == 0) ||
(lstrcmp(styleName, L"Tab color dark mode 3") == 0) ||
(lstrcmp(styleName, L"Tab color dark mode 4") == 0) ||
(lstrcmp(styleName, L"Tab color dark mode 5") == 0))
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_1) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_2) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_3) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_4) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_5) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_DM_1) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_DM_2) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_DM_3) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_DM_4) == 0) ||
(lstrcmp(styleName, TABBAR_INDIVIDUALCOLOR_DM_5) == 0))
{
return (GENERAL_CHANGE | COLOR_CHANGE_4_MENU);
}
return GENERAL_CHANGE;
}
@ -762,6 +771,28 @@ int WordStyleDlg::whichIndividualTabColourId()
return -1;
}
int WordStyleDlg::whichFindDlgStatusMsgColourIndex()
{
constexpr size_t styleNameLen = 128;
wchar_t styleName[styleNameLen + 1] = { '\0' };
if (!WordStyleDlg::getStyleName(styleName, styleNameLen))
{
return -1;
}
if (lstrcmp(styleName, FINDDLG_STAUSNOTFOUND_COLOR) == 0)
return TabBarPlus::individualTabColourId::id0;
if (lstrcmp(styleName, FINDDLG_STAUSMESSAGE_COLOR) == 0)
return TabBarPlus::individualTabColourId::id1;
if (lstrcmp(styleName, FINDDLG_STAUSREACHED_COLOR) == 0)
return TabBarPlus::individualTabColourId::id2;
return -1;
}
bool WordStyleDlg::isDocumentMapStyle()
{
constexpr size_t styleNameLen = 128;

View File

@ -28,10 +28,14 @@
// The following parameters are for apply() method which will re-initialize the followings GUI with modified styler:
// 2 Scintilla edit zones, Search result (displayed by Sintilla), Notepad++ GUI & components concerning theme
#define NO_VISUAL_CHANGE 0x00 // No need to apply visual effect - User ext.
#define GENERAL_CHANGE 0x01 // For Sintilla zones & Notepad++ GUI
#define THEME_CHANGE 0x02 // For the components concerning theme, for example the background color of dockable panels
#define COLOR_CHANGE_4_MENU 0x04 // For the color items displayed on the menu
#define NO_VISUAL_CHANGE 0x00 // No need to apply visual effect - User ext.
#define GENERAL_CHANGE 0x01 // For Sintilla zones & Notepad++ GUI (Tabbar, Find dialog, etc...)
#define THEME_CHANGE 0x02 // For the components concerning theme, for example the background color of dockable panels
#define COLOR_CHANGE_4_MENU 0x04 // For the color items displayed on the menu
const wchar_t FINDDLG_STAUSNOTFOUND_COLOR[64] = L"Find status: Not found";
const wchar_t FINDDLG_STAUSMESSAGE_COLOR[64] = L"Find status: Message";
const wchar_t FINDDLG_STAUSREACHED_COLOR[64] = L"Find status: Search end reached";
enum fontStyleType {BOLD_STATUS, ITALIC_STATUS, UNDERLINE_STATUS};
@ -127,6 +131,7 @@ private :
int whichTabColourIndex() const;
int whichIndividualTabColourId();
int whichFindDlgStatusMsgColourIndex();
void apply(int applicationInfo);
int getApplicationInfo() const;
bool isDocumentMapStyle();

View File

@ -1280,7 +1280,7 @@ void TabBarPlus::drawItem(DRAWITEMSTRUCT *pDrawItemStruct, bool isDarkMode)
if (individualColourId != -1)
{
topBarColour = nppParam.getIndividualTabColour(individualColourId, isDarkMode, isFocused);
topBarColour = nppParam.getIndividualTabColor(individualColourId, isDarkMode, isFocused);
}
hBrush = ::CreateSolidBrush(topBarColour);
@ -1300,7 +1300,7 @@ void TabBarPlus::drawItem(DRAWITEMSTRUCT *pDrawItemStruct, bool isDarkMode)
}
else if (individualColourId != -1)
{
brushColour = nppParam.getIndividualTabColour(individualColourId, isDarkMode, false);
brushColour = nppParam.getIndividualTabColor(individualColourId, isDarkMode, false);
}
else
{

View File

@ -157,7 +157,7 @@ LRESULT VerticalFileSwitcher::listViewNotifyCustomDraw(HWND hWnd, UINT uMsg, WPA
if (colorID != -1)
{
bgColor = NppParameters::getInstance().getIndividualTabColour(colorID, isThemeDark, false);
bgColor = NppParameters::getInstance().getIndividualTabColor(colorID, isThemeDark, false);
applyColor = true;
}
else if (isThemeDark)

View File

@ -1733,6 +1733,9 @@
<WidgetStyle name="White space symbol" styleID="0" fgColor="FFB56A" />
<WidgetStyle name="Smart Highlighting" styleID="29" bgColor="00FF00" />
<WidgetStyle name="Find Mark Style" styleID="31" bgColor="FF0000" />
<WidgetStyle name="Find status: Not found" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Find status: Message" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Find status: Search end reached" styleID="0" fgColor="008000" />
<WidgetStyle name="Mark Style 1" styleID="25" bgColor="00FFFF" />
<WidgetStyle name="Mark Style 2" styleID="24" bgColor="FF8000" />
<WidgetStyle name="Mark Style 3" styleID="23" bgColor="FFFF00" />