use of org.eclipse.jst.jsp.ui.internal.autoedit.StructuredAutoEditStrategyJSP in project webtools.sourceediting by eclipse.
the class StructuredTextViewerConfigurationJSP method getAutoEditStrategies.
/*
* (non-Javadoc)
*
* @see org.eclipse.jface.text.source.SourceViewerConfiguration#getAutoEditStrategies(org.eclipse.jface.text.source.ISourceViewer,
* java.lang.String)
*/
public IAutoEditStrategy[] getAutoEditStrategies(ISourceViewer sourceViewer, String contentType) {
IAutoEditStrategy[] strategies = null;
if (contentType == IXMLPartitions.XML_DEFAULT) {
// xml autoedit strategies
strategies = getXMLSourceViewerConfiguration().getAutoEditStrategies(sourceViewer, contentType);
} else if (contentType == IJSPPartitions.JSP_CONTENT_JAVA) {
// jsp java autoedit strategies
List allStrategies = new ArrayList(0);
// add the scritplet autoedit strategy first
allStrategies.add(new StructuredAutoEditStrategyJSPJava());
IAutoEditStrategy[] javaStrategies = getJavaSourceViewerConfiguration().getAutoEditStrategies(sourceViewer, IJavaPartitions.JAVA_PARTITIONING);
for (int i = 0; i < javaStrategies.length; i++) {
allStrategies.add(javaStrategies[i]);
}
// be sure this is added last, after others, so it can modify
// results from earlier steps.
// add auto edit strategy that handles when tab key is pressed
allStrategies.add(new AutoEditStrategyForTabs());
strategies = (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[allStrategies.size()]);
} else if (contentType == IHTMLPartitions.HTML_DEFAULT || contentType == IHTMLPartitions.HTML_DECLARATION || contentType == IJSPPartitions.JSP_DIRECTIVE) {
// html and jsp autoedit strategies
List allStrategies = new ArrayList(0);
// add the jsp autoedit strategy first then add all html's
allStrategies.add(new StructuredAutoEditStrategyJSP());
IAutoEditStrategy[] htmlStrategies = getHTMLSourceViewerConfiguration().getAutoEditStrategies(sourceViewer, contentType);
for (int i = 0; i < htmlStrategies.length; i++) {
allStrategies.add(htmlStrategies[i]);
}
strategies = (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[allStrategies.size()]);
} else {
// default autoedit strategies
List allStrategies = new ArrayList(0);
IAutoEditStrategy[] superStrategies = super.getAutoEditStrategies(sourceViewer, contentType);
for (int i = 0; i < superStrategies.length; i++) {
allStrategies.add(superStrategies[i]);
}
// be sure this is added last, after others, so it can modify
// results from earlier steps.
// add auto edit strategy that handles when tab key is pressed
allStrategies.add(new AutoEditStrategyForTabs());
strategies = (IAutoEditStrategy[]) allStrategies.toArray(new IAutoEditStrategy[allStrategies.size()]);
}
return strategies;
}
Aggregations