aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ScintillaBase.cxx
diff options
context:
space:
mode:
authorNeil <nyamatongwe@gmail.com>2013-09-05 16:37:34 +1000
committerNeil <nyamatongwe@gmail.com>2013-09-05 16:37:34 +1000
commit258060914b6c1aa88197619e87e4393b4dc9fa65 (patch)
tree1c33dfc025d481ad6b677fc6fe245a0fc3599461 /src/ScintillaBase.cxx
parent55a841ef116ce538fc4d14bb78beb0484be604be (diff)
downloadscintilla-mirror-258060914b6c1aa88197619e87e4393b4dc9fa65.tar.gz
Added SCI_GETPRIMARYSTYLEFROMSTYLE.
Diffstat (limited to 'src/ScintillaBase.cxx')
-rw-r--r--src/ScintillaBase.cxx11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx
index e65b3ecf7..75f0d5a16 100644
--- a/src/ScintillaBase.cxx
+++ b/src/ScintillaBase.cxx
@@ -504,6 +504,7 @@ public:
int SubStylesStart(int styleBase);
int SubStylesLength(int styleBase);
int StyleFromSubStyle(int subStyle);
+ int PrimaryStyleFromStyle(int style);
void FreeSubStyles();
void SetIdentifiers(int style, const char *identifiers);
int DistanceToSecondaryStyles();
@@ -686,6 +687,13 @@ int LexState::StyleFromSubStyle(int subStyle) {
return 0;
}
+int LexState::PrimaryStyleFromStyle(int style) {
+ if (instance && (interfaceVersion >= lvSubStyles)) {
+ return static_cast<ILexerWithSubStyles *>(instance)->PrimaryStyleFromStyle(style);
+ }
+ return 0;
+}
+
void LexState::FreeSubStyles() {
if (instance && (interfaceVersion >= lvSubStyles)) {
static_cast<ILexerWithSubStyles *>(instance)->FreeSubStyles();
@@ -994,6 +1002,9 @@ sptr_t ScintillaBase::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lPara
case SCI_GETSTYLEFROMSUBSTYLE:
return DocumentLexState()->StyleFromSubStyle(wParam);
+ case SCI_GETPRIMARYSTYLEFROMSTYLE:
+ return DocumentLexState()->PrimaryStyleFromStyle(wParam);
+
case SCI_FREESUBSTYLES:
DocumentLexState()->FreeSubStyles();
break;