mirror of
https://github.com/rizonesoft/Notepad3.git
synced 2026-06-11 21:03:05 +08:00
Merge pull request #5286 from RaiKoHoff/Dev_Master
move caret line outline frame translucency to alpha2
This commit is contained in:
commit
fbbfa59644
@ -27,7 +27,7 @@ Control Characters (Font)=size:-1
|
||||
Indentation Guide (Color)=fore:#606060
|
||||
Selected Text (Colors)=fore:#F2460D; back:#4F51E0; eolfilled; alpha:80
|
||||
Whitespace (Colors, Size 0-12)=fore:#F2460D
|
||||
Current Line Background (Color)=size:2; fore:#606060; back:#F2F20D; alpha:50
|
||||
Current Line Background (Color)=size:2; fore:#606060; back:#F2F20D; alpha:50; alpha2:50
|
||||
Long Line Marker (Colors)=fore:#F2B50D
|
||||
Extra Line Spacing (Size)=size:2
|
||||
Bookmarks and Folding (Colors, Size)=size:+2; fore:#0CE50B; alpha:100
|
||||
@ -49,7 +49,7 @@ Inline-IME Color=fore:#4EF64D
|
||||
2nd Indentation Guide (Color)=fore:#606060
|
||||
2nd Selected Text (Colors)=fore:#F2460D; eolfilled
|
||||
2nd Whitespace (Colors, Size 0-12)=fore:#F2460D
|
||||
2nd Current Line Background (Color)=size:2; fore:#A1B7F2; back:#F2F20D; alpha:50
|
||||
2nd Current Line Background (Color)=size:2; fore:#A1B7F2; back:#F2F20D; alpha:50; alpha2:50
|
||||
2nd Long Line Marker (Colors)=fore:#F2B50D
|
||||
2nd Bookmarks and Folding (Colors, Size)=size:+2; charset:2; fore:#0CE50B; case:U; alpha:100
|
||||
2nd Mark Occurrences (Indicator)=fore:#7B83E9; alpha:60; alpha2:60; indic_box
|
||||
|
||||
@ -788,6 +788,9 @@ static void _InitGlobals()
|
||||
Globals.CmdLnFlag_ShellUseSystemMRU = 0;
|
||||
Globals.CmdLnFlag_PrintFileAndLeave = 0;
|
||||
|
||||
Globals.iWhiteSpaceSize = 2;
|
||||
Globals.iCaretOutLineFrameSize = 0;
|
||||
|
||||
Globals.DOSEncoding = CPI_NONE;
|
||||
Globals.bZeroBasedColumnIndex = false;
|
||||
Globals.bZeroBasedCharacterCount = false;
|
||||
@ -9142,6 +9145,8 @@ static LRESULT _MsgNotifyFromEdit(HWND hwnd, const SCNotification* const scn)
|
||||
|
||||
|
||||
case SCN_ZOOM:
|
||||
SciCall_SetWhiteSpaceSize(MulDiv(Globals.iWhiteSpaceSize, SciCall_GetZoom(), 100));
|
||||
SciCall_SetCaretLineFrame(MulDiv(Globals.iCaretOutLineFrameSize, SciCall_GetZoom(), 100));
|
||||
UpdateToolbar();
|
||||
UpdateMargins(true);
|
||||
break;
|
||||
|
||||
@ -195,6 +195,7 @@ DeclareSciCallV1(SetAdditionalSelectionTyping, SETADDITIONALSELECTIONTYPING, boo
|
||||
DeclareSciCallV1(SetMouseSelectionRectangularSwitch, SETMOUSESELECTIONRECTANGULARSWITCH, bool, flag);
|
||||
|
||||
DeclareSciCallV1(SetCaretLineLayer, SETCARETLINELAYER, int, layer);
|
||||
DeclareSciCallR0(GetCaretLineFrame, GETCARETLINEFRAME, int);
|
||||
DeclareSciCallV1(SetCaretLineFrame, SETCARETLINEFRAME, int, frm);
|
||||
DeclareSciCallV1(SetCaretLineVisibleAlways, SETCARETLINEVISIBLEALWAYS, bool, flag);
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@ EDITLEXER lexStandard =
|
||||
/* 5 */ { {STYLE_INDENTGUIDE}, IDS_LEX_STD_INDENT, L"Indentation Guide (Color)", L"fore:#A0A0A0", L"" },
|
||||
/* 6 */ { {_STYLE_GETSTYLEID(STY_SEL_TXT)}, IDS_LEX_STD_SEL, L"Selected Text (Colors)", L"fore:#FF4000; back:#4040FF; eolfilled; alpha:80", L"" },
|
||||
/* 7 */ { {_STYLE_GETSTYLEID(STY_WHITESPACE)}, IDS_LEX_STD_WSPC, L"Whitespace (Colors, Size 0-12)", L"size:2; fore:#FF4000; alpha:255", L"" },
|
||||
/* 8 */ { {_STYLE_GETSTYLEID(STY_CUR_LN)}, IDS_LEX_STD_LN_BACKGR, L"Current Line Background (Color)", L"size:2; fore:#A0A0A0; back:#FFFF00; alpha:50", L"" },
|
||||
/* 8 */ { {_STYLE_GETSTYLEID(STY_CUR_LN)}, IDS_LEX_STD_LN_BACKGR, L"Current Line Background (Color)", L"size:2; fore:#A0A0A0; back:#FFFF00; alpha:50; alpha2:50", L"" },
|
||||
/* 9 */ { {_STYLE_GETSTYLEID(STY_CARET)}, IDS_LEX_STD_CARET, L"Caret (Color, Size 1-3)", L"", L"" },
|
||||
/* 10 */ { {_STYLE_GETSTYLEID(STY_LONG_LN_MRK)}, IDS_LEX_STD_LONG_LN, L"Long Line Marker (Colors)", L"fore:#FFC000", L"" },
|
||||
/* 11 */ { {_STYLE_GETSTYLEID(STY_X_LN_SPACE)}, IDS_LEX_STD_X_SPC, L"Extra Line Spacing (Size)", L"size:2", L"" },
|
||||
@ -46,7 +46,7 @@ EDITLEXER lexStandard2nd =
|
||||
/* 5 */ { {STYLE_INDENTGUIDE}, IDS_LEX_2ND_INDENT, L"2nd Indentation Guide (Color)", L"fore:#A0A0A0", L"" },
|
||||
/* 6 */ { {_STYLE_GETSTYLEID(STY_SEL_TXT)}, IDS_LEX_2ND_SEL, L"2nd Selected Text (Colors)", L"fore:#FF4000; eolfilled", L"" },
|
||||
/* 7 */ { {_STYLE_GETSTYLEID(STY_WHITESPACE)}, IDS_LEX_2ND_WSPC, L"2nd Whitespace (Colors, Size 0-12)", L"size:2; fore:#FF4000; alpha:255", L"" },
|
||||
/* 8 */ { {_STYLE_GETSTYLEID(STY_CUR_LN)}, IDS_LEX_2ND_LN_BACKGR, L"2nd Current Line Background (Color)", L"size:2; fore:#0000B0; back:#FFFF00; alpha:50", L"" },
|
||||
/* 8 */ { {_STYLE_GETSTYLEID(STY_CUR_LN)}, IDS_LEX_2ND_LN_BACKGR, L"2nd Current Line Background (Color)", L"size:2; fore:#0000B0; back:#FFFF00; alpha:50; alpha2:50", L"" },
|
||||
/* 9 */ { {_STYLE_GETSTYLEID(STY_CARET)}, IDS_LEX_2ND_CARET, L"2nd Caret (Color, Size 1-3)", L"", L"" },
|
||||
/* 10 */ { {_STYLE_GETSTYLEID(STY_LONG_LN_MRK)}, IDS_LEX_2ND_LONG_LN, L"2nd Long Line Marker (Colors)", L"fore:#FFC000", L"" },
|
||||
/* 11 */ { {_STYLE_GETSTYLEID(STY_X_LN_SPACE)}, IDS_LEX_2ND_X_SPC, L"2nd Extra Line Spacing (Size)", L"size:2", L"" },
|
||||
|
||||
14
src/Styles.c
14
src/Styles.c
@ -1559,8 +1559,9 @@ void Style_SetLexer(HWND hwnd, PEDITLEXER pLexNew)
|
||||
iValue = clampi(iValue, 1, 12);
|
||||
StringCchPrintf(wchStylesBuffer, COUNTOF(wchStylesBuffer), L"size:%i", iValue);
|
||||
}
|
||||
//@@@SciCall_SetWhiteSpaceSize(MulDiv(iValue, SciCall_GetZoom(), 100)); // needs update on zoom
|
||||
SciCall_SetWhiteSpaceSize(iValue);
|
||||
Globals.iWhiteSpaceSize = iValue;
|
||||
//SciCall_SetWhiteSpaceSize(iValue);
|
||||
SciCall_SetWhiteSpaceSize(MulDiv(Globals.iWhiteSpaceSize, SciCall_GetZoom(), 100)); // needs update on zoom
|
||||
|
||||
// whitespace colors
|
||||
rgb = RGB(0, 0, 0);
|
||||
@ -2034,6 +2035,7 @@ void Style_HighlightCurrentLine(HWND hwnd, int iHiLitCurLn)
|
||||
{
|
||||
SciCall_SetCaretLineFrame(0);
|
||||
SciCall_SetCaretLineVisibleAlways(false);
|
||||
//SciCall_SetCaretLineHighlightSubline(false);
|
||||
|
||||
bool const backgrColor = (iHiLitCurLn == 1);
|
||||
LPCWSTR szValue = GetCurrentStdLexer()->Styles[STY_CUR_LN].szValue;
|
||||
@ -2045,18 +2047,20 @@ void Style_HighlightCurrentLine(HWND hwnd, int iHiLitCurLn)
|
||||
|
||||
int alpha = SC_ALPHA_TRANSPARENT; // full translucent
|
||||
if (iHiLitCurLn > 0) {
|
||||
Style_StrGetAlpha(GetCurrentStdLexer()->Styles[STY_CUR_LN].szValue, &alpha, 80, true);
|
||||
Style_StrGetAlpha(GetCurrentStdLexer()->Styles[STY_CUR_LN].szValue, &alpha, 80, backgrColor);
|
||||
if (!backgrColor) {
|
||||
int iFrameSize = 0;
|
||||
if (!Style_StrGetSizeInt(szValue, &iFrameSize)) {
|
||||
iFrameSize = 2;
|
||||
}
|
||||
iFrameSize = max_i(1, ScaleIntToDPI(hwnd, iFrameSize));
|
||||
SciCall_SetCaretLineFrame(iFrameSize);
|
||||
Globals.iCaretOutLineFrameSize = iFrameSize;
|
||||
//SciCall_SetCaretLineFrame(iFrameSize);
|
||||
SciCall_SetCaretLineFrame(MulDiv(Globals.iCaretOutLineFrameSize, SciCall_GetZoom(), 100)); // needs update on zoom
|
||||
}
|
||||
}
|
||||
|
||||
SciCall_SetCaretLineLayer(SC_LAYER_UNDER_TEXT);
|
||||
SciCall_SetCaretLineLayer(SC_LAYER_UNDER_TEXT); // SC_LAYER_BASE, SC_LAYER_UNDER_TEXT, SC_LAYER_OVER_TEXT
|
||||
SciCall_SetElementColour(SC_ELEMENT_CARET_LINE_BACK, AxRGB(alpha, rgb));
|
||||
SciCall_SetCaretLineVisibleAlways(iHiLitCurLn > 0);
|
||||
}
|
||||
|
||||
@ -521,6 +521,9 @@ typedef struct GLOBALS_T {
|
||||
int CmdLnFlag_ShellUseSystemMRU;
|
||||
int CmdLnFlag_PrintFileAndLeave;
|
||||
|
||||
int iWhiteSpaceSize;
|
||||
int iCaretOutLineFrameSize;
|
||||
|
||||
bool bMinimizedToTray;
|
||||
bool bZeroBasedColumnIndex;
|
||||
bool bZeroBasedCharacterCount;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user