blob: 6e296ae6d2f7794c901af5513373040efc2ce1cb [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.gmf.runtime.common.ui.services.dnd">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.gmf.runtime.common.ui.services.dnd" id="dragDropListenerProviders" name="Drag and Drop Listeners Extension Points"/>
</appInfo>
<documentation>
This extension point is used to register drag source and drop target listeners
against element types within view parts.This extension point facilitates
the configuration of providers for the drag/drop listener service (&lt;tt&gt;org.eclipse.gmf.runtime.common.ui.services.dnd.core.DragDropListenerService&lt;/tt&gt;).
The providers register listeners for drag and drop operations on specific element
types within view parts.
</documentation>
</annotation>
<element name="extension">
<complexType>
<sequence>
<element ref="DragDropListenerProvider"/>
</sequence>
<attribute name="point" type="string" use="required">
<annotation>
<documentation>
The identifier of the extension point, i.e. &lt;tt&gt;org.eclipse.gmf.runtime.common.ui.services.dnd.dragDropListenerProviders&lt;/tt&gt;
</documentation>
</annotation>
</attribute>
<attribute name="id" type="string">
<annotation>
<documentation>
The identifier of the extension, e.g. dragDropListenerProviders.
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string">
<annotation>
<documentation>
The name of the extension, e.g. %ext.dragDropListenerProviders.
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="DragDropListenerProvider">
<complexType>
<sequence>
<element ref="Priority"/>
<element ref="ViewId" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The identifier of the provider, e.g. my_dragDropListenerProvider.
</documentation>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
The provider class. Providers implement service functionality (operations).
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn="org.eclipse.gmf.runtime.common.ui.services.dnd.core.AbstractDragDropListenerProvider"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="Priority">
<complexType>
<attribute name="name" use="required">
<annotation>
<documentation>
The name of the provider priority, i.e. Lowest, Low, Medium, High, or Highest.
</documentation>
</annotation>
<simpleType>
<restriction base="string">
<enumeration value="Lowest">
</enumeration>
<enumeration value="Low">
</enumeration>
<enumeration value="Medium">
</enumeration>
<enumeration value="High">
</enumeration>
<enumeration value="Highest">
</enumeration>
</restriction>
</simpleType>
</attribute>
</complexType>
</element>
<element name="ViewId">
<complexType>
<sequence>
<element ref="ElementType" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
The target view part id, e.g. &lt;tt&gt;org.eclipse.test.project.ui.views.MyView&lt;/tt&gt;
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="ElementType">
<complexType>
<sequence>
<element ref="OperationType" minOccurs="1" maxOccurs="2"/>
</sequence>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
The element type within the view part, e.g. &lt;tt&gt;org.eclipse.test.project.ui.internal.providers.MyElement&lt;/tt&gt;
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<element name="OperationType">
<complexType>
<sequence>
<element ref="TransferId" minOccurs="1" maxOccurs="unbounded"/>
</sequence>
<attribute name="operation" use="required">
<annotation>
<documentation>
The operation type being registered for within the view part, e.g. &lt;tt&gt;drag or drop&lt;/tt&gt;
</documentation>
</annotation>
<simpleType>
<restriction base="string">
<enumeration value="drag">
</enumeration>
<enumeration value="drop">
</enumeration>
</restriction>
</simpleType>
</attribute>
</complexType>
</element>
<element name="TransferId">
<complexType>
<attribute name="transferId" type="string" use="required">
<annotation>
<documentation>
The id for the transfer agent
</documentation>
</annotation>
</attribute>
</complexType>
</element>
<annotation>
<appInfo>
<meta.section type="examples"/>
</appInfo>
<documentation>
The following is an example of the drag and drop listener provider extension:
&lt;p&gt;
&lt;pre&gt;
&lt;extension
id=&quot;dragDropListenerProviders&quot;
name=&quot;%ext.dragDropListenerProviders&quot;
point=&quot;org.eclipse.gmf.runtime.common.ui.services.dnd.dragDropListenerProviders&quot;&gt;
&lt;DragDropListenerProvider
class=&quot;org.eclipse.test.project.ui.internal.providers.dnd.DragDropListenerProvider&quot;
id=&quot;myExplorerDragDropListenerProvider&quot;&gt;
&lt;Priority
name=&quot;Lowest&quot;&gt;
&lt;/Priority&gt;
&lt;ViewId
id=&quot;org.eclipse.test.project.ui.views.MyExplorer&quot;&gt;
&lt;ElementType
class=&quot;org.eclipse.test.project.ui.internal.providers.myexplorer.MyElement&quot;&gt;
&lt;OperationType
operation=&quot;drag&quot;&gt;
&lt;TransferId
transferId=&quot;selection&quot;&gt;
&lt;/TransferId&gt;
&lt;TransferId
transferId=&quot;customData&quot;&gt;
&lt;/TransferId&gt;
&lt;TransferId
transferId=&quot;file&quot;&gt;
&lt;/TransferId&gt;
&lt;TransferId
transferId=&quot;text&quot;&gt;
&lt;/TransferId&gt;
&lt;TransferId
transferId=&quot;richText&quot;&gt;
&lt;/TransferId&gt;
&lt;/OperationType&gt;
&lt;OperationType
operation=&quot;drop&quot;&gt;
&lt;TransferId
transferId=&quot;selection&quot;&gt;
&lt;/TransferId&gt;
&lt;TransferId
transferId=&quot;customData&quot;&gt;
&lt;/TransferId&gt;
&lt;/OperationType&gt;
&lt;/ElementType&gt;
&lt;/ViewId&gt;
&lt;/DragDropListenerProvider&gt;
&lt;/extension&gt;
&lt;/pre&gt;
&lt;/p&gt;
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="apiInfo"/>
</appInfo>
<documentation>
The value of the &lt;tt&gt;class&lt;/tt&gt; attribute must represent a subclass of
&lt;tt&gt;org.eclipse.gmf.runtime.common.core.service.AbstractProvider&lt;/tt&gt; that implements
&lt;tt&gt;org.eclipse.gmf.runtime.common.ui.services.dnd.core.IDragDropListenerProvider&lt;/tt&gt;, e.g. a subclass
of &lt;tt&gt;org.eclipse.gmf.runtime.common.ui.services.dnd.core.AbstractDragDropListenerProvider&lt;/tt&gt;.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
Copyright (c) 2003, 2005 IBM Corporation and others.&lt;br&gt;
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
&lt;a href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
</documentation>
</annotation>
</schema>