Make EOL (CRLF) display customizable

Fix #11413, close #11773
This commit is contained in:
Don Ho 2022-06-09 04:42:10 +02:00
parent f517c6c053
commit 79e766755d
41 changed files with 330 additions and 42 deletions

1
.gitignore vendored
View File

@ -17,6 +17,7 @@ x86/
#-- Visual C++ cache files
.vs/
.vscode/
ipch/
*.aps
*.ncb

View File

@ -890,6 +890,10 @@ The comments are here for explanation, it's not necessary to translate them.
<Item id="6653" name="Highlight Background"/>
<Item id="6654" name="Frame"/>
<Item id="6655" name="Width"/>
<Item id="6247" name="EOL (CRLF)"/> <!-- Don't translate "(CRLF)" -->
<Item id="6248" name="Default"/>
<Item id="6249" name="Plain Text"/>
<Item id="6250" name="Custom Color"/>
</Scintillas>
<DarkMode title="Dark Mode">
@ -1431,6 +1435,9 @@ Continue?"/>
<!-- $INT_REPLACE$ and $STR_REPLACE$ are a place holders, don't translate these place holders -->
<word-chars-list-tip value="This allows you to include additional character into current word characters while double clicking for selection or searching with &quot;Match whole word only&quot; option checked."/> <!-- HowToReproduce: In "Delimiter" section of Preferences dialog, hover your mouse on the "?" button. -->
<!-- Don't translate "(&quot;EOL custom color&quot;)" -->
<eol-custom-color-tip value="Go to Style Configurator to change the default EOL custom color (&quot;EOL custom color&quot;).."/>
<word-chars-list-warning-begin value="Be aware: "/>
<word-chars-list-space-warning value="$INT_REPLACE$ space(s)"/>
<word-chars-list-tab-warning value="$INT_REPLACE$ TAB(s)"/>

View File

@ -890,6 +890,10 @@ The comments are here for explanation, it's not necessary to translate them.
<Item id="6653" name="Colorer larrière-plan"/>
<Item id="6654" name="Tracer la bordure"/>
<Item id="6655" name="Épaisseur :"/>
<Item id="6247" name="Saut de ligne (CRLF)"/>
<Item id="6248" name="Défaut"/>
<Item id="6249" name="Texte brut"/>
<Item id="6250" name="Couleur personnalisé"/>
</Scintillas>
<DarkMode title="Mode Sombre">
@ -1429,7 +1433,7 @@ Continuer ?"/>
<MiscStrings>
<!-- $INT_REPLACE$ and $STR_REPLACE$ are a place holders, don't translate these place holders -->
<word-chars-list-tip value="Ceci permet d'inclure des caractères supplémentaires dans les caractères de mot courants, lors de double-clic pour la sélection ou la recherche avec l'option &quot;Mot entier uniquement&quot;."/>
<eol-custom-color-tip value="Accéder à Configurateur de coloration syntaxique pour personnaliser la couleur des sauts de ligne (&quot;EOL custom color&quot;)."/>
<word-chars-list-warning-begin value="Attention : "/>
<word-chars-list-space-warning value="$INT_REPLACE$ espace(s)"/>
<word-chars-list-tab-warning value="$INT_REPLACE$ TAB(s)"/>

View File

@ -880,6 +880,10 @@
<Item id="6653" name="加上背景顏色"/>
<Item id="6654" name="加上邊緣線"/>
<Item id="6655" name="粗細度:"/>
<Item id="6247" name="換行字符CRLF"/>
<Item id="6248" name="內定"/>
<Item id="6249" name="純文字"/>
<Item id="6250" name="使用自訂顏色"/>
</Scintillas>
<DarkMode title="黑暗模式">
@ -1382,6 +1386,7 @@
</ProjectManager>
<MiscStrings>
<word-chars-list-tip value="這允許你在目前單字字元集中附加字元,當滑鼠雙擊以進行選擇或以「僅符合整個單字」選項進行搜尋。"/>
<eol-custom-color-tip value="至語法樣式配置器以自訂換行字符顏色 (&quot;EOL custom color&quot;).."/>
<word-chars-list-warning-begin value="警告:"/>
<word-chars-list-space-warning value="$INT_REPLACE$ 個空格"/>
<word-chars-list-tab-warning value="$INT_REPLACE$ 個 TAB"/>

View File

@ -803,5 +803,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" bgColor="8000FF" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -801,5 +801,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -801,5 +801,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -913,5 +913,6 @@ Installation : Copy this file to "%APPDATA%\Notepad++\themes" and in a portable
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" bgColor="C0C0C0" fontStyle="0" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" fontStyle="0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -1444,5 +1444,6 @@ License: GPL2
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="A3DCA3" />
<WidgetStyle name="Document map" styleID="0" fgColor="000000" bgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -806,5 +806,6 @@ https://notepad-plus-plus.org/donate/
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="Document map" styleID="0" fgColor="FF8000" bgColor="000000" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -776,5 +776,6 @@ so your enhanced file can be included in Notepad++ future release.
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -939,5 +939,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" fontStyle="0" bgColor="80FF00" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="43250B" bgColor="D5BC93" fontStyle="0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -805,5 +805,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -821,5 +821,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -940,5 +940,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="012001" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="162504" bgColor="BBCF60" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -937,5 +937,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="181880" bgColor="BA9C80" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -806,5 +806,6 @@ Notepad++ Custom Style
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" bgColor="0080FF" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -817,5 +817,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -654,5 +654,6 @@ http://sourceforge.net/donate/index.php?group_id=95717
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -948,5 +948,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="073642" bgColor="93A1A1" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="808040" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -948,5 +948,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="EEE8D5" bgColor="586E75" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -806,5 +806,6 @@ Credits:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -777,5 +777,6 @@ http://sourceforge.net/donate/index.php?group_id=95717
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -1444,5 +1444,6 @@ License: GPL2
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="A3DCA3" />
<WidgetStyle name="Document map" styleID="0" fgColor="000000" bgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -937,5 +937,6 @@ Installation:
<WidgetStyle name="Active tab text" styleID="0" fgColor="000000" />
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="5f5f00" bgColor="d7d7af" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="808040" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -771,5 +771,6 @@
<WidgetStyle name="Unsaved change marker" styleID="0" bgColor="FF0000" />
<WidgetStyle name="Saved change marker" styleID="0" bgColor="80FF00" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="808080" />
</GlobalStyles>
</NotepadPlus>

View File

@ -7280,6 +7280,7 @@ static const QuoteParams quotes[] =
{TEXT("Anonymous #191"), QuoteParams::slow, false, SC_CP_UTF8, L_TEXT, TEXT("My biggest talent is always being able to tell what's in a wrapped present.\n\nIt's a gift.\n") },
{TEXT("Anonymous #192"), QuoteParams::rapid, false, SC_CP_UTF8, L_TEXT, TEXT("You can't force someone to love you.\nBut you can lock this person in the basement and wait for him/her to develop Stockholm syndrome.\n") },
{TEXT("Anonymous #193"), QuoteParams::rapid, false, SC_CP_UTF8, L_TEXT, TEXT("Do you know:\nthere are more airplanes in the oceans, than submarines in the sky?\n") },
{TEXT("Anonymous #194"), QuoteParams::rapid, false, SC_CP_UTF8, L_TEXT, TEXT("If you hold a Unix shell up to your ear,\nyou might just be able to hear the C.\n") },
{TEXT("xkcd"), QuoteParams::rapid, false, SC_CP_UTF8, L_TEXT, TEXT("Never have I felt so close to another soul\nAnd yet so helplessly alone\nAs when I Google an error\nAnd there's one result\nA thread by someone with the same problem\nAnd no answer\nLast posted to in 2003\n\n\"Who were you, DenverCoder9?\"\n\"What did you see?!\"\n\n(ref: https://xkcd.com/979/)") },
{TEXT("A developer"), QuoteParams::slow, false, SC_CP_UTF8, L_TEXT, TEXT("No hugs & kisses.\nOnly bugs & fixes.") },
{TEXT("Elon Musk"), QuoteParams::rapid, false, SC_CP_UTF8, L_TEXT, TEXT("Don't set your password as your child's name.\nName your child after your password.") },

View File

@ -277,6 +277,8 @@ void Notepad_plus_Window::init(HINSTANCE hInst, HWND parent, const TCHAR *cmdLin
}
::SendMessage(_hSelf, WM_ACTIVATE, WA_ACTIVE, 0);
::SendMessage(_hSelf, NPPM_INTERNAL_CRLFFORMCHANGED, 0, 0);
// Notify plugins that Notepad++ is ready
SCNotification scnN;
scnN.nmhdr.code = NPPN_READY;

View File

@ -2638,6 +2638,24 @@ LRESULT Notepad_plus::process(HWND hwnd, UINT message, WPARAM wParam, LPARAM lPa
return TRUE;
}
case NPPM_INTERNAL_CRLFFORMCHANGED:
{
_mainEditView.setCRLF();
_subEditView.setCRLF();
return TRUE;
}
case NPPM_INTERNAL_CRLFLAUNCHSTYLECONF:
{
// Launch _configStyleDlg (create or display it)
command(IDM_LANGSTYLE_CONFIG_DLG);
// go into the section we need
_configStyleDlg.goToSection(TEXT("Global Styles:EOL custom color"));
return TRUE;
}
case NPPM_INTERNAL_DISABLEAUTOUPDATE:
{
//printStr(TEXT("you've got me"));

View File

@ -3697,6 +3697,17 @@ bool NppParameters::feedStylerArray(TiXmlNode *node)
_widgetStyleArray.addStyler(styleID, childNode);
}
}
const Style* pStyle = _widgetStyleArray.findByName(TEXT("EOL custom color"));
if (!pStyle)
{
TiXmlNode* eolColorkNode = globalStyleRoot->InsertEndChild(TiXmlElement(TEXT("WidgetStyle")));
eolColorkNode->ToElement()->SetAttribute(TEXT("name"), TEXT("EOL custom color"));
eolColorkNode->ToElement()->SetAttribute(TEXT("styleID"), TEXT("0"));
eolColorkNode->ToElement()->SetAttribute(TEXT("fgColor"), TEXT("DADADA"));
_widgetStyleArray.addStyler(0, eolColorkNode);
}
return true;
}
@ -5838,6 +5849,13 @@ void NppParameters::feedScintillaParam(TiXmlNode *node)
_svp._eolShow = false;
}
nm = element->Attribute(TEXT("eolMode"), &val);
if (nm)
{
if (val >= 0 && val <= 3)
_svp._eolMode = static_cast<ScintillaViewParams::crlfMode>(val);
}
nm = element->Attribute(TEXT("borderWidth"), &val);
if (nm)
{
@ -6129,6 +6147,7 @@ bool NppParameters::writeScintillaParams()
(scintNode->ToElement())->SetAttribute(TEXT("zoom2"), static_cast<int>(_svp._zoom2));
(scintNode->ToElement())->SetAttribute(TEXT("whiteSpaceShow"), _svp._whiteSpaceShow?TEXT("show"):TEXT("hide"));
(scintNode->ToElement())->SetAttribute(TEXT("eolShow"), _svp._eolShow?TEXT("show"):TEXT("hide"));
(scintNode->ToElement())->SetAttribute(TEXT("eolMode"), _svp._eolMode);
(scintNode->ToElement())->SetAttribute(TEXT("borderWidth"), _svp._borderWidth);
(scintNode->ToElement())->SetAttribute(TEXT("smoothFont"), _svp._doSmoothFont ? TEXT("yes") : TEXT("no"));
(scintNode->ToElement())->SetAttribute(TEXT("paddingLeft"), _svp._paddingLeft);

View File

@ -908,6 +908,9 @@ struct ScintillaViewParams
intptr_t _zoom2 = 0;
bool _whiteSpaceShow = false;
bool _eolShow = false;
enum crlfMode {plainText = 0, roundedRectangleText = 1, plainTextCustomColor = 2, roundedRectangleTextCustomColor = 3};
crlfMode _eolMode = roundedRectangleText;
int _borderWidth = 2;
bool _virtualSpace = false;
bool _scrollBeyondLastLine = true;

View File

@ -1361,6 +1361,54 @@ void ScintillaEditView::setWordChars()
addCustomWordChars();
}
void ScintillaEditView::setCRLF(long color)
{
NppParameters& nppParams = NppParameters::getInstance();
const ScintillaViewParams& svp = nppParams.getSVP();
COLORREF eolCustomColor = liteGrey;
if (color == -1)
{
StyleArray& stylers = nppParams.getMiscStylerArray();
Style* pStyle = stylers.findByName(TEXT("EOL custom color"));
if (pStyle)
{
eolCustomColor = pStyle->_fgColor;
}
}
else
{
eolCustomColor = color;
}
ScintillaViewParams::crlfMode eolMode = svp._eolMode;
long appearance = SC_REPRESENTATION_BLOB;
if (eolMode == ScintillaViewParams::crlfMode::plainText)
appearance = SC_REPRESENTATION_PLAIN;
else if (eolMode == ScintillaViewParams::crlfMode::plainTextCustomColor)
appearance = SC_REPRESENTATION_PLAIN | SC_REPRESENTATION_COLOUR;
else if (eolMode == ScintillaViewParams::crlfMode::roundedRectangleText)
appearance = SC_REPRESENTATION_BLOB;
else if (eolMode == ScintillaViewParams::crlfMode::roundedRectangleTextCustomColor)
appearance = SC_REPRESENTATION_BLOB | SC_REPRESENTATION_COLOUR;
const wchar_t* cr = L"\x0d";
const wchar_t* lf = L"\x0a";
long alphaEolCustomColor = eolCustomColor;
alphaEolCustomColor |= 0xFF000000; // add alpha color to make DirectWrite mode work
execute(SCI_SETREPRESENTATIONCOLOUR, reinterpret_cast<WPARAM>(cr), alphaEolCustomColor);
execute(SCI_SETREPRESENTATIONCOLOUR, reinterpret_cast<WPARAM>(lf), alphaEolCustomColor);
execute(SCI_SETREPRESENTATIONAPPEARANCE, reinterpret_cast<WPARAM>(cr), appearance);
execute(SCI_SETREPRESENTATIONAPPEARANCE, reinterpret_cast<WPARAM>(lf), appearance);
redraw();
}
void ScintillaEditView::defineDocType(LangType typeDoc)
{
StyleArray & stylers = NppParameters::getInstance().getMiscStylerArray();
@ -1950,6 +1998,9 @@ void ScintillaEditView::activateBuffer(BufferID buffer, bool force)
restoreCurrentPosPreStep();
runMarkers(true, 0, true, false);
setCRLF();
return; //all done
}
@ -2693,6 +2744,14 @@ void ScintillaEditView::performGlobalStyles()
wsSymbolFgColor = pStyle->_fgColor;
}
execute(SCI_SETWHITESPACEFORE, true, wsSymbolFgColor);
COLORREF eolCustomColor = liteGrey;
pStyle = stylers.findByName(TEXT("EOL custom color"));
if (pStyle)
{
eolCustomColor = pStyle->_fgColor;
}
setCRLF(eolCustomColor);
}
void ScintillaEditView::showIndentGuideLine(bool willBeShowed)

View File

@ -575,6 +575,7 @@ public:
void addCustomWordChars();
void restoreDefaultWordChars();
void setWordChars();
void setCRLF(long color = -1);
void mouseWheel(WPARAM wParam, LPARAM lParam) {
scintillaNew_Proc(_hSelf, WM_MOUSEWHEEL, wParam, lParam);

View File

@ -388,6 +388,7 @@ intptr_t CALLBACK WordStyleDlg::run_dlgProc(UINT Message, WPARAM wParam, LPARAM
display(false);
::SendMessage(_hParent, WM_UPDATESCINTILLAS, 0, 0);
::SendMessage(_hParent, WM_UPDATEMAINMENUBITMAPS, 0, 0);
return TRUE;
}
@ -590,7 +591,7 @@ void WordStyleDlg::loadLangListFromNppParam()
}
const int index2Begin = 0;
::SendDlgItemMessage(_hSelf, IDC_LANGUAGES_LIST, LB_SETCURSEL, 0, index2Begin);
::SendDlgItemMessage(_hSelf, IDC_LANGUAGES_LIST, LB_SETCURSEL, index2Begin, 0);
setStyleListFromLexer(index2Begin);
}
@ -817,6 +818,36 @@ bool WordStyleDlg::selectThemeByName(const TCHAR* themeName)
return true;
}
bool WordStyleDlg::goToSection(const TCHAR* sectionNames)
{
if (!sectionNames || !sectionNames[0])
return false;
std::vector<generic_string> sections = tokenizeString(sectionNames, ':');
if (sections.size() == 0 || sections.size() >= 3)
return false;
auto i = ::SendDlgItemMessage(_hSelf, IDC_LANGUAGES_LIST, LB_FINDSTRING, (WPARAM)-1, (LPARAM)sections[0].c_str());
if (i == LB_ERR)
return false;
::SendDlgItemMessage(_hSelf, IDC_LANGUAGES_LIST, LB_SETCURSEL, i, 0);
setStyleListFromLexer(static_cast<int>(i));
if (sections.size() == 1)
return true;
i = ::SendDlgItemMessage(_hSelf, IDC_STYLES_LIST, LB_FINDSTRING, (WPARAM)-1, (LPARAM)sections[1].c_str());
if (i == LB_ERR)
return false;
::SendDlgItemMessage(_hSelf, IDC_STYLES_LIST, LB_SETCURSEL, i, 0);
setVisualFromStyleList();
getFocus();
return true;
}
void WordStyleDlg::setStyleListFromLexer(int index)
{
_currentLexerIndex = index;

View File

@ -109,6 +109,9 @@ public :
bool selectThemeByName(const TCHAR* themeName);
bool goToSection(const TCHAR* sectionNames); // sectionNames is formed as following: "Language name:Style name"
// ex: "Global Styles:EOL custom color" will set Language on "Global Styles", then set Style on "EOL custom color" if both are found.
private :
ColourPicker *_pFgColour = nullptr;
ColourPicker *_pBgColour = nullptr;

View File

@ -72,34 +72,41 @@ IDD_PREFERENCE_SUB_EDITING DIALOGEX 0, 0, 455, 203
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "Caret Settings",IDC_CARETSETTING_STATIC,25,6,156,67,BS_CENTER
LTEXT "Width :",IDC_WIDTH_STATIC,53,27,37,8,0,WS_EX_RIGHT
COMBOBOX IDC_WIDTH_COMBO,97,25,40,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
RTEXT "Blink rate :",IDC_BLINKRATE_STATIC,28,52,60,8
CONTROL "",IDC_CARETBLINKRATE_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | TBS_TRANSPARENTBKGND | WS_TABSTOP,105,52,57,13
LTEXT "S",IDC_CARETBLINKRATE_S_STATIC,166,52,12,8
LTEXT "F",IDC_CARETBLINKRATE_F_STATIC,93,52,12,8,0,WS_EX_RIGHT
GROUPBOX "Line Wrap",IDC_LW_GB_STATIC,193,6,78,67,BS_CENTER
GROUPBOX "Caret Settings",IDC_CARETSETTING_STATIC,284,77,156,48,BS_CENTER
LTEXT "Width :",IDC_WIDTH_STATIC,311,93,37,8,0,WS_EX_RIGHT
COMBOBOX IDC_WIDTH_COMBO,355,91,40,30,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
RTEXT "Blink rate :",IDC_BLINKRATE_STATIC,286,108,60,8
CONTROL "",IDC_CARETBLINKRATE_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | TBS_TRANSPARENTBKGND | WS_TABSTOP,363,106,57,13
LTEXT "S",IDC_CARETBLINKRATE_S_STATIC,424,107,12,8
LTEXT "F",IDC_CARETBLINKRATE_F_STATIC,351,107,12,8,0,WS_EX_RIGHT
GROUPBOX "Line Wrap",IDC_LW_GB_STATIC,194,6,78,67,BS_CENTER
CONTROL "Default",IDC_RADIO_LWDEF,"Button",BS_AUTORADIOBUTTON | WS_GROUP,203,21,59,10
CONTROL "Aligned",IDC_RADIO_LWALIGN,"Button",BS_AUTORADIOBUTTON,203,36,60,10
CONTROL "Indent",IDC_RADIO_LWINDENT,"Button",BS_AUTORADIOBUTTON,203,51,62,10
GROUPBOX "Current Line Indicator",IDC_CURRENTLINEMARK_STATIC,284,6,129,83,BS_CENTER
CONTROL "None",IDC_RADIO_CLM_NONE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,307,22,100,10
CONTROL "Highlight Background",IDC_RADIO_CLM_HILITE,"Button",BS_AUTORADIOBUTTON,307,37,100,10
CONTROL "Frame",IDC_RADIO_CLM_FRAME,"Button",BS_AUTORADIOBUTTON,307,52,100,10
LTEXT "Width :",IDC_CARETLINEFRAME_WIDTH_STATIC,299,67,37,8,0,WS_EX_RIGHT
CONTROL "",IDC_CARETLINEFRAME_WIDTH_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | TBS_TRANSPARENTBKGND | WS_TABSTOP,337,67,57,13
LTEXT "1",IDC_CARETLINEFRAME_WIDTH_DISPLAY,396,67,12,8
CONTROL "Make current level folding/unfolding commands toggleable",IDC_CHECK_FOLDINGTOGGLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,103,270,10
CONTROL "Enable Multi-Editing (Ctrl+Mouse click/selection)",IDC_CHECK_MULTISELECTION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,116,270,10
CONTROL "Enable smooth font",IDC_CHECK_SMOOTHFONT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,129,250,10
CONTROL "Enable virtual space",IDC_CHECK_VIRTUALSPACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,142,270,10
CONTROL "Enable scrolling beyond last line",IDC_CHECK_SCROLLBEYONDLASTLINE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,155,270,10
CONTROL "Keep selection when right-click outside of selection",IDC_CHECK_RIGHTCLICKKEEPSSELECTION,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,168,270,10
CONTROL "Disable advanced scrolling feature due to touchpad issue",IDC_CHECK_DISABLEADVANCEDSCROLL,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,181,270,10
GROUPBOX "Current Line Indicator",IDC_CURRENTLINEMARK_STATIC,284,6,156,67,BS_CENTER
CONTROL "None",IDC_RADIO_CLM_NONE,"Button",BS_AUTORADIOBUTTON | WS_GROUP,299,15,100,10
CONTROL "Highlight Background",IDC_RADIO_CLM_HILITE,"Button",BS_AUTORADIOBUTTON,299,30,100,10
CONTROL "Frame",IDC_RADIO_CLM_FRAME,"Button",BS_AUTORADIOBUTTON,299,45,100,10
LTEXT "Width :",IDC_CARETLINEFRAME_WIDTH_STATIC,291,60,37,8,0,WS_EX_RIGHT
CONTROL "",IDC_CARETLINEFRAME_WIDTH_SLIDER,"msctls_trackbar32",TBS_AUTOTICKS | TBS_BOTH | TBS_NOTICKS | TBS_TRANSPARENTBKGND | WS_TABSTOP,329,59,57,13
LTEXT "1",IDC_CARETLINEFRAME_WIDTH_DISPLAY,388,60,12,8
CONTROL "Enable smooth font",IDC_CHECK_SMOOTHFONT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,103,250,10
CONTROL "Enable virtual space",IDC_CHECK_VIRTUALSPACE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,116,250,10
CONTROL "Make current level folding/unfolding commands toggleable",IDC_CHECK_FOLDINGTOGGLE,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,129,270,10
CONTROL "Enable Multi-Editing (Ctrl+Mouse click/selection)",IDC_CHECK_MULTISELECTION,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,142,270,10
CONTROL "Enable scrolling beyond last line",IDC_CHECK_SCROLLBEYONDLASTLINE,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,155,270,10
CONTROL "Keep selection when right-click outside of selection",IDC_CHECK_RIGHTCLICKKEEPSSELECTION,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,168,270,10
CONTROL "Disable advanced scrolling feature due to touchpad issue",IDC_CHECK_DISABLEADVANCEDSCROLL,
"Button",BS_AUTOCHECKBOX | WS_TABSTOP,26,181,270,10
GROUPBOX "EOL (CRLF)",IDC_GB_STATIC_CRLF,32,6,150,67,BS_CENTER
CONTROL "Default",IDC_RADIO_ROUNDCORNER_CRLF,"Button",BS_AUTORADIOBUTTON | WS_GROUP,39,18,118,10
CONTROL "Plain Text",IDC_RADIO_PLEINTEXT_CRLF,"Button",BS_AUTORADIOBUTTON,39,33,117,10
CONTROL "Custom Color",IDC_CHECK_WITHCUSTOMCOLOR_CRLF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,39,50,100,10
PUSHBUTTON "...",IDC_BUTTON_LAUNCHSTYLECONF_CRLF,140,48,14,14
END
@ -182,7 +189,7 @@ BEGIN
CONTROL "ANSI",IDC_RADIO_ANSI,"Button",BS_AUTORADIOBUTTON | WS_GROUP,242,39,80,10
CONTROL "UTF-8",IDC_RADIO_UTF8SANSBOM,"Button",BS_AUTORADIOBUTTON,242,53,128,10
CONTROL "Apply to opened ANSI files",IDC_CHECK_OPENANSIASUTF8, "Button",BS_AUTOCHECKBOX | WS_TABSTOP,252,65,144,10
CONTROL "UTF-8 with BOM",IDC_RADIO_UTF8,"Button",BS_AUTORADIOBUTTON,242,79,62,10
CONTROL "UTF-8 with BOM",IDC_RADIO_UTF8,"Button",BS_AUTORADIOBUTTON,242,79,70,10
CONTROL "UTF-16 Big Endian with BOM",IDC_RADIO_UTF16BIG,"Button",BS_AUTORADIOBUTTON,242,95,110,10
CONTROL "UTF-16 Little Endian with BOM",IDC_RADIO_UTF16SMALL,"Button",BS_AUTORADIOBUTTON,242,111,110,10
CONTROL "",IDC_RADIO_OTHERCP,"Button",BS_AUTORADIOBUTTON,242,126,10,10
@ -424,7 +431,7 @@ BEGIN
EDITTEXT IDC_WORDCHAR_CUSTOM_EDIT,111,54,180,14,ES_AUTOHSCROLL
PUSHBUTTON "?",IDD_WORDCHAR_QUESTION_BUTTON,303,53,16,14
LTEXT "",IDD_STATIC_WORDCHAR_WARNING,111,70,210,8
GROUPBOX "Delimiter selection settings (Ctrl + Mouse double click)",IDC_DELIMITERSETTINGS_GB_STATIC,89,113,268,70,BS_CENTER
RTEXT "Open",IDD_STATIC_OPENDELIMITER,117,128,34,8
EDITTEXT IDC_EDIT_OPENDELIMITER,156,126,14,14
@ -471,31 +478,34 @@ BEGIN
END
IDD_PREFERENCE_SUB_MISC DIALOGEX 0, 0, 455, 185
IDD_PREFERENCE_SUB_MISC DIALOGEX 0, 0, 455, 200
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "File Status Auto-Detection",IDC_FILEAUTODETECTION_STATIC,36,4,155,60,BS_CENTER
COMBOBOX IDC_COMBO_FILEUPDATECHOICE,44,16,140,100,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
CONTROL "Update silently",IDC_CHECK_UPDATESILENTLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,44,32,140,10
CONTROL "Scroll to the last line after update",IDC_CHECK_UPDATEGOTOEOF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,44,44,140,10
GROUPBOX "Document Switcher (Ctrl+TAB)",IDC_DOCUMENTSWITCHER_STATIC,261,4,155,39,BS_CENTER
CONTROL "Enable",IDC_CHECK_ENABLEDOCSWITCHER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,269,15,140,10
CONTROL "Enable MRU behaviour",IDC_CHECK_STYLEMRU,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,269,28,140,10
GROUPBOX "Document Peeker",IDC_DOCUMENTPEEK_STATIC,261,47,155,39,BS_CENTER
CONTROL "Peek on tab",IDC_CHECK_ENABLEDOCPEEKER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,269,58,140,10
CONTROL "Peek on document map",IDC_CHECK_ENABLEDOCPEEKONMAP,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,269,71,140,10
// "Enable Notepad++ auto-updater" should be always the 1st item, because it'll be hidden if GUP.exe is absent
// "Enable Notepad++ auto-updater" should be always the 1st item, because it'll be hidden if GUP.exe is absent
CONTROL "Enable Notepad++ auto-updater",IDC_CHECK_AUTOUPDATE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP, 37, 94, 210, 10
CONTROL "Mute all sounds", IDC_CHECK_MUTE_SOUNDS, "Button", BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP, 37, 109, 217, 10
CONTROL "Mute all sounds", IDC_CHECK_MUTE_SOUNDS, "Button", BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP, 37, 109, 190, 10
CONTROL "Autodetect character encoding",IDC_CHECK_DETECTENCODING,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,37,124,217,10
CONTROL "Minimize to system tray",IDC_CHECK_MIN2SYSTRAY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,37,139,217,10
CONTROL "Show only filename in title bar",IDC_CHECK_SHORTTITLE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,37,154,217,10
CONTROL "Use DirectWrite (May improve rendering special characters, need to restart Notepad++)",IDC_CHECK_DIRECTWRITE_ENABLE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,37,169,377,10
CONTROL "Enable Save All confirm dialog", IDC_CHECK_SAVEALLCONFIRM, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 37, 184, 217, 10
COMBOBOX IDC_COMBO_FILEUPDATECHOICE,44,16,140,100,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
CONTROL "Update silently",IDC_CHECK_UPDATESILENTLY,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,44,32,140,10
CONTROL "Scroll to the last line after update",IDC_CHECK_UPDATEGOTOEOF,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,44,44,140,10
EDITTEXT IDC_EDIT_SESSIONFILEEXT,380,127,34,14,ES_AUTOHSCROLL
EDITTEXT IDC_EDIT_WORKSPACEFILEEXT,380,144,34,14,ES_AUTOHSCROLL
GROUPBOX "Document Switcher (Ctrl+TAB)",IDC_DOCUMENTSWITCHER_STATIC,261,4,155,39,BS_CENTER
GROUPBOX "Document Peeker",IDC_DOCUMENTPEEK_STATIC,261,47,155,39,BS_CENTER
GROUPBOX "File Status Auto-Detection",IDC_FILEAUTODETECTION_STATIC,36,4,155,60,BS_CENTER
RTEXT "Session file ext.:",IDC_SESSIONFILEEXT_STATIC,270,130,108,8
EDITTEXT IDC_EDIT_SESSIONFILEEXT,380,127,34,14,ES_AUTOHSCROLL
RTEXT "Workspace file ext.:",IDC_WORKSPACEFILEEXT_STATIC,270,147,108,8
EDITTEXT IDC_EDIT_WORKSPACEFILEEXT,380,144,34,14,ES_AUTOHSCROLL
END

View File

@ -774,7 +774,7 @@ intptr_t CALLBACK EditingSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETBLINKRATE_SLIDER),TBM_SETRANGEMIN, TRUE, BLINKRATE_FASTEST);
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETBLINKRATE_SLIDER),TBM_SETRANGEMAX, TRUE, BLINKRATE_SLOWEST);
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETBLINKRATE_SLIDER),TBM_SETPAGESIZE, 0, BLINKRATE_INTERVAL);
int blinkRate = (nppGUI._caretBlinkRate==0)?BLINKRATE_SLOWEST:nppGUI._caretBlinkRate;
int blinkRate = (nppGUI._caretBlinkRate == 0) ? BLINKRATE_SLOWEST : nppGUI._caretBlinkRate;
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETBLINKRATE_SLIDER),TBM_SETPOS, TRUE, blinkRate);
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETLINEFRAME_WIDTH_SLIDER), TBM_SETRANGEMIN, TRUE, CARETLINEFRAME_SMALLEST);
@ -783,11 +783,63 @@ intptr_t CALLBACK EditingSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
::SendMessage(::GetDlgItem(_hSelf, IDC_CARETLINEFRAME_WIDTH_SLIDER), TBM_SETPOS, TRUE, svp._currentLineFrameWidth);
::SetDlgItemInt(_hSelf, IDC_CARETLINEFRAME_WIDTH_DISPLAY, svp._currentLineFrameWidth, FALSE);
// defaul => (svp._eolMode == svp.roundedRectangleText)
bool checkDefaultCRLF = true;
bool checkPlainTextCRLF = false;
bool checkWithColorCRLF = false;
if (svp._eolMode == svp.plainText)
{
checkDefaultCRLF = false;
checkPlainTextCRLF = true;
checkWithColorCRLF = false;
}
else if (svp._eolMode == svp.plainTextCustomColor)
{
checkDefaultCRLF = false;
checkPlainTextCRLF = true;
checkWithColorCRLF = true;
}
else if (svp._eolMode == svp.roundedRectangleTextCustomColor)
{
checkDefaultCRLF = true;
checkPlainTextCRLF = false;
checkWithColorCRLF = true;
}
::SendDlgItemMessage(_hSelf, IDC_RADIO_ROUNDCORNER_CRLF, BM_SETCHECK, checkDefaultCRLF, 0);
::SendDlgItemMessage(_hSelf, IDC_RADIO_PLEINTEXT_CRLF, BM_SETCHECK, checkPlainTextCRLF, 0);
::SendDlgItemMessage(_hSelf, IDC_CHECK_WITHCUSTOMCOLOR_CRLF, BM_SETCHECK, checkWithColorCRLF, 0);
NativeLangSpeaker* pNativeSpeaker = (NppParameters::getInstance()).getNativeLangSpeaker();
generic_string tip2show = pNativeSpeaker->getLocalizedStrFromID("eol-custom-color-tip", TEXT("Go to Style Configurator to change the default EOL custom color (\"EOL custom color\")."));
_tip = CreateToolTip(IDC_BUTTON_LAUNCHSTYLECONF_CRLF, _hSelf, _hInst, const_cast<PTSTR>(tip2show.c_str()), pNativeSpeaker->isRTL());
if (_tip)
{
SendMessage(_tip, TTM_ACTIVATE, TRUE, 0);
}
initScintParam();
return TRUE;
}
case WM_CTLCOLOREDIT:
{
if (_tip)
{
NppDarkMode::setDarkTooltips(_tip, NppDarkMode::ToolTipsType::tooltip);
}
if (NppDarkMode::isEnabled())
{
return NppDarkMode::onCtlColorSofter(reinterpret_cast<HDC>(wParam));
}
break;
}
case WM_CTLCOLORLISTBOX:
{
if (NppDarkMode::isEnabled())
@ -881,6 +933,44 @@ intptr_t CALLBACK EditingSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM
changeLineHiliteMode(true);
return TRUE;
case IDC_RADIO_ROUNDCORNER_CRLF:
case IDC_RADIO_PLEINTEXT_CRLF:
case IDC_CHECK_WITHCUSTOMCOLOR_CRLF:
{
bool doCustomColor = isCheckedOrNot(IDC_CHECK_WITHCUSTOMCOLOR_CRLF);
if (wParam == IDC_RADIO_ROUNDCORNER_CRLF)
{
svp._eolMode = doCustomColor ? svp.roundedRectangleTextCustomColor : svp.roundedRectangleText;
}
else if (wParam == IDC_RADIO_PLEINTEXT_CRLF)
{
svp._eolMode = doCustomColor ? svp.plainTextCustomColor : svp.plainText;
}
else // IDC_CHECK_WITHCUSTOMCOLOR_CRLF
{
if (isCheckedOrNot(IDC_RADIO_ROUNDCORNER_CRLF))
{
svp._eolMode = doCustomColor ? svp.roundedRectangleTextCustomColor : svp.roundedRectangleText;
}
else // IDC_RADIO_PLEINTEXT_CRLF
{
svp._eolMode = doCustomColor ? svp.plainTextCustomColor : svp.plainText;
}
}
HWND grandParent = ::GetParent(_hParent);
::SendMessage(grandParent, NPPM_INTERNAL_CRLFFORMCHANGED, 0, 0);
return TRUE;
}
case IDC_BUTTON_LAUNCHSTYLECONF_CRLF:
{
HWND grandParent = ::GetParent(_hParent);
::SendMessage(grandParent, NPPM_INTERNAL_CRLFLAUNCHSTYLECONF, 0, 0);
return TRUE;
}
case IDC_CHECK_VIRTUALSPACE:
svp._virtualSpace = (BST_CHECKED == ::SendDlgItemMessage(_hSelf, IDC_CHECK_VIRTUALSPACE, BM_GETCHECK, 0, 0));
::SendMessage(::GetParent(_hParent), NPPM_INTERNAL_VIRTUALSPACE, 0, 0);
@ -1688,6 +1778,7 @@ intptr_t CALLBACK MiscSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{
NppParameters& nppParam = NppParameters::getInstance();
NppGUI & nppGUI = nppParam.getNppGUI();
switch (message)
{
case WM_INITDIALOG :
@ -2520,7 +2611,7 @@ intptr_t CALLBACK LanguageSubDlg::run_dlgProc(UINT message, WPARAM wParam, LPARA
::SendDlgItemMessage(_hSelf, IDC_LIST_TABSETTNG, LB_ADDSTRING, 0, reinterpret_cast<LPARAM>(nppParam.getLangFromIndex(i)->_langName.c_str()));
}
const int index2Begin = 0;
::SendDlgItemMessage(_hSelf, IDC_LIST_TABSETTNG, LB_SETCURSEL, 0, index2Begin);
::SendDlgItemMessage(_hSelf, IDC_LIST_TABSETTNG, LB_SETCURSEL, index2Begin, 0);
::ShowWindow(::GetDlgItem(_hSelf, IDC_GR_TABVALUE_STATIC), SW_HIDE);
::ShowWindow(::GetDlgItem(_hSelf, IDC_CHECK_DEFAULTTABVALUE), SW_HIDE);
::EnableWindow(::GetDlgItem(_hSelf, IDC_TABSIZEVAL_DISABLE_STATIC), FALSE);

View File

@ -50,6 +50,8 @@ public :
EditingSubDlg() = default;
private :
HWND _tip = nullptr;
intptr_t CALLBACK run_dlgProc(UINT message, WPARAM wParam, LPARAM lParam);
void initScintParam();
void changeLineHiliteMode(bool enableSlider);

View File

@ -138,6 +138,12 @@
#define IDC_CHECK_FOLDINGTOGGLE (IDD_PREFERENCE_SUB_EDITING + 46)
#define IDC_GB_STATIC_CRLF (IDD_PREFERENCE_SUB_EDITING + 47)
#define IDC_RADIO_ROUNDCORNER_CRLF (IDD_PREFERENCE_SUB_EDITING + 48)
#define IDC_RADIO_PLEINTEXT_CRLF (IDD_PREFERENCE_SUB_EDITING + 49)
#define IDC_CHECK_WITHCUSTOMCOLOR_CRLF (IDD_PREFERENCE_SUB_EDITING + 50)
#define IDC_BUTTON_LAUNCHSTYLECONF_CRLF (IDD_PREFERENCE_SUB_EDITING + 51)
#define IDD_PREFERENCE_SUB_DELIMITER 6250 //(IDD_PREFERENCE_BOX + 250)
#define IDC_DELIMITERSETTINGS_GB_STATIC (IDD_PREFERENCE_SUB_DELIMITER + 1)

View File

@ -637,6 +637,8 @@
#define NPPM_INTERNAL_REFRESHWORKDIR (NOTEPADPLUS_USER_INTERNAL + 61)
#define NPPM_INTERNAL_VIRTUALSPACE (NOTEPADPLUS_USER_INTERNAL + 62)
#define NPPM_INTERNAL_CARETLINEFRAME (NOTEPADPLUS_USER_INTERNAL + 63)
#define NPPM_INTERNAL_CRLFFORMCHANGED (NOTEPADPLUS_USER_INTERNAL + 64)
#define NPPM_INTERNAL_CRLFLAUNCHSTYLECONF (NOTEPADPLUS_USER_INTERNAL + 65)
// See Notepad_plus_msgs.h
//#define NOTEPADPLUS_USER (WM_USER + 1000)

View File

@ -1433,5 +1433,6 @@
<WidgetStyle name="Inactive tabs" styleID="0" fgColor="808080" bgColor="C0C0C0" />
<WidgetStyle name="URL hovered" styleID="0" fgColor="0000FF" />
<WidgetStyle name="Document map" styleID="0" fgColor="FF8000" bgColor="FFFFFF" />
<WidgetStyle name="EOL custom color" styleID="0" fgColor="DADADA" />
</GlobalStyles>
</NotepadPlus>