blob: 20eda9a03ef227f721fd54c0bfe559a81a4e0e3b [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.wst.sse.ui">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.wst.sse.ui" id="extendedconfiguration" name="Extended Editor Configuration"/>
</appInfo>
<documentation>
The SSE StructuredTextEditor is intended to be as flexible as possible. Much of its design centers around the notion of defining and redefining its behavior and appearance based on the Content Type of its input.
</documentation>
</annotation>
<element name="extension">
<complexType>
<all>
<element ref="configuration"/>
<element ref="definition"/>
</all>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="configuration">
<annotation>
<documentation>
Declares a class fulfilling the requirements of a type to be used for the given target(s).
</documentation>
</annotation>
<complexType>
<attribute name="target" type="string" use="required">
<annotation>
<documentation>
A string defining when to use this extension, usually an Editor or Content Type ID. Multiple targets may be given as a comma delimited value.
</documentation>
</annotation>
</attribute>
<attribute name="type" type="string" use="required">
<annotation>
<documentation>
The type of configuration to find. Current types used include &quot;textviewerconfiguration&quot;, &quot;contentoutlineconfiguration&quot;, &quot;propertysheetconfiguration&quot;, and &quot;characterpairmatcher&quot;.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
Implementation class for this type.
</documentation>
<appInfo>
<meta.attribute kind="java"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="definition">
<annotation>
<documentation>
Defines a value for a type to be used for the given target(s).
</documentation>
</annotation>
<complexType>
<attribute name="type" type="string" use="required">
<annotation>
<documentation>
The type of definition to find. Currently used definitions include &quot;showintarget&quot;, a list of View IDs to show in the Navigate menu&apos;s Show In... submenu, and &quot;preferencepages&quot;, the list of fully qualified Preference page IDs to show for the editor&apos;s Preferences action. (NOTE: preferencepages is an unsupported definition)
</documentation>
</annotation>
</attribute>
<attribute name="value" type="string">
<annotation>
<documentation>
The value of this definition.
</documentation>
</annotation>
</attribute>
<attribute name="target" type="string" use="required">
<annotation>
<documentation>
A string defining when to use this extension, usually an Editor or Content Type ID. Multiple targets may be given as a comma delimited value.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="since"/>
</appInfo>
<documentation>
3.0
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
&lt;pre&gt;
&lt;extension point=&quot;org.eclipse.wst.sse.ui.extendedconfiguration&quot;&gt;
&lt;!-- associating a SourceViewerConfiguration to an input&apos;s Content Type--&gt;
&lt;configuration
type=&quot;textviewerconfiguration&quot;
class=&quot;org.eclipse.wst.html.ui.StructuredTextViewerConfigurationHTML&quot;
target=&quot;org.eclipse.wst.html.core.htmlsource&quot;/&gt;
&lt;!-- associating a ContentOutlineConfiguration for multiple editor IDs --&gt;
&lt;configuration
type=&quot;contentoutlineconfiguration&quot;
class=&quot;org.eclipse.wst.sse.xml.ui.views.contentoutline.XMLContentOutlineConfiguration&quot;
target=&quot;org.eclipse.wst.xml.ui.StructuredTextEditorXML, org.eclipse.wst.xml.ui.XMLMultiPageEditorPart&quot;/&gt;
&lt;!-- associating a PropertySheetConfiguration to multiple Content Types --&gt;
&lt;configuration
type=&quot;propertysheetconfiguration&quot;
class=&quot;org.eclipse.wst.xml.ui.views.properties.XMLPropertySheetConfiguration&quot;
target=&quot;org.eclipse.wst.sse.contenttype.xml, org.eclipse.wst.html.core.htmlsource, org.eclipse.jst.jsp.core.jspsource&quot;/&gt;
&lt;!-- add a view to the Navigate/Show In menu --&gt;
&lt;definition
type=&quot;showintarget&quot;
value=&quot;org.eclipse.wst.navigator.ui.WTPCommonNavigator&quot;
target=&quot;org.eclipse.wst.sse.ui.StructuredTextEditor&quot;/&gt;
&lt;/extension&gt;
&lt;/pre&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
&lt;br&gt;
&lt;code&gt;org.eclipse.wst.sse.ui.extension.ExtendedConfigurationBuilder&lt;/code&gt; is responsible for creating the extension objects as requested. New instances are returned for each request that succeeds. Invalid function names and targets will return null. The &lt;code&gt;StructuredTextEditor&lt;/code&gt; will automatically try targets generated by &lt;code&gt;org.eclipse.wst.sse.ui.extensions.ConfigurationPointCalculator&lt;/code&gt; according to where the &lt;code&gt;StructuredTextEditor&lt;/code&gt; finds itself at runtime. &lt;code&gt;ConfigurationPointCalculator&lt;/code&gt; ensures that the targets are always searched in a specific and predictable order. The following table lists the functionalities (types) currenty in use:
&lt;p&gt;
&lt;table border=&quot;1&quot;&gt;
&lt;tbody valign=&quot;top&quot;&gt;
&lt;tr&gt;&lt;td&gt;&lt;b&gt;Functionality (type)&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Implementation requirement&lt;/b&gt;&lt;/td&gt;&lt;td&gt;&lt;b&gt;Responsibilities&lt;/b&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;textviewerconfiguration&lt;/td&gt;&lt;td&gt;Must subclass &lt;code&gt;org.eclipse.wst.sse.ui.StructuredTextViewerConfiguration&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Defines the source viewer configuration to use, affecting Highlighting, Formatting, Content Assist, Hover help, and more.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;contentoutlineconfiguration&lt;/td&gt;&lt;td&gt;Must subclass &lt;code&gt;org.eclipse.wst.sse.ui.views.contentoutline.ContentOutlineConfiguration&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Defines how the IStructuredModel for the editor&apos;s input maps to elements with a Tree control, as well as selection filtering, toolbar and menu contributions, etc.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;propertysheetconfiguration&lt;/td&gt;&lt;td&gt;Must subclass &lt;code&gt;org.eclipse.wst.sse.ui.views.properties.PropertySheetConfiguration&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Defines the Property Source Provider, toolbar contributions, etc.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;sourceeditingtexttools&lt;/td&gt;&lt;td&gt;Must implement &lt;code&gt;org.eclipse.wst.sse.ui.extensions.breakpoint.SourceEditingTextTools&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Provides DOM to text and positional mapping information for use when setting and clearing breakpoints.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;spellchecktarget&lt;/td&gt;&lt;td&gt;Must implement &lt;code&gt;org.eclipse.wst.sse.ui.extensions.spellcheck.SpellCheckTarget&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Provides targetting information for the IBM eTools Spell Checker&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;showintarget&lt;/td&gt;&lt;td&gt;Must supply a valid &lt;code&gt;org.eclipse.ui.part.IShowInTarget&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Provides targetting information ShowIn actions in the Navigate menu&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;characterpairmatcher&lt;/td&gt;&lt;td&gt;Must implement &lt;code&gt;org.eclipse.jface.text.source.ICharacterPairMatcher&lt;/code&gt;&lt;/td&gt;&lt;td&gt;Will be used as the &quot;bracket&quot; matcher.&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
</documentation>
</annotation>
</schema>