diff options
5 files changed, 44 insertions, 137 deletions
diff --git a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java index 45b61657fe..87ff1046cb 100644 --- a/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java +++ b/bundles/org.eclipse.jst.jsp.ui/src/org/eclipse/jst/jsp/ui/StructuredTextViewerConfigurationJSP.java @@ -33,7 +33,6 @@ import org.eclipse.jface.text.hyperlink.IHyperlinkDetector; import org.eclipse.jface.text.information.IInformationPresenter; import org.eclipse.jface.text.information.IInformationProvider; import org.eclipse.jface.text.information.InformationPresenter; -import org.eclipse.jface.text.reconciler.IReconciler; import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.jst.jsp.core.internal.provisional.text.IJSPPartitionTypes; import org.eclipse.jst.jsp.core.internal.text.StructuredTextPartitionerForJSP; @@ -64,9 +63,7 @@ import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTy import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration; import org.eclipse.wst.sse.ui.internal.SSEUIPlugin; import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy; -import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider; -import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor; import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager; import org.eclipse.wst.sse.ui.internal.util.EditorUtility; import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions; @@ -92,10 +89,7 @@ public class StructuredTextViewerConfigurationJSP extends StructuredTextViewerCo private LineStyleProvider fLineStyleProviderForJSPEL; private StructuredTextViewerConfiguration fHTMLSourceViewerConfiguration; private JavaSourceViewerConfiguration fJavaSourceViewerConfiguration; - /* - * One instance per configuration - */ - private IReconciler fReconciler; + private StructuredTextViewerConfiguration fXMLSourceViewerConfiguration; /* @@ -434,33 +428,6 @@ public class StructuredTextViewerConfigurationJSP extends StructuredTextViewerCo } return fLineStyleProviderForJSPEL; } - - public IReconciler getReconciler(ISourceViewer sourceViewer) { - boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS); - if (sourceViewer == null || !reconcilingEnabled) - return null; - - /* - * Only create reconciler if sourceviewer is present - */ - if (fReconciler == null && sourceViewer != null) { - StructuredRegionProcessor reconciler = new StructuredRegionProcessor(); - - // reconciler configurations - reconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer)); - - // reconciling strategies for reconciler - //IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup(sourceViewer); - - // add reconciling strategies - //reconciler.setReconcilingStrategy(markupStrategy, IStructuredPartitionTypes.DEFAULT_PARTITION); - //reconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT); - //reconciler.setDefaultStrategy(markupStrategy); - - fReconciler = reconciler; - } - return fReconciler; - } public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) { ITextHover hover = null; diff --git a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java index cb7ce170cf..34e06d962b 100644 --- a/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java +++ b/bundles/org.eclipse.wst.dtd.ui/src/org/eclipse/wst/dtd/ui/StructuredTextViewerConfigurationDTD.java @@ -12,16 +12,13 @@ *******************************************************************************/ package org.eclipse.wst.dtd.ui; -import org.eclipse.jface.text.reconciler.IReconciler; import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.wst.dtd.core.internal.provisional.text.IDTDPartitionTypes; import org.eclipse.wst.dtd.ui.internal.style.LineStyleProviderForDTD; import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTypes; import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration; -import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProviderForNoOp; -import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor; /** @@ -43,10 +40,6 @@ public class StructuredTextViewerConfigurationDTD extends StructuredTextViewerCo * One instance per configuration */ private LineStyleProvider fLineStyleProviderForNoop; - /* - * One instance per configuration - */ - private IReconciler fReconciler; public String[] getConfiguredContentTypes(ISourceViewer sourceViewer) { if (fConfiguredContentTypes == null) { @@ -80,30 +73,4 @@ public class StructuredTextViewerConfigurationDTD extends StructuredTextViewerCo } return fLineStyleProviderForNoop; } - - public IReconciler getReconciler(ISourceViewer sourceViewer) { - boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS); - if (sourceViewer == null || !reconcilingEnabled) - return null; - - /* - * Only create reconciler if sourceviewer is present - */ - if (fReconciler == null && sourceViewer != null) { - StructuredRegionProcessor reconciler = new StructuredRegionProcessor(); - - // reconciler configurations - reconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer)); - - // IReconcilingStrategy markupStrategy = new - // StructuredTextReconcilingStrategyForMarkup((ITextEditor) - // editorPart); - // fReconciler.setReconcilingStrategy(markupStrategy, - // IXMLPartitions.XML_DEFAULT); - // fReconciler.setDefaultStrategy(markupStrategy); - - fReconciler = reconciler; - } - return fReconciler; - } } diff --git a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java index 95a1696817..4258aff34f 100644 --- a/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java +++ b/bundles/org.eclipse.wst.html.ui/src/org/eclipse/wst/html/ui/StructuredTextViewerConfigurationHTML.java @@ -30,7 +30,6 @@ import org.eclipse.jface.text.hyperlink.IHyperlinkDetector; import org.eclipse.jface.text.information.IInformationPresenter; import org.eclipse.jface.text.information.IInformationProvider; import org.eclipse.jface.text.information.InformationPresenter; -import org.eclipse.jface.text.reconciler.IReconciler; import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Shell; @@ -60,9 +59,7 @@ import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTy import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration; import org.eclipse.wst.sse.ui.internal.SSEUIPlugin; import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy; -import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider; -import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor; import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager; import org.eclipse.wst.sse.ui.internal.util.EditorUtility; import org.eclipse.wst.xml.core.internal.provisional.text.IXMLPartitions; @@ -87,10 +84,7 @@ public class StructuredTextViewerConfigurationHTML extends StructuredTextViewerC * One instance per configuration */ private LineStyleProvider fLineStyleProviderForJavascript; - /* - * One instance per configuration - */ - private IReconciler fReconciler; + /* * One instance per configuration */ @@ -353,33 +347,6 @@ public class StructuredTextViewerConfigurationHTML extends StructuredTextViewerC return fLineStyleProviderForJavascript; } - public IReconciler getReconciler(ISourceViewer sourceViewer) { - boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS); - if (sourceViewer == null || !reconcilingEnabled) - return null; - - /* - * Only create reconciler if sourceviewer is present - */ - if (fReconciler == null && sourceViewer != null) { - StructuredRegionProcessor reconciler = new StructuredRegionProcessor(); - - // reconciler configurations - reconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer)); - -// // reconciling strategies for reconciler -// IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup(sourceViewer); -// -// // add reconciling strategies -// reconciler.setReconcilingStrategy(markupStrategy, IStructuredPartitionTypes.DEFAULT_PARTITION); -// reconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT); -// reconciler.setDefaultStrategy(markupStrategy); - - fReconciler = reconciler; - } - return fReconciler; - } - public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) { ITextHover textHover = null; diff --git a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerConfiguration.java b/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerConfiguration.java index b43823fd92..73ba93a380 100644 --- a/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerConfiguration.java +++ b/bundles/org.eclipse.wst.sse.ui/src/org/eclipse/wst/sse/ui/StructuredTextViewerConfiguration.java @@ -21,6 +21,7 @@ import org.eclipse.jface.text.IUndoManager; import org.eclipse.jface.text.contentassist.IContentAssistant; import org.eclipse.jface.text.hyperlink.IHyperlinkPresenter; import org.eclipse.jface.text.presentation.IPresentationReconciler; +import org.eclipse.jface.text.reconciler.IReconciler; import org.eclipse.jface.text.source.IAnnotationHover; import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.ui.editors.text.EditorsUI; @@ -31,7 +32,9 @@ import org.eclipse.wst.sse.ui.internal.SSEUIPlugin; import org.eclipse.wst.sse.ui.internal.StructuredTextAnnotationHover; import org.eclipse.wst.sse.ui.internal.contentassist.StructuredContentAssistant; import org.eclipse.wst.sse.ui.internal.hyperlink.HighlighterHyperlinkPresenter; +import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider; +import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor; import org.eclipse.wst.sse.ui.internal.taginfo.AnnotationHoverProcessor; import org.eclipse.wst.sse.ui.internal.taginfo.BestMatchHover; import org.eclipse.wst.sse.ui.internal.taginfo.ProblemAnnotationHoverProcessor; @@ -58,6 +61,7 @@ public class StructuredTextViewerConfiguration extends TextSourceViewerConfigura * is added to a viewer can cause odd key-eating by the wrong one. */ private StructuredContentAssistant fContentAssistant = null; + private IReconciler fReconciler; public StructuredTextViewerConfiguration() { super(); @@ -213,7 +217,7 @@ public class StructuredTextViewerConfiguration extends TextSourceViewerConfigura public LineStyleProvider[] getLineStyleProviders(ISourceViewer sourceViewer, String partitionType) { return null; } - + public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) { /* * This implementation returns null because StructuredTextViewer does @@ -221,7 +225,7 @@ public class StructuredTextViewerConfiguration extends TextSourceViewerConfigura */ return null; } - + public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) { ITextHover textHover = null; @@ -269,4 +273,39 @@ public class StructuredTextViewerConfiguration extends TextSourceViewerConfigura * by executable extension */ } + + /** + * Returns the reconciler ready to be used with the given source viewer.<br /> + * Note: The same instance of IReconciler is returned regardless of the + * source viewer passed in. + * <p> + * Clients cannot override this method. Instead, clients wanting to add + * their own reconciling strategy should use the + * <code>org.eclipse.wst.sse.ui.extensions.sourcevalidation</code> + * extension point. + * </p> + * + * @param sourceViewer + * the source viewer to be configured by this configuration + * @return a reconciler + */ + final public IReconciler getReconciler(ISourceViewer sourceViewer) { + boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS); + if (sourceViewer == null || !reconcilingEnabled) + return null; + + /* + * Only create reconciler if sourceviewer is present + */ + if (fReconciler == null && sourceViewer != null) { + StructuredRegionProcessor reconciler = new StructuredRegionProcessor(); + + // reconciler configurations + + reconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer)); + + fReconciler = reconciler; + } + return fReconciler; + } } diff --git a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java index 05680ca0f4..c008af164f 100644 --- a/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java +++ b/bundles/org.eclipse.wst.xml.ui/src/org/eclipse/wst/xml/ui/StructuredTextViewerConfigurationXML.java @@ -32,7 +32,6 @@ import org.eclipse.jface.text.hyperlink.IHyperlinkDetector; import org.eclipse.jface.text.information.IInformationPresenter; import org.eclipse.jface.text.information.IInformationProvider; import org.eclipse.jface.text.information.InformationPresenter; -import org.eclipse.jface.text.reconciler.IReconciler; import org.eclipse.jface.text.source.ISourceViewer; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Shell; @@ -41,9 +40,7 @@ import org.eclipse.wst.sse.core.internal.provisional.text.IStructuredPartitionTy import org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration; import org.eclipse.wst.sse.ui.internal.SSEUIPlugin; import org.eclipse.wst.sse.ui.internal.format.StructuredFormattingStrategy; -import org.eclipse.wst.sse.ui.internal.provisional.preferences.CommonEditorPreferenceNames; import org.eclipse.wst.sse.ui.internal.provisional.style.LineStyleProvider; -import org.eclipse.wst.sse.ui.internal.reconcile.StructuredRegionProcessor; import org.eclipse.wst.sse.ui.internal.taginfo.TextHoverManager; import org.eclipse.wst.sse.ui.internal.util.EditorUtility; import org.eclipse.wst.xml.core.internal.XMLCorePlugin; @@ -78,10 +75,7 @@ public class StructuredTextViewerConfigurationXML extends StructuredTextViewerCo * One instance per configuration */ private LineStyleProvider fLineStyleProviderForXML; - /* - * One instance per configuration - */ - private IReconciler fReconciler; + public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) { List allStrategies = new ArrayList(0); @@ -293,33 +287,6 @@ public class StructuredTextViewerConfigurationXML extends StructuredTextViewerCo return fLineStyleProviderForXML; } - - public IReconciler getReconciler(ISourceViewer sourceViewer) { - boolean reconcilingEnabled = fPreferenceStore.getBoolean(CommonEditorPreferenceNames.EVALUATE_TEMPORARY_PROBLEMS); - if (sourceViewer == null || !reconcilingEnabled) - return null; - - /* - * Only create reconciler if sourceviewer is present - */ - if (fReconciler == null && sourceViewer != null) { - StructuredRegionProcessor reconciler = new StructuredRegionProcessor(); - - // reconciler configurations - reconciler.setDocumentPartitioning(getConfiguredDocumentPartitioning(sourceViewer)); - -// // reconciling strategies for reconciler -// IReconcilingStrategy markupStrategy = new StructuredTextReconcilingStrategyForMarkup(sourceViewer); -// -// // add reconciling strategies -// reconciler.setReconcilingStrategy(markupStrategy, IXMLPartitions.XML_DEFAULT); -// reconciler.setDefaultStrategy(markupStrategy); - - fReconciler = reconciler; - } - return fReconciler; - } - public ITextHover getTextHover(ISourceViewer sourceViewer, String contentType, int stateMask) { ITextHover textHover = null; |