mirror of
https://github.com/notepad-plus-plus/notepad-plus-plus.git
synced 2025-07-31 01:34:58 +02:00
Enhance smarthighting UI
Use checkboxes instead of combobox. If "Use Find settings" is checked, use both "match case" & "whole word only" (instead of only "whole word only")
This commit is contained in:
parent
addc9b483a
commit
66c6aca759
@ -5871,11 +5871,12 @@ struct Quote
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
const int nbQuote = 204;
|
const int nbQuote = 205;
|
||||||
Quote quotes[nbQuote] =
|
Quote quotes[nbQuote] =
|
||||||
{
|
{
|
||||||
{"Notepad++", "I hate reading other people's code.\nSo I wrote mine, made it as open source project, and see others suffer."},
|
{"Notepad++", "I hate reading other people's code.\nSo I wrote mine, made it as open source project, and see others suffer."},
|
||||||
{"Notepad++ #2", "Good programmers use Notepad++ to code.\nExtreme programmers use MS Word to code, in Comic Sans, center aligned."},
|
{"Notepad++ #2", "Good programmers use Notepad++ to code.\nExtreme programmers use MS Word to code, in Comic Sans, center aligned."},
|
||||||
|
{"Richard Stallman?", "If I'm the Father of Open Source, it was conceived through artificial insemination using stolen sperm without my knowledge or consent."},
|
||||||
{"Martin Golding", "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."},
|
{"Martin Golding", "Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live."},
|
||||||
{"L. Peter Deutsch", "To iterate is human, to recurse divine."},
|
{"L. Peter Deutsch", "To iterate is human, to recurse divine."},
|
||||||
{"Seymour Cray", "The trouble with programmers is that you can never tell what a programmer is doing until it's too late."},
|
{"Seymour Cray", "The trouble with programmers is that you can never tell what a programmer is doing until it's too late."},
|
||||||
|
@ -3999,7 +3999,7 @@ void NppParameters::feedGUIParameters(TiXmlNode *node)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// <GUIConfig name="SmartHighLight" matchCase="yes" wholeWordOnly="yes" useFindSettings="no">yes</GUIConfig>
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLight")))
|
else if (!lstrcmp(nm, TEXT("SmartHighLight")))
|
||||||
{
|
{
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
TiXmlNode *n = childNode->FirstChild();
|
||||||
@ -4013,46 +4013,32 @@ void NppParameters::feedGUIParameters(TiXmlNode *node)
|
|||||||
else
|
else
|
||||||
_nppGUI._enableSmartHilite = false;
|
_nppGUI._enableSmartHilite = false;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLightCaseSensitive")))
|
val = element->Attribute(TEXT("matchCase"));
|
||||||
{
|
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
|
||||||
if (n)
|
|
||||||
{
|
|
||||||
const TCHAR* val = n->Value();
|
|
||||||
if (val)
|
if (val)
|
||||||
{
|
{
|
||||||
if (!lstrcmp(val, TEXT("yes")))
|
if (!lstrcmp(val, TEXT("yes")))
|
||||||
_nppGUI._smartHiliteCaseSensitive = true;
|
_nppGUI._smartHiliteCaseSensitive = true;
|
||||||
else
|
else if (!lstrcmp(val, TEXT("no")))
|
||||||
_nppGUI._smartHiliteCaseSensitive = false;
|
_nppGUI._smartHiliteCaseSensitive = false;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLightMode")))
|
val = element->Attribute(TEXT("wholeWordOnly"));
|
||||||
{
|
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
|
||||||
|
|
||||||
if (n)
|
|
||||||
{
|
|
||||||
const TCHAR* val = n->Value();
|
|
||||||
if (val)
|
if (val)
|
||||||
{
|
{
|
||||||
if (!lstrcmp(val, TEXT("1")))
|
if (!lstrcmp(val, TEXT("yes")))
|
||||||
{
|
_nppGUI._smartHiliteWordOnly = true;
|
||||||
_nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::anySelection;
|
else if (!lstrcmp(val, TEXT("no")))
|
||||||
}
|
_nppGUI._smartHiliteWordOnly = false;
|
||||||
else if (!lstrcmp(val, TEXT("2")))
|
}
|
||||||
{
|
|
||||||
_nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::findDialog;
|
val = element->Attribute(TEXT("useFindSettings"));
|
||||||
}
|
if (val)
|
||||||
else
|
{
|
||||||
{
|
if (!lstrcmp(val, TEXT("yes")))
|
||||||
_nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::wordOnly;
|
_nppGUI._smartHiliteUseFindSettings = true;
|
||||||
}
|
else if (!lstrcmp(val, TEXT("no")))
|
||||||
|
_nppGUI._smartHiliteUseFindSettings = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5104,9 +5090,6 @@ bool NppParameters::writeGUIParams()
|
|||||||
bool workspaceExtExist = false;
|
bool workspaceExtExist = false;
|
||||||
bool noUpdateExist = false;
|
bool noUpdateExist = false;
|
||||||
bool menuBarExist = false;
|
bool menuBarExist = false;
|
||||||
bool smartHighLightExist = false;
|
|
||||||
bool smartHighLightCaseSensitiveExist = false;
|
|
||||||
bool smartHighLightModeExists = false;
|
|
||||||
bool tagsMatchHighLightExist = false;
|
bool tagsMatchHighLightExist = false;
|
||||||
bool caretExist = false;
|
bool caretExist = false;
|
||||||
bool ScintillaGlobalSettingsExist = false;
|
bool ScintillaGlobalSettingsExist = false;
|
||||||
@ -5296,56 +5279,24 @@ bool NppParameters::writeGUIParams()
|
|||||||
else
|
else
|
||||||
childNode->InsertEndChild(TiXmlText(pStr));
|
childNode->InsertEndChild(TiXmlText(pStr));
|
||||||
}
|
}
|
||||||
|
// <GUIConfig name="SmartHighLight" matchCase="yes" wholeWordOnly="yes" useFindSettings="no">yes</GUIConfig>
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLight")))
|
else if (!lstrcmp(nm, TEXT("SmartHighLight")))
|
||||||
{
|
{
|
||||||
smartHighLightExist = true;
|
|
||||||
const TCHAR *pStr = _nppGUI._enableSmartHilite?TEXT("yes"):TEXT("no");
|
const TCHAR *pStr = _nppGUI._enableSmartHilite?TEXT("yes"):TEXT("no");
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
TiXmlNode *n = childNode->FirstChild();
|
||||||
if (n)
|
if (n)
|
||||||
n->SetValue(pStr);
|
n->SetValue(pStr);
|
||||||
else
|
else
|
||||||
childNode->InsertEndChild(TiXmlText(pStr));
|
childNode->InsertEndChild(TiXmlText(pStr));
|
||||||
}
|
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLightCaseSensitive")))
|
|
||||||
{
|
|
||||||
smartHighLightCaseSensitiveExist = true;
|
|
||||||
const TCHAR *pStr = _nppGUI._smartHiliteCaseSensitive?TEXT("yes"):TEXT("no");
|
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
|
||||||
if (n)
|
|
||||||
n->SetValue(pStr);
|
|
||||||
else
|
|
||||||
childNode->InsertEndChild(TiXmlText(pStr));
|
|
||||||
}
|
|
||||||
else if (!lstrcmp(nm, TEXT("SmartHighLightMode")))
|
|
||||||
{
|
|
||||||
smartHighLightModeExists = true;
|
|
||||||
const TCHAR *pStr;
|
|
||||||
|
|
||||||
switch (_nppGUI._smartHiliteMode)
|
pStr = _nppGUI._smartHiliteCaseSensitive ? TEXT("yes") : TEXT("no");
|
||||||
{
|
element->SetAttribute(TEXT("matchCase"), pStr);
|
||||||
case NppGUI::SmartHiliteMode::anySelection:
|
|
||||||
pStr = TEXT("1");
|
|
||||||
break;
|
|
||||||
|
|
||||||
case NppGUI::SmartHiliteMode::findDialog:
|
pStr = _nppGUI._smartHiliteWordOnly ? TEXT("yes") : TEXT("no");
|
||||||
pStr = TEXT("2");
|
element->SetAttribute(TEXT("wholeWordOnly"), pStr);
|
||||||
break;
|
|
||||||
|
|
||||||
default: // NppGUI::SmartHiliteMode::wordOnly
|
pStr = _nppGUI._smartHiliteUseFindSettings ? TEXT("yes") : TEXT("no");
|
||||||
pStr = TEXT("0");
|
element->SetAttribute(TEXT("useFindSettings"), pStr);
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
TiXmlNode *n = childNode->FirstChild();
|
|
||||||
|
|
||||||
if (n)
|
|
||||||
{
|
|
||||||
n->SetValue(pStr);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
childNode->InsertEndChild(TiXmlText(pStr));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if (!lstrcmp(nm, TEXT("TagsMatchHighLight")))
|
else if (!lstrcmp(nm, TEXT("TagsMatchHighLight")))
|
||||||
{
|
{
|
||||||
@ -5668,33 +5619,6 @@ bool NppParameters::writeGUIParams()
|
|||||||
insertGUIConfigBoolNode(GUIRoot, TEXT("MaitainIndent"), _nppGUI._maitainIndent);
|
insertGUIConfigBoolNode(GUIRoot, TEXT("MaitainIndent"), _nppGUI._maitainIndent);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!smartHighLightExist)
|
|
||||||
{
|
|
||||||
insertGUIConfigBoolNode(GUIRoot, TEXT("SmartHighLight"), _nppGUI._enableSmartHilite);
|
|
||||||
}
|
|
||||||
if( !smartHighLightCaseSensitiveExist)
|
|
||||||
{
|
|
||||||
insertGUIConfigBoolNode(GUIRoot, TEXT("SmartHighLightCaseSensitive"), _nppGUI._smartHiliteCaseSensitive);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!smartHighLightModeExists)
|
|
||||||
{
|
|
||||||
const TCHAR *pStr = TEXT("0");
|
|
||||||
|
|
||||||
if (_nppGUI._smartHiliteMode == 1)
|
|
||||||
{
|
|
||||||
pStr = TEXT("1");
|
|
||||||
}
|
|
||||||
else if (_nppGUI._smartHiliteMode == 2)
|
|
||||||
{
|
|
||||||
pStr = TEXT("2");
|
|
||||||
}
|
|
||||||
|
|
||||||
TiXmlElement *GUIConfigElement = (GUIRoot->InsertEndChild(TiXmlElement(TEXT("GUIConfig"))))->ToElement();
|
|
||||||
GUIConfigElement->SetAttribute(TEXT("name"), TEXT("SmartHighLightMode"));
|
|
||||||
GUIConfigElement->InsertEndChild(TiXmlText(pStr));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!tagsMatchHighLightExist)
|
if (!tagsMatchHighLightExist)
|
||||||
{
|
{
|
||||||
TiXmlElement * ele = insertGUIConfigBoolNode(GUIRoot, TEXT("TagsMatchHighLight"), _nppGUI._enableTagsMatchHilite);
|
TiXmlElement * ele = insertGUIConfigBoolNode(GUIRoot, TEXT("TagsMatchHighLight"), _nppGUI._enableTagsMatchHilite);
|
||||||
|
@ -746,10 +746,10 @@ struct NppGUI final
|
|||||||
bool _doTaskList = true;
|
bool _doTaskList = true;
|
||||||
bool _maitainIndent = true;
|
bool _maitainIndent = true;
|
||||||
bool _enableSmartHilite = true;
|
bool _enableSmartHilite = true;
|
||||||
bool _smartHiliteCaseSensitive = false;
|
|
||||||
|
|
||||||
enum SmartHiliteMode { wordOnly = 0, anySelection = 1, findDialog = 2 };
|
bool _smartHiliteCaseSensitive = false;
|
||||||
SmartHiliteMode _smartHiliteMode = SmartHiliteMode::wordOnly;
|
bool _smartHiliteWordOnly = true;
|
||||||
|
bool _smartHiliteUseFindSettings = false;
|
||||||
|
|
||||||
bool _disableSmartHiliteTmp = false;
|
bool _disableSmartHiliteTmp = false;
|
||||||
bool _enableTagsMatchHilite = true;
|
bool _enableTagsMatchHilite = true;
|
||||||
|
@ -52,28 +52,26 @@ void SmartHighlighter::highlightView(ScintillaEditView * pHighlightView)
|
|||||||
const NppGUI & nppGUI = NppParameters::getInstance()->getNppGUI();
|
const NppGUI & nppGUI = NppParameters::getInstance()->getNppGUI();
|
||||||
|
|
||||||
// Determine mode for SmartHighlighting
|
// Determine mode for SmartHighlighting
|
||||||
NppGUI::SmartHiliteMode mode = nppGUI._smartHiliteMode;
|
bool isWordOnly = true;
|
||||||
bool wordOnly;
|
bool isCaseSensentive = true;
|
||||||
|
|
||||||
if (mode == NppGUI::SmartHiliteMode::wordOnly)
|
if (nppGUI._smartHiliteUseFindSettings)
|
||||||
{
|
|
||||||
wordOnly = true;
|
|
||||||
}
|
|
||||||
else if (mode == NppGUI::SmartHiliteMode::findDialog)
|
|
||||||
{
|
{
|
||||||
// fetch find dialog's setting
|
// fetch find dialog's setting
|
||||||
NppParameters *nppParams = NppParameters::getInstance();
|
NppParameters *nppParams = NppParameters::getInstance();
|
||||||
FindHistory &findHistory = nppParams->getFindHistory();
|
FindHistory &findHistory = nppParams->getFindHistory();
|
||||||
wordOnly = findHistory._isMatchWord;
|
isWordOnly = findHistory._isMatchWord;
|
||||||
|
isCaseSensentive = findHistory._isMatchCase;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
wordOnly = false;
|
isWordOnly = nppGUI._smartHiliteWordOnly;
|
||||||
|
isCaseSensentive = nppGUI._smartHiliteCaseSensitive;
|
||||||
}
|
}
|
||||||
|
|
||||||
// additional checks for wordOnly mode
|
// additional checks for wordOnly mode
|
||||||
// Make sure the "word" positions match the current selection
|
// Make sure the "word" positions match the current selection
|
||||||
if (wordOnly)
|
if (isWordOnly)
|
||||||
{
|
{
|
||||||
auto wordStart = pHighlightView->execute(SCI_WORDSTARTPOSITION, curPos, true);
|
auto wordStart = pHighlightView->execute(SCI_WORDSTARTPOSITION, curPos, true);
|
||||||
auto wordEnd = pHighlightView->execute(SCI_WORDENDPOSITION, wordStart, true);
|
auto wordEnd = pHighlightView->execute(SCI_WORDENDPOSITION, wordStart, true);
|
||||||
@ -101,8 +99,8 @@ void SmartHighlighter::highlightView(ScintillaEditView * pHighlightView)
|
|||||||
int prevDocLineChecked = -1; //invalid start
|
int prevDocLineChecked = -1; //invalid start
|
||||||
|
|
||||||
FindOption fo;
|
FindOption fo;
|
||||||
fo._isMatchCase = nppGUI._smartHiliteCaseSensitive;
|
fo._isMatchCase = isCaseSensentive;
|
||||||
fo._isWholeWord = wordOnly;
|
fo._isWholeWord = isWordOnly;
|
||||||
|
|
||||||
const TCHAR * searchText = NULL;
|
const TCHAR * searchText = NULL;
|
||||||
|
|
||||||
|
@ -229,16 +229,15 @@ IDD_PREFERENCE_TABSETTINGS_BOX DIALOGEX 0, 0, 455, 185
|
|||||||
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
STYLE DS_SETFONT | DS_FIXEDSYS | DS_CONTROL | WS_CHILD
|
||||||
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
FONT 8, "MS Shell Dlg", 0, 0, 0x1
|
||||||
BEGIN
|
BEGIN
|
||||||
CONTROL "Enable",IDC_CHECK_ENABLSMARTHILITE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,71,69,142,10
|
CONTROL "Enable",IDC_CHECK_ENABLSMARTHILITE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,155,31,142,10
|
||||||
CONTROL "Match case",IDC_CHECK_SMARTHILITECASESENSITIVE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,71,83,142,10
|
CONTROL "Match case",IDC_CHECK_SMARTHILITECASESENSITIVE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,155,45,142,10
|
||||||
COMBOBOX IDC_COMBO_SMARTHILITEMODE,71,94,142,10,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
|
GROUPBOX "Smart Highlighting",IDC_SMARTHILITING_STATIC,147,21,155,66,BS_CENTER
|
||||||
GROUPBOX "Smart Highlighting",IDC_SMARTHILITING_STATIC,63,59,155,52,BS_CENTER
|
CONTROL "Enable",IDC_CHECK_ENABLTAGSMATCHHILITE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,156,120,140,10
|
||||||
CONTROL "Enable",IDC_CHECK_ENABLTAGSMATCHHILITE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,69,140,10
|
CONTROL "Highlight tag attributes",IDC_CHECK_ENABLTAGATTRHILITE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,156,132,140,10
|
||||||
CONTROL "Highlight tag attributes",IDC_CHECK_ENABLTAGATTRHILITE,
|
CONTROL "Highlight comment/php/asp zone",IDC_CHECK_HIGHLITENONEHTMLZONE,"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,156,145,140,10
|
||||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,81,140,10
|
GROUPBOX "Highlight Matching Tags",IDC_TAGMATCHEDHILITE_STATIC,148,110,155,50,BS_CENTER
|
||||||
CONTROL "Highlight comment/php/asp zone",IDC_CHECK_HIGHLITENONEHTMLZONE,
|
CONTROL "Match whole word only",IDC_CHECK_SMARTHILITEWHOLEWORDONLY, "Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,155,58,142,10
|
||||||
"Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,245,94,140,10
|
CONTROL "Use Find dialog settings",IDC_CHECK_SMARTHILITEUSEFINDSETTINGS, "Button",BS_AUTOCHECKBOX | BS_MULTILINE | WS_TABSTOP,155,71,142,10
|
||||||
GROUPBOX "Highlight Matching Tags",IDC_TAGMATCHEDHILITE_STATIC,237,59,155,50,BS_CENTER
|
|
||||||
END
|
END
|
||||||
|
|
||||||
IDD_PREFERENCE_PRINT_BOX DIALOGEX 0, 0, 455, 185
|
IDD_PREFERENCE_PRINT_BOX DIALOGEX 0, 0, 455, 185
|
||||||
|
@ -1918,33 +1918,16 @@ INT_PTR CALLBACK TabSettings::run_dlgProc(UINT message, WPARAM wParam, LPARAM/*
|
|||||||
{
|
{
|
||||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLSMARTHILITE, BM_SETCHECK, nppGUI._enableSmartHilite, 0);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLSMARTHILITE, BM_SETCHECK, nppGUI._enableSmartHilite, 0);
|
||||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE, BM_SETCHECK, nppGUI._smartHiliteCaseSensitive, 0);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE, BM_SETCHECK, nppGUI._smartHiliteCaseSensitive, 0);
|
||||||
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITEWHOLEWORDONLY, BM_SETCHECK, nppGUI._smartHiliteWordOnly, 0);
|
||||||
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITEUSEFINDSETTINGS, BM_SETCHECK, nppGUI._smartHiliteUseFindSettings, 0);
|
||||||
|
|
||||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLTAGSMATCHHILITE, BM_SETCHECK, nppGUI._enableTagsMatchHilite, 0);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLTAGSMATCHHILITE, BM_SETCHECK, nppGUI._enableTagsMatchHilite, 0);
|
||||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLTAGATTRHILITE, BM_SETCHECK, nppGUI._enableTagAttrsHilite, 0);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_ENABLTAGATTRHILITE, BM_SETCHECK, nppGUI._enableTagAttrsHilite, 0);
|
||||||
::SendDlgItemMessage(_hSelf, IDC_CHECK_HIGHLITENONEHTMLZONE, BM_SETCHECK, nppGUI._enableHiliteNonHTMLZone, 0);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_HIGHLITENONEHTMLZONE, BM_SETCHECK, nppGUI._enableHiliteNonHTMLZone, 0);
|
||||||
|
|
||||||
::SendDlgItemMessage(_hSelf, IDC_COMBO_SMARTHILITEMODE, CB_ADDSTRING, 0, (LPARAM)TEXT("Match whole word only"));
|
|
||||||
::SendDlgItemMessage(_hSelf, IDC_COMBO_SMARTHILITEMODE, CB_ADDSTRING, 0, (LPARAM)TEXT("Match any selection"));
|
|
||||||
::SendDlgItemMessage(_hSelf, IDC_COMBO_SMARTHILITEMODE, CB_ADDSTRING, 0, (LPARAM)TEXT("Same as Find dialog"));
|
|
||||||
|
|
||||||
switch (nppGUI._smartHiliteMode)
|
|
||||||
{
|
|
||||||
case NppGUI::SmartHiliteMode::wordOnly:
|
|
||||||
::SendMessage(::GetDlgItem(_hSelf, IDC_COMBO_SMARTHILITEMODE), CB_SETCURSEL, 0, 0);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case NppGUI::SmartHiliteMode::anySelection:
|
|
||||||
::SendMessage(::GetDlgItem(_hSelf, IDC_COMBO_SMARTHILITEMODE), CB_SETCURSEL, 1, 0);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case NppGUI::SmartHiliteMode::findDialog:
|
|
||||||
::SendMessage(::GetDlgItem(_hSelf, IDC_COMBO_SMARTHILITEMODE), CB_SETCURSEL, 2, 0);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_ENABLTAGATTRHILITE), nppGUI._enableTagsMatchHilite);
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_ENABLTAGATTRHILITE), nppGUI._enableTagsMatchHilite);
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_HIGHLITENONEHTMLZONE), nppGUI._enableTagsMatchHilite);
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_HIGHLITENONEHTMLZONE), nppGUI._enableTagsMatchHilite);
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE), nppGUI._enableSmartHilite);
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE), nppGUI._enableSmartHilite);
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_COMBO_SMARTHILITEMODE), nppGUI._enableSmartHilite);
|
|
||||||
|
|
||||||
ETDTProc enableDlgTheme = reinterpret_cast<ETDTProc>(pNppParam->getEnableThemeDlgTexture());
|
ETDTProc enableDlgTheme = reinterpret_cast<ETDTProc>(pNppParam->getEnableThemeDlgTexture());
|
||||||
if (enableDlgTheme)
|
if (enableDlgTheme)
|
||||||
@ -1952,39 +1935,9 @@ INT_PTR CALLBACK TabSettings::run_dlgProc(UINT message, WPARAM wParam, LPARAM/*
|
|||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
case WM_COMMAND :
|
case WM_COMMAND :
|
||||||
{
|
{
|
||||||
if (HIWORD(wParam) == LBN_SELCHANGE)
|
|
||||||
{
|
|
||||||
switch (LOWORD(wParam))
|
|
||||||
{
|
|
||||||
case IDC_COMBO_SMARTHILITEMODE:
|
|
||||||
{
|
|
||||||
auto index = ::SendDlgItemMessage(_hSelf, IDC_COMBO_SMARTHILITEMODE, CB_GETCURSEL, 0, 0);
|
|
||||||
|
|
||||||
switch (index)
|
|
||||||
{
|
|
||||||
case 0:
|
|
||||||
nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::wordOnly;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 1:
|
|
||||||
nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::anySelection;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 2:
|
|
||||||
nppGUI._smartHiliteMode = NppGUI::SmartHiliteMode::findDialog;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (wParam)
|
switch (wParam)
|
||||||
{
|
{
|
||||||
case IDC_CHECK_ENABLSMARTHILITE:
|
case IDC_CHECK_ENABLSMARTHILITE:
|
||||||
@ -1992,22 +1945,53 @@ INT_PTR CALLBACK TabSettings::run_dlgProc(UINT message, WPARAM wParam, LPARAM/*
|
|||||||
nppGUI._enableSmartHilite = !nppGUI._enableSmartHilite;
|
nppGUI._enableSmartHilite = !nppGUI._enableSmartHilite;
|
||||||
if (!nppGUI._enableSmartHilite)
|
if (!nppGUI._enableSmartHilite)
|
||||||
{
|
{
|
||||||
HWND grandParent = ::GetParent(_hParent);
|
//HWND grandParent = ::GetParent(_hParent);
|
||||||
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
//::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
||||||
}
|
}
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE), nppGUI._enableSmartHilite);
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE), nppGUI._enableSmartHilite);
|
||||||
::EnableWindow(::GetDlgItem(_hSelf, IDC_COMBO_SMARTHILITEMODE), nppGUI._enableSmartHilite);
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITEWHOLEWORDONLY), nppGUI._enableSmartHilite);
|
||||||
|
::EnableWindow(::GetDlgItem(_hSelf, IDC_CHECK_SMARTHILITEUSEFINDSETTINGS), nppGUI._enableSmartHilite);
|
||||||
|
HWND grandParent = ::GetParent(_hParent);
|
||||||
|
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
case IDC_CHECK_SMARTHILITECASESENSITIVE:
|
case IDC_CHECK_SMARTHILITECASESENSITIVE:
|
||||||
{
|
{
|
||||||
nppGUI._smartHiliteCaseSensitive = !nppGUI._smartHiliteCaseSensitive;
|
nppGUI._smartHiliteCaseSensitive = isCheckedOrNot(IDC_CHECK_SMARTHILITECASESENSITIVE);
|
||||||
if (!nppGUI._smartHiliteCaseSensitive)
|
if (nppGUI._smartHiliteCaseSensitive)
|
||||||
{
|
{
|
||||||
HWND grandParent = ::GetParent(_hParent);
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITEUSEFINDSETTINGS, BM_SETCHECK, false, 0);
|
||||||
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
nppGUI._smartHiliteUseFindSettings = false;
|
||||||
}
|
}
|
||||||
|
HWND grandParent = ::GetParent(_hParent);
|
||||||
|
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
case IDC_CHECK_SMARTHILITEWHOLEWORDONLY:
|
||||||
|
{
|
||||||
|
nppGUI._smartHiliteWordOnly = isCheckedOrNot(IDC_CHECK_SMARTHILITEWHOLEWORDONLY);
|
||||||
|
if (nppGUI._smartHiliteWordOnly)
|
||||||
|
{
|
||||||
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITEUSEFINDSETTINGS, BM_SETCHECK, false, 0);
|
||||||
|
nppGUI._smartHiliteUseFindSettings = false;
|
||||||
|
}
|
||||||
|
HWND grandParent = ::GetParent(_hParent);
|
||||||
|
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
||||||
|
return TRUE;
|
||||||
|
}
|
||||||
|
case IDC_CHECK_SMARTHILITEUSEFINDSETTINGS:
|
||||||
|
{
|
||||||
|
nppGUI._smartHiliteUseFindSettings = isCheckedOrNot(IDC_CHECK_SMARTHILITEUSEFINDSETTINGS);
|
||||||
|
if (nppGUI._smartHiliteUseFindSettings)
|
||||||
|
{
|
||||||
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITECASESENSITIVE, BM_SETCHECK, false, 0);
|
||||||
|
::SendDlgItemMessage(_hSelf, IDC_CHECK_SMARTHILITEWHOLEWORDONLY, BM_SETCHECK, false, 0);
|
||||||
|
nppGUI._smartHiliteCaseSensitive = false;
|
||||||
|
nppGUI._smartHiliteWordOnly = false;
|
||||||
|
}
|
||||||
|
HWND grandParent = ::GetParent(_hParent);
|
||||||
|
::SendMessage(grandParent, NPPM_INTERNAL_CLEARINDICATOR, 0, 0);
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -184,12 +184,13 @@
|
|||||||
#define IDC_CHECK_BACKSLASHISESCAPECHARACTERFORSQL (IDD_PREFERENCE_SETTING_BOX + 35)
|
#define IDC_CHECK_BACKSLASHISESCAPECHARACTERFORSQL (IDD_PREFERENCE_SETTING_BOX + 35)
|
||||||
#define IDC_EDIT_WORKSPACEFILEEXT (IDD_PREFERENCE_SETTING_BOX + 36)
|
#define IDC_EDIT_WORKSPACEFILEEXT (IDD_PREFERENCE_SETTING_BOX + 36)
|
||||||
#define IDC_WORKSPACEFILEEXT_STATIC (IDD_PREFERENCE_SETTING_BOX + 37)
|
#define IDC_WORKSPACEFILEEXT_STATIC (IDD_PREFERENCE_SETTING_BOX + 37)
|
||||||
#define IDC_COMBO_SMARTHILITEMODE (IDD_PREFERENCE_SETTING_BOX + 38)
|
#define IDC_CHECK_SMARTHILITEWHOLEWORDONLY (IDD_PREFERENCE_SETTING_BOX + 38)
|
||||||
//-- FLS: xFileEditViewHistoryParameterGUI: Additional Checkbox for enabling the history for restoring the edit view per file.
|
#define IDC_CHECK_SMARTHILITEUSEFINDSETTINGS (IDD_PREFERENCE_SETTING_BOX + 39)
|
||||||
#define IDC_PREFERENCE_OFFSET_FLS 40
|
|
||||||
#define IDC_CHECK_REMEMBEREDITVIEWPERFILE (IDD_PREFERENCE_SETTING_BOX + IDC_PREFERENCE_OFFSET_FLS + 1)
|
//-- xFileEditViewHistoryParameterGUI: Additional Checkbox for enabling the history for restoring the edit view per file.
|
||||||
#define IDC_REMEMBEREDITVIEWPERFILE_STATIC (IDD_PREFERENCE_SETTING_BOX + IDC_PREFERENCE_OFFSET_FLS + 2)
|
#define IDC_CHECK_REMEMBEREDITVIEWPERFILE (IDD_PREFERENCE_SETTING_BOX + 41)
|
||||||
#define IDC_EDIT_REMEMBEREDITVIEWPERFILE (IDD_PREFERENCE_SETTING_BOX + IDC_PREFERENCE_OFFSET_FLS + 3)
|
#define IDC_REMEMBEREDITVIEWPERFILE_STATIC (IDD_PREFERENCE_SETTING_BOX + 42)
|
||||||
|
#define IDC_EDIT_REMEMBEREDITVIEWPERFILE (IDD_PREFERENCE_SETTING_BOX + 43)
|
||||||
|
|
||||||
|
|
||||||
#define IDD_PREFERENCE_NEWDOCSETTING_BOX 6400 //(IDD_PREFERENCE_BOX + 400)
|
#define IDD_PREFERENCE_NEWDOCSETTING_BOX 6400 //(IDD_PREFERENCE_BOX + 400)
|
||||||
|
@ -77,6 +77,7 @@
|
|||||||
<GUIConfig name="auto-insert" parentheses="yes" brackets="yes" curlyBrackets="yes" quotes="no" doubleQuotes="yes" htmlXmlTag="no" />
|
<GUIConfig name="auto-insert" parentheses="yes" brackets="yes" curlyBrackets="yes" quotes="no" doubleQuotes="yes" htmlXmlTag="no" />
|
||||||
<GUIConfig name="multiInst" setting="0" />
|
<GUIConfig name="multiInst" setting="0" />
|
||||||
<GUIConfig name="sessionExt"></GUIConfig>
|
<GUIConfig name="sessionExt"></GUIConfig>
|
||||||
|
<GUIConfig name="SmartHighLight" matchCase="no" wholeWordOnly="yes" useFindSettings="no">yes</GUIConfig>
|
||||||
</GUIConfigs>
|
</GUIConfigs>
|
||||||
<!-- The History of opened files list -->
|
<!-- The History of opened files list -->
|
||||||
<History nbMaxFile="15" />
|
<History nbMaxFile="15" />
|
||||||
|
Loading…
x
Reference in New Issue
Block a user