aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.cxx
diff options
context:
space:
mode:
authornyamatongwe <unknown>2001-05-22 01:33:04 +0000
committernyamatongwe <unknown>2001-05-22 01:33:04 +0000
commit6c1e837c5ebb40996f9a65dfa925774d5b10a109 (patch)
treed1ea38fe6c47b29083918d7429c9d630d6b83c19 /src/Editor.cxx
parentd729c7673bc2e71477dcc029ce31f7478f97894a (diff)
downloadscintilla-mirror-6c1e837c5ebb40996f9a65dfa925774d5b10a109.tar.gz
Support for forced upper and lower case styles.
Diffstat (limited to 'src/Editor.cxx')
-rw-r--r--src/Editor.cxx10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx
index d10a8cee0..b455376ae 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -810,6 +810,10 @@ void Editor::LayoutLine(int line, Surface *surface, ViewStyle &vstyle, LineLayou
ll.chars[numCharsInLine] = chDoc;
ll.styles[numCharsInLine] = static_cast<char>(styleByte & styleMask);
ll.indicators[numCharsInLine] = static_cast<char>(styleByte & ~styleMask);
+ if (vstyle.styles[ll.styles[numCharsInLine]].caseForce == Style::caseUpper)
+ ll.chars[numCharsInLine] = static_cast<char>(toupper(chDoc));
+ else if (vstyle.styles[ll.styles[numCharsInLine]].caseForce == Style::caseLower)
+ ll.chars[numCharsInLine] = static_cast<char>(tolower(chDoc));
numCharsInLine++;
}
}
@@ -4322,6 +4326,12 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {
InvalidateStyleRedraw();
}
break;
+ case SCI_STYLESETCASE:
+ if (wParam <= STYLE_MAX) {
+ vs.styles[wParam].caseForce = static_cast<Style::ecaseForced>(lParam);
+ InvalidateStyleRedraw();
+ }
+ break;
case SCI_STYLESETCHARACTERSET:
if (wParam <= STYLE_MAX) {
vs.styles[wParam].characterSet = lParam;