| <?xml version='1.0' encoding='UTF-8'?> |
| <!-- Schema file written by PDE --> |
| <schema targetNamespace="org.eclipse.e4.tools.emf.ui" xmlns="http://www.w3.org/2001/XMLSchema"> |
| <annotation> |
| <appinfo> |
| <meta.schema plugin="org.eclipse.e4.tools.emf.ui" id="org.eclipse.e4.tools.emf.ui.editors" name="Editors"/> |
| </appinfo> |
| <documentation> |
| Contribute editor(s), creation assistants and features for application model element(s). |
| <br><br> |
| This extension point allows three distinct extensions: |
| <ul> |
| <li>Definition of (virtual) element editors</li> |
| <li>Contribution of model element creation assistants</li> |
| <li>Contribution of features for reference by existing model elements</li> |
| <li>Contribution of additional tabs to existing element editors</li> |
| </ul> |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <annotation> |
| <appinfo> |
| <meta.element /> |
| </appinfo> |
| </annotation> |
| <complexType> |
| <sequence> |
| <element ref="editor" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="virtualeditor" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="editorfeature" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="contributionClassCreator" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="editorTab" minOccurs="0" maxOccurs="unbounded"/> |
| </sequence> |
| <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> |
| <appinfo> |
| <meta.attribute translatable="true"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="editor"> |
| <annotation> |
| <documentation> |
| Contribute an editor for a model element. Used to support editing new model elements not yet covered by the tooling. |
| <br><br> |
| Editors contributed using this extension point override default editors. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="descriptorClass" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Defines the supported model element and returns a class capable of editing it. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn=":org.eclipse.e4.tools.emf.ui.common.IEditorDescriptor"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="virtualeditor"> |
| <annotation> |
| <documentation> |
| Contribute an editor for a virtual model element. |
| <br><br> |
| A virtual model element is an element not backed by a real object. This is for example the case for editors defining the logical tree structure. These virtual editors may containireal model element objects. A concrete example is the virtual <i>Command Categories</i> editor managing <i>MCategory</i> objects. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| The element id this virtual editor is used for. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| An abstract visual editor class for the virtual model element. Use as basis to realize a virtual element editor. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.e4.tools.emf.ui.common.component.AbstractComponentEditor:"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="editorfeature"> |
| <annotation> |
| <documentation> |
| Contribute features castable to <i>class</i> for reference by the application model. |
| <br><br> |
| This is currently used to contribute <i>MExpression#visibleWhen</i> and |
| <i>ModelFragment#imports</i> elements. So, for example, a custom <i>MExpression</i> class could be contributed in order to provide a specific <i>visibleWhen</i> rule. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Contributes the list of FeatureClass elements. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn=":org.eclipse.e4.tools.emf.ui.common.IEditorFeature"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="contributionClassCreator"> |
| <annotation> |
| <documentation> |
| Contribute an assistant for a model elements contribution class creation. |
| <br> |
| This assistant will be called by the element editor when instantiating a new contribution of the respective EClass. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Specifies the supported types and implements the creation and subsequent presentation of the newly created object in an editor. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn=":org.eclipse.e4.tools.emf.ui.common.IContributionClassCreator"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="editorTab"> |
| <annotation> |
| <documentation> |
| Register additional editor tabs to elements in the editor. For each contribution to this extension point, a respective tab item is shown for elements the contribution opts for. |
| </documentation> |
| </annotation> |
| <complexType> |
| <attribute name="contribution" type="string" use="required"> |
| <annotation> |
| <documentation> |
| Defines the types the editorTab is contributed to, the tab label to present and the contributed editor tab itself. |
| </documentation> |
| <appinfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.e4.tools.emf.ui.common.AbstractElementEditorContribution:"/> |
| </appinfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="since"/> |
| </appinfo> |
| <documentation> |
| [Enter the first release in which this extension point appears.] |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="examples"/> |
| </appinfo> |
| <documentation> |
| [Enter extension point usage example here.] |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="apiinfo"/> |
| </appinfo> |
| <documentation> |
| [Enter API information here.] |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appinfo> |
| <meta.section type="implementation"/> |
| </appinfo> |
| <documentation> |
| [Enter information about supplied implementation of this extension point.] |
| </documentation> |
| </annotation> |
| |
| |
| </schema> |