| 3202 | } |
| 3203 | |
| 3204 | void UICodeEditor::setSyntaxDefinition( const SyntaxDefinition& definition ) { |
| 3205 | if ( &definition == &mDoc->getSyntaxDefinition() ) |
| 3206 | return; |
| 3207 | std::string oldLang( mDoc->getSyntaxDefinition().getLanguageName() ); |
| 3208 | mDoc->getHighlighter()->reset(); |
| 3209 | mDoc->setSyntaxDefinition( definition ); |
| 3210 | if ( mMinimapEnabled && getUISceneNode()->hasThreadPool() ) { |
| 3211 | mDoc->getHighlighter()->tokenizeAsync( getUISceneNode()->getThreadPool(), [this] { |
| 3212 | runOnMainThread( [this] { invalidateDraw(); } ); |
| 3213 | } ); |
| 3214 | } |
| 3215 | findRegionsDelayed(); |
| 3216 | invalidateDraw(); |
| 3217 | DocSyntaxDefEvent event( this, mDoc.get(), Event::OnDocumentSyntaxDefinitionChange, oldLang, |
| 3218 | mDoc->getSyntaxDefinition().getLanguageName() ); |
| 3219 | sendEvent( &event ); |
| 3220 | } |
| 3221 | |
| 3222 | void UICodeEditor::resetSyntaxDefinition() { |
| 3223 | std::string oldLang( mDoc->getSyntaxDefinition().getLanguageName() ); |