aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Editor.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2021-03-29 08:25:51 +1100
committerNeil <nyamatongwe@gmail.com>2021-03-29 08:25:51 +1100
commitab70e1041cb40c9d807a18ca7abb5c000adf2fdf (patch)
tree709d60718e9cf33924a625f82ff7999494027f6f /src/Editor.cxx
parent508d037ed3389c5678addebefb62485ebfc10bb7 (diff)
downloadscintilla-mirror-ab70e1041cb40c9d807a18ca7abb5c000adf2fdf.tar.gz
Add SCI_SETELEMENTCOLOUR and related APIs to change colours of visible elements.
Implement SC_ELEMENT_LIST* to change colours of autocompletion lists.
Diffstat (limited to 'src/Editor.cxx')
-rw-r--r--src/Editor.cxx18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Editor.cxx b/src/Editor.cxx
index ad56a8eb8..fa356fe15 100644
--- a/src/Editor.cxx
+++ b/src/Editor.cxx
@@ -17,6 +17,7 @@
#include <string_view>
#include <vector>
#include <map>
+#include <set>
#include <forward_list>
#include <optional>
#include <algorithm>
@@ -7185,6 +7186,23 @@ sptr_t Editor::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lParam) {
InvalidateStyleRedraw();
break;
+ case SCI_SETELEMENTCOLOUR:
+ vs.elementColours[static_cast<int>(wParam)] = ColourAlpha(static_cast<int>(lParam));
+ break;
+
+ case SCI_GETELEMENTCOLOUR:
+ return vs.ElementColour(static_cast<int>(wParam)).value_or(ColourAlpha()).AsInteger();
+
+ case SCI_RESETELEMENTCOLOUR:
+ vs.elementColours[static_cast<int>(wParam)].reset();
+ break;
+
+ case SCI_GETELEMENTISSET:
+ return vs.ElementColour(static_cast<int>(wParam)).has_value();
+
+ case SCI_GETELEMENTALLOWSTRANSLUCENT:
+ return vs.ElementAllowsTranslucent(static_cast<int>(wParam));
+
#ifdef INCLUDE_DEPRECATED_FEATURES
case SCI_SETSTYLEBITS:
vs.EnsureStyle(0xff);