diff --git a/src/Edit.c b/src/Edit.c index 97facd6e4..df3eeb020 100644 --- a/src/Edit.c +++ b/src/Edit.c @@ -5460,17 +5460,17 @@ void EditGetExcerpt(HWND hwnd, LPWSTR lpszExcerpt, DWORD cchExcerpt) } WCHAR tch[256] = { L'\0' }; - struct Sci_TextRange tr = { { 0, 0 }, NULL }; + struct Sci_TextRangeFull tr = { { 0, 0 }, NULL }; /*if (iCurPos != iAnchorPos && !Sci_IsMultiOrRectangleSelection()) {*/ tr.chrg.cpMin = (DocPosCR)SciCall_GetSelectionStart(); - tr.chrg.cpMax = min_cr((tr.chrg.cpMin + (DocPosCR)COUNTOF(tch)), (DocPosCR)SciCall_GetSelectionEnd()); + tr.chrg.cpMax = min_p((tr.chrg.cpMin + COUNTOF(tch)), SciCall_GetSelectionEnd()); /*} else { int iLine = SciCall_LineFromPosition(iCurPos); tr.chrg.cpMin = SciCall_PositionFromLine(iLine); tr.chrg.cpMax = min_cr(SciCall_GetLineEndPosition(iLine),(LONG)(tr.chrg.cpMin + COUNTOF(tchBuf2))); }*/ - tr.chrg.cpMax = min_cr(tr.chrg.cpMax, (DocPosCR)Sci_GetDocEndPosition()); + tr.chrg.cpMax = min_p(tr.chrg.cpMax, Sci_GetDocEndPosition()); size_t const len = ((size_t)tr.chrg.cpMax - (size_t)tr.chrg.cpMin); char* const pszText = AllocMem(len+1LL, HEAP_ZERO_MEMORY); @@ -7857,12 +7857,11 @@ bool EditAutoCompleteWord(HWND hwnd, bool autoInsert) if (Settings.AutoCompleteWords || (autoInsert && !Settings.AutoCLexerKeyWords)) { // -------------------------------------------------------------------------- - struct Sci_TextToFind ft = { { 0, 0 }, 0, { 0, 0 } }; + struct Sci_TextToFindFull ft = { { 0, 0 }, NULL, { 0, 0 } }; ft.lpstrText = pRoot; ft.chrg.cpMax = (DocPosCR)iDocEndPos; - //DocPos iPosFind = SciCall_FindTextFull(SCFIND_WORDSTART, &ft); - DocPos iPosFind = SciCall_FindText(SCFIND_WORDSTART, &ft); + DocPos iPosFind = SciCall_FindTextFull(SCFIND_WORDSTART, &ft); PWLIST pwlNewWord = NULL; while ((iPosFind >= 0) && ((iPosFind + iRootLen) < iDocEndPos)) { @@ -7896,8 +7895,8 @@ bool EditAutoCompleteWord(HWND hwnd, bool autoInsert) } ft.chrg.cpMin = (DocPosCR)iWordEndPos; - //iPosFind = SciCall_FindTextFull(SCFIND_WORDSTART, &ft); - iPosFind = SciCall_FindText(SCFIND_WORDSTART, &ft); + iPosFind = SciCall_FindTextFull(SCFIND_WORDSTART, &ft); + //iPosFind = SciCall_FindText(SCFIND_WORDSTART, &ft); } FreeMem(pwlNewWord); pwlNewWord = NULL; diff --git a/src/SciCall.h b/src/SciCall.h index 501350acb..305bad95b 100644 --- a/src/SciCall.h +++ b/src/SciCall.h @@ -330,8 +330,7 @@ DeclareSciCallV0(SelectionDuplicate, SELECTIONDUPLICATE); DeclareSciCallV0(LineTranspose, LINETRANSPOSE); DeclareSciCallV0(MoveSelectedLinesUp, MOVESELECTEDLINESUP); DeclareSciCallV0(MoveSelectedLinesDown, MOVESELECTEDLINESDOWN); -DeclareSciCallR2(FindText, FINDTEXT, DocPos, int, flags, struct Sci_TextToFind*, text); -DeclareSciCallR2(FindTextFull, FINDTEXTFULL, DocPos, int, flags, struct Sci_TextToFind*, text); +DeclareSciCallR2(FindTextFull, FINDTEXTFULL, DocPos, int, flags, struct Sci_TextToFindFull*, text); // Operations DeclareSciCallV0(Cut, CUT); @@ -344,7 +343,7 @@ DeclareSciCallV0(Cancel, CANCEL); DeclareSciCallV0(CopyAllowLine, COPYALLOWLINE); DeclareSciCallV2(CopyText, COPYTEXT, DocPos, length, const char*, text); DeclareSciCallR2(GetText, GETTEXT, DocPos, DocPos, length, const char*, text); // NULL: w/o terminating '\0' (SCI v515) -DeclareSciCallR01(GetTextRangeFull, GETTEXTRANGEFULL, DocPos, struct Sci_TextRange*, textrange); +DeclareSciCallR01(GetTextRangeFull, GETTEXTRANGEFULL, DocPos, struct Sci_TextRangeFull*, textrange); DeclareSciCallV0(UpperCase, UPPERCASE); DeclareSciCallV0(LowerCase, LOWERCASE); DeclareSciCallV2(ReplaceRectangular, REPLACERECTANGULAR, DocPos, length, const char *, text); diff --git a/src/Styles.c b/src/Styles.c index 3555d4b44..4774cfd0a 100644 --- a/src/Styles.c +++ b/src/Styles.c @@ -2064,7 +2064,7 @@ void Style_SetBookmark(HWND hwnd, bool bShowMargin) // void Style_SetChangeHistory(HWND hwnd, bool bShowMargin) { - SciCall_SetMarginWidthN(MARGIN_SCI_CHGHIST, (bShowMargin ? _GetMarkerMarginWidth(hwnd) : 0)); + SciCall_SetMarginWidthN(MARGIN_SCI_CHGHIST, (bShowMargin ? _GetMarkerMarginWidth(hwnd) + 4 : 0)); } @@ -2164,11 +2164,16 @@ void Style_SetMargin(HWND hwnd, LPCWSTR lpszStyle) /// iStyle == STYLE_LINENUMBE // --- Change History --- SciCall_SetMarginBackN(MARGIN_SCI_CHGHIST, clrMarginBack); SciCall_SetMarginSensitiveN(MARGIN_SCI_CHGHIST, false); + SciCall_MarkerSetBack(SC_MARKNUM_HISTORY_MODIFIED, clrMarginBack); + //SciCall_MarkerSetBack(SC_MARKNUM_HISTORY_REVERTED_TO_ORIGIN, clrMarginBack); + //SciCall_MarkerSetBack(SC_MARKNUM_HISTORY_SAVED, clrMarginBack); + //SciCall_MarkerSetBack(SC_MARKNUM_HISTORY_REVERTED_TO_MODIFIED, clrMarginBack); // --- Code folding --- SciCall_SetMarginBackN(MARGIN_SCI_FOLDING, clrMarginBack); SciCall_SetMarginSensitiveN(MARGIN_SCI_FOLDING, true); + int fldStyleMrk = SC_CASE_LOWER; Style_StrGetCase(wchBookMarkStyleStrg, &fldStyleMrk); if (fldStyleMrk == SC_CASE_UPPER) { // circle style