diff options
author | Neil <nyamatongwe@gmail.com> | 2013-09-03 18:25:32 +1000 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2013-09-03 18:25:32 +1000 |
commit | 77e3727bdd5c981c338fd1c0bc073393aa2f5068 (patch) | |
tree | 14ab874e81b5216e3f4154d94a9b14da76f48bd2 /src | |
parent | e27fc2d13734da7861ca1c640143b172927f25a6 (diff) | |
download | scintilla-mirror-77e3727bdd5c981c338fd1c0bc073393aa2f5068.tar.gz |
Added GetStyleFromSubStyle.
Tests for this and other sub styles methods.
Diffstat (limited to 'src')
-rw-r--r-- | src/ScintillaBase.cxx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx index 814eac726..e65b3ecf7 100644 --- a/src/ScintillaBase.cxx +++ b/src/ScintillaBase.cxx @@ -503,6 +503,7 @@ public: int AllocateSubStyles(int styleBase, int numberStyles); int SubStylesStart(int styleBase); int SubStylesLength(int styleBase); + int StyleFromSubStyle(int subStyle); void FreeSubStyles(); void SetIdentifiers(int style, const char *identifiers); int DistanceToSecondaryStyles(); @@ -678,6 +679,13 @@ int LexState::SubStylesLength(int styleBase) { return 0; } +int LexState::StyleFromSubStyle(int subStyle) { + if (instance && (interfaceVersion >= lvSubStyles)) { + return static_cast<ILexerWithSubStyles *>(instance)->StyleFromSubStyle(subStyle); + } + return 0; +} + void LexState::FreeSubStyles() { if (instance && (interfaceVersion >= lvSubStyles)) { static_cast<ILexerWithSubStyles *>(instance)->FreeSubStyles(); @@ -983,6 +991,9 @@ sptr_t ScintillaBase::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lPara case SCI_GETSUBSTYLESLENGTH: return DocumentLexState()->SubStylesLength(wParam); + case SCI_GETSTYLEFROMSUBSTYLE: + return DocumentLexState()->StyleFromSubStyle(wParam); + case SCI_FREESUBSTYLES: DocumentLexState()->FreeSubStyles(); break; |