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:
Don Ho 2016-10-13 02:01:09 +02:00
parent addc9b483a
commit 66c6aca759
8 changed files with 99 additions and 191 deletions

View File

@ -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."},

View File

@ -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);

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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;
} }

View File

@ -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)

View File

@ -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" />