[NEW_FEATURE] Add active folding area highlighting feature (only for box and circle mode).

git-svn-id: svn://svn.tuxfamily.org/svnroot/notepadplus/repository/trunk@792 f5eea248-9336-0410-98b8-ebc06183d4e3
This commit is contained in:
Don Ho 2011-07-17 22:34:28 +00:00
parent 10dc4e06d7
commit a9da259124
5 changed files with 24 additions and 8 deletions

View File

@ -2484,6 +2484,7 @@ BOOL CALLBACK FindIncrementDlg::run_dlgProc(UINT message, WPARAM wParam, LPARAM)
{
switch (message)
{
// Make edit field red if not found
case WM_CTLCOLOREDIT :
{
// if the text not found modify the background color of the editor

View File

@ -2065,16 +2065,29 @@ void ScintillaEditView::performGlobalStyles()
COLORREF foldfgColor = white;
COLORREF foldbgColor = grey;
i = stylers.getStylerIndexByName(TEXT("Fold"));
if (i != -1)
{
Style & style = stylers.getStyler(i);
foldfgColor = style._bgColor;
foldbgColor = style._fgColor;
}
COLORREF activeFoldFgColor = red;
i = stylers.getStylerIndexByName(TEXT("Fold active"));
if (i != -1)
{
Style & style = stylers.getStyler(i);
activeFoldFgColor = style._fgColor;
}
ScintillaViewParams & svp = (ScintillaViewParams &)_pParameter->getSVP();
for (int j = 0 ; j < NB_FOLDER_STATE ; j++)
defineMarker(_markersArray[FOLDER_TYPE][j], _markersArray[svp._folderStyle][j], foldfgColor, foldbgColor);
defineMarker(_markersArray[FOLDER_TYPE][j], _markersArray[svp._folderStyle][j], foldfgColor, foldbgColor, activeFoldFgColor);
execute(SCI_MARKERENABLEHIGHLIGHT, true);
/*
COLORREF unsavedChangebgColor = liteRed;
i = stylers.getStylerIndexByName(TEXT("Unsaved change marker"));

View File

@ -334,7 +334,7 @@ public:
display = true;
}
for (int i = 0 ; i < NB_FOLDER_STATE ; i++)
defineMarker(_markersArray[FOLDER_TYPE][i], _markersArray[style][i], white, grey);
defineMarker(_markersArray[FOLDER_TYPE][i], _markersArray[style][i], white, grey, white);
showMargin(ScintillaEditView::_SC_MARGE_FOLDER, display);
};
@ -872,11 +872,12 @@ protected:
};
//END: Lexers and Styling
void defineMarker(int marker, int markerType, COLORREF fore, COLORREF back) {
void defineMarker(int marker, int markerType, COLORREF fore, COLORREF back, COLORREF foreActive) {
execute(SCI_MARKERDEFINE, marker, markerType);
execute(SCI_MARKERSETFORE, marker, fore);
execute(SCI_MARKERSETBACK, marker, back);
};
execute(SCI_MARKERSETBACKSELECTED, marker, foreActive);
};
bool isCJK() const {
return ((_codepage == CP_CHINESE_TRADITIONAL) || (_codepage == CP_CHINESE_SIMPLIFIED) ||

View File

@ -18,12 +18,12 @@
#ifndef RESOURCE_H
#define RESOURCE_H
#define NOTEPAD_PLUS_VERSION TEXT("Notepad++ v5.9.2")
#define NOTEPAD_PLUS_VERSION TEXT("Notepad++ v5.9.3")
// should be X.Y : ie. if VERSION_DIGITALVALUE == 4, 7, 1, 0 , then X = 4, Y = 71
// ex : #define VERSION_VALUE TEXT("5.63\0")
#define VERSION_VALUE TEXT("5.92\0")
#define VERSION_DIGITALVALUE 5, 9, 2, 0
#define VERSION_VALUE TEXT("5.93\0")
#define VERSION_DIGITALVALUE 5, 9, 3, 0
#ifdef UNICODE
#define UNICODE_ANSI_MODE TEXT("(UNICODE)")

View File

@ -789,6 +789,7 @@
<WidgetStyle name="Edge colour" styleID="0" fgColor="80FFFF" />
<WidgetStyle name="Line number margin" styleID="33" fgColor="808080" bgColor="E4E4E4" fontName="" fontStyle="0" fontSize="" />
<WidgetStyle name="Fold" styleID="0" fgColor="808080" bgColor="F3F3F3" />
<WidgetStyle name="Fold active" styleID="0" fgColor="FF0000" />
<WidgetStyle name="Fold margin" styleID="0" fgColor="FFFFFF" bgColor="E9E9E9" />
<WidgetStyle name="White space symbol" styleID="0" fgColor="FFB56A" />
<WidgetStyle name="Smart HighLighting" styleID="29" bgColor="00FF00" />