blob: b6b79d8c8bbfbd866a5e6001ee8c97f85dfb554a [file] [log] [blame]
<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.ui">
<annotation>
<appInfo>
<meta.schema plugin="org.eclipse.ui" id="intro" name="Intro Part"/>
</appInfo>
<documentation>
This extension point is used to register a part that is responsible for rendering the initial product experience. The part is created on application startup and is allowed to consume most of the application window client area. The extension provider is responsible for providing the content.
&lt;p&gt;
Life cycle of the initial product experience is as follows:
&lt;ul&gt;
&lt;li&gt;
Initial experience area is created on startup. The class that will be used to control its state will implement &lt;samp&gt;IIntroArea&lt;/samp&gt; interface.&lt;/li&gt;
&lt;li&gt;Clients will use this extension point to plug in a class that implements &lt;samp&gt;IIntroPart&lt;/samp&gt; interface. After creation, this interface will be initialized by passing the IIntroArea object.&lt;/li&gt;
&lt;li&gt;During the initial experience, IIntroPart can cause the IIntroArea object to go into the stand-by state, where most of the window area is consumed by the current perspective, while only a small part on the edge is still occupied by the initial experience client.&lt;/li&gt;
&lt;li&gt;Users can toggle IIntroArea between active and stand-by mode several times.&lt;/li&gt;
&lt;li&gt;Eventually, IIntroArea will be closed (either programmatically or explicitly by the user. The current perspective will take over the entire application window area.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Users are free to create any kind of SWT control as a client of the intro area. Typically, HTML browser widget will be used in order to provide for a rich user experience.
</documentation>
</annotation>
<element name="extension">
<complexType>
<sequence>
<element ref="intro" minOccurs="0" maxOccurs="unbounded"/>
<element ref="introProductBinding" 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>
</annotation>
</attribute>
</complexType>
</element>
<element name="intro">
<annotation>
<documentation>
Specifies an introduction element.
</documentation>
</annotation>
<complexType>
<attribute name="id" type="string" use="required">
<annotation>
<documentation>
a unique identifier that can be used to reference the intro element.
</documentation>
</annotation>
</attribute>
<attribute name="name" type="string" use="required">
<annotation>
<documentation>
a translatable name that will be used in the UI for this intro
</documentation>
</annotation>
</attribute>
<attribute name="icon" type="string">
<annotation>
<documentation>
a relative name of the icon that will be used for all resources that match the specified extensions.
</documentation>
<appInfo>
<meta.attribute kind="resource"/>
</appInfo>
</annotation>
</attribute>
<attribute name="class" type="string" use="required">
<annotation>
<documentation>
a fully qualified name of the class that implements &lt;samp&gt;org.eclipse.ui.intro.IIntroPart&lt;/samp&gt; interface.
</documentation>
<appInfo>
<meta.attribute kind="java" basedOn="org.eclipse.ui.intro.IIntroPart"/>
</appInfo>
</annotation>
</attribute>
</complexType>
</element>
<element name="introProductBinding">
<annotation>
<documentation>
This element creates a binding between a product and an introduction. When the workbench is started only an introduction bound to the current product (as defined by &lt;code&gt;org.eclipse.core.runtime.Platform.getProduct()&lt;/code&gt;) will be used.
</documentation>
</annotation>
<complexType>
<attribute name="productId" type="string" use="required">
<annotation>
<documentation>
product identifier used to resolve the case when more than one intro parts have been registered. This can typically happen when there are two or more primary features present in the platform (RCP applications that support features will most likely provide extension definition in the primary feature plug-in). In this case, one of these primary features is used to provide application identity and &lt;samp&gt;productId&lt;/samp&gt; is used to identify it.
</documentation>
</annotation>
</attribute>
<attribute name="introId" type="string" use="required">
<annotation>
<documentation>
intro identifier that specifies the intro part to use for the provided product
</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>
The following is an example of an intro part extension:
&lt;p&gt;
&lt;pre&gt;
&lt;extension point=&quot;org.eclipse.ui.intro&quot;&gt;
&lt;intro
id=&quot;com.example.xyz.intro.custom&quot;
productId=&quot;com.example.xyz.XYZProduct&quot;
class=&quot;com.example.xyz.intro.IntroPart&quot;/&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;samp&gt;class&lt;/samp&gt; attribute must be a name of the class that implements &lt;samp&gt;org.eclipse.ui.intro.IIntroPart&lt;/samp&gt; interface. It controls the life cycle of the initial user experience using the provided &lt;samp&gt;org.eclipse.ui.intro.IIntroArea&lt;/samp&gt; object.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="implementation"/>
</appInfo>
<documentation>
There are no default implementations of the initial user experience. Each Eclipse-based product is responsible for providing one that is closely matched to its branding and function.
</documentation>
</annotation>
<annotation>
<appInfo>
<meta.section type="copyright"/>
</appInfo>
<documentation>
Copyright (c) 2002, 2003 IBM Corporation and others.&lt;br&gt;
All rights reserved. This program and the accompanying materials are made
available under the terms of the Common Public License v1.0 which accompanies
this distribution, and is available at
&lt;a href=&quot;http://www.eclipse.org/legal/cpl-v10.html&quot;&gt;http://www.eclipse.org/legal/cpl-v10.html&lt;/a&gt;
</documentation>
</annotation>
</schema>