diff options
author | Neil <nyamatongwe@gmail.com> | 2017-06-22 17:43:56 +1000 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2017-06-22 17:43:56 +1000 |
commit | 3a993f0a5e97435874e06d5496085c4cb7a0d4cb (patch) | |
tree | f1bfbd0aa566e23e67d9340f5fde763ba3621278 /src | |
parent | 6c72bb1aba1b8b0cea4bd5360f94847316166a92 (diff) | |
download | scintilla-mirror-3a993f0a5e97435874e06d5496085c4cb7a0d4cb.tar.gz |
Backport: Add style metadata methods with null implementations.
Backport based on changesets 6345:faecbd0078e5 and 6346:72bd27f81477.
Diffstat (limited to 'src')
-rw-r--r-- | src/ScintillaBase.cxx | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/ScintillaBase.cxx b/src/ScintillaBase.cxx index 0c7df04cb..23dce2fbf 100644 --- a/src/ScintillaBase.cxx +++ b/src/ScintillaBase.cxx @@ -582,6 +582,10 @@ public: void SetIdentifiers(int style, const char *identifiers); int DistanceToSecondaryStyles(); const char *GetSubStyleBases(); + int NamedStyles(); + const char *NameOfStyle(int style); + const char *TagsOfStyle(int style); + const char *DescriptionOfStyle(int style); }; #ifdef SCI_NAMESPACE @@ -790,6 +794,38 @@ const char *LexState::GetSubStyleBases() { return ""; } +int LexState::NamedStyles() { + if (instance && (interfaceVersion >= lvMetaData)) { + return static_cast<ILexerWithMetaData *>(instance)->NamedStyles(); + } else { + return -1; + } +} + +const char *LexState::NameOfStyle(int style) { + if (instance && (interfaceVersion >= lvMetaData)) { + return static_cast<ILexerWithMetaData *>(instance)->NameOfStyle(style); + } else { + return 0; + } +} + +const char *LexState::TagsOfStyle(int style) { + if (instance && (interfaceVersion >= lvMetaData)) { + return static_cast<ILexerWithMetaData *>(instance)->TagsOfStyle(style); + } else { + return 0; + } +} + +const char *LexState::DescriptionOfStyle(int style) { + if (instance && (interfaceVersion >= lvMetaData)) { + return static_cast<ILexerWithMetaData *>(instance)->DescriptionOfStyle(style); + } else { + return 0; + } +} + #endif void ScintillaBase::NotifyStyleToNeeded(Sci::Position endStyleNeeded) { @@ -1101,6 +1137,19 @@ sptr_t ScintillaBase::WndProc(unsigned int iMessage, uptr_t wParam, sptr_t lPara case SCI_GETSUBSTYLEBASES: return StringResult(lParam, DocumentLexState()->GetSubStyleBases()); + + case SCI_GETNAMEDSTYLES: + return DocumentLexState()->NamedStyles(); + + case SCI_NAMEOFSTYLE: + return StringResult(lParam, DocumentLexState()->NameOfStyle(wParam)); + + case SCI_TAGSOFSTYLE: + return StringResult(lParam, DocumentLexState()->TagsOfStyle(wParam)); + + case SCI_DESCRIPTIONOFSTYLE: + return StringResult(lParam, DocumentLexState()->DescriptionOfStyle(wParam)); + #endif default: |