diff options
author | mitchell <unknown> | 2018-05-06 09:24:26 -0400 |
---|---|---|
committer | mitchell <unknown> | 2018-05-06 09:24:26 -0400 |
commit | 15789ad27ff66c8928d7dc90683af11d6c045009 (patch) | |
tree | 05c2aca85b30a7805bc80042ba96b36d0a184b40 | |
parent | c896b7994fd83b5a4280801fe08803172ebea6a5 (diff) | |
download | scintilla-mirror-15789ad27ff66c8928d7dc90683af11d6c045009.tar.gz |
Backport: More const and cast avoidance.
Backport of changeset 6722:9a20edc44615.
-rw-r--r-- | src/EditView.cxx | 9 | ||||
-rw-r--r-- | src/Editor.cxx | 16 | ||||
-rw-r--r-- | src/Editor.h | 2 |
3 files changed, 14 insertions, 13 deletions
diff --git a/src/EditView.cxx b/src/EditView.cxx index 5b50e7732..9bac71492 100644 --- a/src/EditView.cxx +++ b/src/EditView.cxx @@ -19,6 +19,7 @@ #include <map> #include <forward_list> #include <algorithm> +#include <iterator> #include <memory> #include "Platform.h" @@ -86,9 +87,9 @@ static int WidthStyledText(Surface *surface, const ViewStyle &vs, int styleOffse int width = 0; size_t start = 0; while (start < len) { - const size_t style = styles[start]; + const unsigned char style = styles[start]; size_t endSegment = start; - while ((endSegment + 1 < len) && (static_cast<size_t>(styles[endSegment + 1]) == style)) + while ((endSegment + 1 < len) && (styles[endSegment + 1] == style)) endSegment++; FontAlias fontText = vs.styles[style + styleOffset].font; width += static_cast<int>(surface->WidthText(fontText, text + start, @@ -280,7 +281,7 @@ void EditView::AllocateGraphics(const ViewStyle &vsDraw) { } static const char *ControlCharacterString(unsigned char ch) { - const char *reps[] = { + const char * const reps[] = { "NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL", "BS", "HT", "LF", "VT", "FF", "CR", "SO", "SI", "DLE", "DC1", "DC2", "DC3", "DC4", "NAK", "SYN", "ETB", @@ -913,7 +914,7 @@ void EditView::DrawEOL(Surface *surface, const EditModel &model, const ViewStyle rcSegment.left = xStart + ll->positions[eolPos] - static_cast<XYPOSITION>(subLineStart)+virtualSpace; rcSegment.right = xStart + ll->positions[eolPos + 1] - static_cast<XYPOSITION>(subLineStart)+virtualSpace; blobsWidth += rcSegment.Width(); - char hexits[4]; + char hexits[4] = ""; const char *ctrlChar; const unsigned char chEOL = ll->chars[eolPos]; const int styleMain = ll->styles[eolPos]; diff --git a/src/Editor.cxx b/src/Editor.cxx index 730dd2e7e..fa26b29bb 100644 --- a/src/Editor.cxx +++ b/src/Editor.cxx @@ -19,6 +19,7 @@ #include <map> #include <forward_list> #include <algorithm> +#include <iterator> #include <memory> #include "Platform.h" @@ -28,6 +29,7 @@ #include "Scintilla.h" #include "StringCopy.h" +#include "CharacterSet.h" #include "Position.h" #include "UniqueString.h" #include "SplitVector.h" @@ -204,7 +206,7 @@ void Editor::SetRepresentations() { reprs.Clear(); // C0 control set - const char *reps[] = { + const char * const reps[] = { "NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL", "BS", "HT", "LF", "VT", "FF", "CR", "SO", "SI", "DLE", "DC1", "DC2", "DC3", "DC4", "NAK", "SYN", "ETB", @@ -218,7 +220,7 @@ void Editor::SetRepresentations() { // C1 control set // As well as Unicode mode, ISO-8859-1 should use these if (IsUnicodeMode()) { - const char *repsC1[] = { + const char * const repsC1[] = { "PAD", "HOP", "BPH", "NBH", "IND", "NEL", "SSA", "ESA", "HTS", "HTJ", "VTS", "PLD", "PLU", "RI", "SS2", "SS3", "DCS", "PU1", "PU2", "STS", "CCH", "MW", "SPA", "EPA", @@ -1632,7 +1634,7 @@ void Editor::LinesSplit(int pixelWidth) { } } -void Editor::PaintSelMargin(Surface *surfaceWindow, PRectangle &rc) { +void Editor::PaintSelMargin(Surface *surfaceWindow, const PRectangle &rc) { if (vs.fixedColumnWidth == 0) return; @@ -2612,7 +2614,7 @@ void Editor::NotifyModified(Document *, DocModification mh, void *) { if (mh.modificationType & SC_MOD_CHANGEANNOTATION) { const Sci::Line lineDoc = pdoc->SciLineFromPosition(mh.position); if (vs.annotationVisible) { - if (pcs->SetHeight(lineDoc, static_cast<int>(pcs->GetHeight(lineDoc) + mh.annotationLinesAdded))) { + if (pcs->SetHeight(lineDoc, pcs->GetHeight(lineDoc) + static_cast<int>(mh.annotationLinesAdded))) { SetScrollBars(); } Redraw(); @@ -4092,12 +4094,10 @@ std::string Editor::CaseMapString(const std::string &s, int caseMapping) { for (char &ch : ret) { switch (caseMapping) { case cmUpper: - if (ch >= 'a' && ch <= 'z') - ch = static_cast<char>(ch - 'a' + 'A'); + ch = MakeUpperCase(ch); break; case cmLower: - if (ch >= 'A' && ch <= 'Z') - ch = static_cast<char>(ch - 'A' + 'a'); + ch = MakeLowerCase(ch); break; } } diff --git a/src/Editor.h b/src/Editor.h index 7e763d7db..defb5aea7 100644 --- a/src/Editor.h +++ b/src/Editor.h @@ -375,7 +375,7 @@ protected: // ScintillaBase subclass needs access to much of Editor void LinesJoin(); void LinesSplit(int pixelWidth); - void PaintSelMargin(Surface *surfaceWindow, PRectangle &rc); + void PaintSelMargin(Surface *surfaceWindow, const PRectangle &rc); void RefreshPixMaps(Surface *surfaceWindow); void Paint(Surface *surfaceWindow, PRectangle rcArea); Sci::Position FormatRange(bool draw, const Sci_RangeToFormat *pfr); |