| <?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="splashHandlers" name="Splash Handlers"/> |
| </appInfo> |
| <documentation> |
| <p>This extension point allows for the contribution of splash handlers. These splash handlers may contribute custom behavior to the splash screen that appears during the start-up procedure that may include (but is not limited to) custom graphics and animation, custom progress reporting, and interactive behaviors.</p> |
| <p>It is possible to have only one splash handler active at a given time and the decision of which handler to choose from comes down to a product binding. As such, when defining a splash handler you must create two elements in your extension: the definition of the splash handler (represented by a <code>splashHandler</code> element) and a product binding (represented by a <code>splashHandlerProductBinding</code> element).</p> |
| <p>The splash life cycle is as follows: |
| <ul> |
| <li>Eclipse process is launched</li> |
| <li>Eclipse launches a native executable that creates the initial splash window (including bitmap)</li> |
| <li>OSGi starts</li> |
| <li>Workbench starts</li> |
| <li>Workbench finds the splash handler suitable for this product and creates it</li> |
| <li>init(Shell) is called on the handler</li> |
| <li>Workbench initializes and spins the event loop at regular intervals</li> |
| <li>Workbench advertises the completion of startup and the dispose() method is invoked on the handler</li> |
| </ul> |
| </p> |
| </documentation> |
| </annotation> |
| |
| <element name="extension"> |
| <complexType> |
| <sequence> |
| <element ref="splashHandler" minOccurs="0" maxOccurs="unbounded"/> |
| <element ref="splashHandlerProductBinding" 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="splashHandler"> |
| <complexType> |
| <attribute name="id" type="string" use="required"> |
| <annotation> |
| <documentation> |
| a unique name that will be used to identify this splash handler. |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="class" type="string" use="required"> |
| <annotation> |
| <documentation> |
| a class that extends <code>org.eclipse.ui.splash.AbstractSplashHandler</code> or <code>org.eclipse.ui.splash.BasicSplashHandler</code>. |
| </documentation> |
| <appInfo> |
| <meta.attribute kind="java" basedOn="org.eclipse.ui.splash.AbstractSplashHandler"/> |
| </appInfo> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <element name="splashHandlerProductBinding"> |
| <complexType> |
| <attribute name="splashId" type="string" use="required"> |
| <annotation> |
| <documentation> |
| unique id of a splash handler |
| </documentation> |
| </annotation> |
| </attribute> |
| <attribute name="productId" type="string" use="required"> |
| <annotation> |
| <documentation> |
| unique id of a product |
| </documentation> |
| </annotation> |
| </attribute> |
| </complexType> |
| </element> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="since"/> |
| </appInfo> |
| <documentation> |
| Since 3.3 |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="examples"/> |
| </appInfo> |
| <documentation> |
| The following is an example of this extension point: |
| <p> |
| <pre> |
| <extension |
| point="org.eclipse.ui.splashHandlers"> |
| <splashHandler |
| class="com.xyz.splash.Handler" |
| id="com.xyz.splash"> |
| </splashHandler> |
| <splashHandlerProductBinding |
| productId="com.xyz.product" |
| splashId="com.xyz.splash"> |
| </splashHandlerProductBinding> |
| </extension> |
| </pre> |
| </p> |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="apiInfo"/> |
| </appInfo> |
| <documentation> |
| The value of the <samp>class</samp> attribute must be a fully qualified name of the class that extends <samp>org.eclipse.ui.splash.AbstractSplashHandler</samp>. It is common practice to subclass <samp>org.eclipse.ui.splash.BasicSplashHandler</samp> if the standard progress reporting is desired. |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="implementation"/> |
| </appInfo> |
| <documentation> |
| In the absence of a product-bound handler described by an extension of this type the default Eclipse splash is used. This splash is driven by product constants defined in <samp>org.eclipse.ui.branding.IProductConstants</samp> and will display a progress bar and message area at specified locations in specified colors. |
| </documentation> |
| </annotation> |
| |
| <annotation> |
| <appInfo> |
| <meta.section type="copyright"/> |
| </appInfo> |
| <documentation> |
| Copyright (c) 2007 IBM Corporation and others.<br> |
| 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 <a |
| href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a> |
| </documentation> |
| </annotation> |
| |
| </schema> |