use of org.eclipse.mylyn.internal.wikitext.ui.editor.reconciler.MarkupMonoReconciler in project mylyn.docs by eclipse.
the class MarkupEditor method setMarkupLanguage.
public void setMarkupLanguage(MarkupLanguage markupLanguage, boolean persistSetting) {
if (markupLanguage instanceof AbstractMarkupLanguage) {
((AbstractMarkupLanguage) markupLanguage).setEnableMacros(false);
}
((MarkupDocumentProvider) getDocumentProvider()).setMarkupLanguage(markupLanguage);
IDocument document = getDocumentProvider().getDocument(getEditorInput());
IDocumentPartitioner partitioner = document.getDocumentPartitioner();
if (partitioner instanceof FastMarkupPartitioner) {
final FastMarkupPartitioner fastMarkupPartitioner = (FastMarkupPartitioner) partitioner;
fastMarkupPartitioner.setMarkupLanguage(markupLanguage);
}
sourceViewerConfiguration.setMarkupLanguage(markupLanguage);
if (getSourceViewer() != null) {
getSourceViewer().invalidateTextPresentation();
}
outlineDirty = true;
scheduleOutlineUpdate();
updateSourceTabLabel();
if (viewer != null) {
viewer.getTextWidget().setData(MarkupLanguage.class.getName(), getMarkupLanguage());
}
if (persistSetting && markupLanguage != null) {
storeMarkupLanguagePreference(markupLanguage);
}
if (persistSetting) {
ISourceViewer sourceViewer = getSourceViewer();
if (sourceViewer instanceof MarkupProjectionViewer) {
IReconciler reconciler = ((MarkupProjectionViewer) sourceViewer).getReconciler();
if (reconciler instanceof MarkupMonoReconciler) {
((MarkupMonoReconciler) reconciler).forceReconciling();
}
}
}
}
use of org.eclipse.mylyn.internal.wikitext.ui.editor.reconciler.MarkupMonoReconciler in project mylyn.docs by eclipse.
the class MarkupSourceViewerConfiguration method getReconciler.
@Override
public IReconciler getReconciler(ISourceViewer sourceViewer) {
IReconcilingStrategy strategy;
{
if (markupValidationReconcilingStrategy == null) {
markupValidationReconcilingStrategy = new MarkupValidationReconcilingStrategy(sourceViewer);
markupValidationReconcilingStrategy.setMarkupLanguage(markupLanguage);
markupValidationReconcilingStrategy.setResource(file);
}
IReconciler reconciler = super.getReconciler(sourceViewer);
if (reconciler != null) {
MultiReconcilingStrategy multiStrategy = new MultiReconcilingStrategy();
for (String contentType : FastMarkupPartitioner.ALL_CONTENT_TYPES) {
maybeAddReconcilingStrategyForContentType(multiStrategy, reconciler, contentType);
}
maybeAddReconcilingStrategyForContentType(multiStrategy, reconciler, IDocument.DEFAULT_CONTENT_TYPE);
multiStrategy.add(markupValidationReconcilingStrategy);
strategy = multiStrategy;
} else {
strategy = markupValidationReconcilingStrategy;
}
}
MonoReconciler reconciler = new MarkupMonoReconciler(strategy, false);
reconciler.setIsIncrementalReconciler(false);
reconciler.setProgressMonitor(new NullProgressMonitor());
reconciler.setDelay(500);
return reconciler;
}
Aggregations