diff options
Diffstat (limited to 'src/ScintillaBase.cxx')
| -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; | 
