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 | 44ddca1860d99179c79906960bade604bb777cce (patch) | |
tree | 10193d3f0123d3594318290e0f121b561c69e1b1 /src | |
parent | cda5253c4b643f74ed2cfd5b9d222931ea75890b (diff) | |
download | scintilla-mirror-44ddca1860d99179c79906960bade604bb777cce.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; |