| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
| <html lang="en"> |
| <head> |
| <meta name="copyright" content="Copyright (c) IBM Corporation and others 2000, 2011. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." > |
| <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> |
| <meta http-equiv="Content-Style-Type" content="text/css"> |
| <link rel="STYLESHEET" href="../book.css" charset="ISO-8859-1" type="text/css"> |
| <script language="JavaScript" src="PLUGINS_ROOT/org.eclipse.help/livehelp.js" type="text/javascript"></script> |
| <title>Contributing to universal intro</title> |
| </head> |
| <body> |
| |
| <h2>Contributing to universal intro</h2> |
| |
| <p> |
| In order to hook into to the universal intro, developers should have a |
| product-based eclipse application. This requires the use of the |
| <code><b>org.eclipse.runtime.products</b></code> extension point (the assumption is |
| that the product has already been defined): |
| </p> |
| |
| <pre> <extension |
| id="foo" |
| point="org.eclipse.core.runtime.products"> |
| <product |
| application="org.eclipse.ui.ide.workbench" |
| description="Product Foo to use for testing the universal intro" |
| name="Product Foo"> |
| </product> |
| </extension> |
| </pre> |
| |
| <p> |
| For this example, assume that the extension is defined in the <code>plugin.xml |
| </code> file in the <code><b>com.example.intro</b></code> plug-in. A |
| long-standing feature of the eclipse intro support is the ability to hook |
| products and intros using the product-intro binding: |
| </p> |
| |
| <pre> <extension |
| point="org.eclipse.ui.intro"> |
| <introProductBinding |
| introId="org.eclipse.ui.intro.universal" |
| productId="com.example.intro.foo"/> |
| </extension> |
| </pre> |
| |
| <p> |
| The extension above binds the universal intro implementation |
| (<b>org.eclipse.ui.intro.universal</b>) and our product id. |
| </p> |
| |
| <p> |
| Universal intro customization is split between product branding properties and |
| preferences. Product branding properties are set by the product and cannot be |
| modified. They include product title, branding image and branding image text: |
| </p> |
| |
| <pre> <product |
| application="org.eclipse.ui.ide.workbench" |
| description="Product Foo to use for testing the universal intro" |
| name="Product Foo"> |
| <property |
| name="introTitle" |
| value="Welcome to Product Bar"/> |
| <property |
| name="introBrandingImage" |
| value="product:eclipse.png"/> |
| <property |
| name="introBrandingImageText" |
| value="XYZ Company"/> |
| </product> |
| </pre> |
| |
| <p> |
| Product properties whose values represent a file name relative to the product |
| bundle must be qualified with the 'product:' prefix. The following properties are |
| supported: |
| </p> |
| |
| <ul> |
| <li> |
| <b>introTitle</b> - the value of the property will be used at the top of |
| the root page (assuming that the current presentation theme elected to show |
| the root page title) |
| </li> |
| <li> |
| <b>introBrandingImage</b> - the value of the property represents the |
| file name of the image to be used as the root page brand mark. The image |
| should ideally be PNG with alpha blending but other formats are also valid. |
| Image file names relative to the product bundle must have a 'product:' |
| prefix. |
| </li> |
| <li> |
| <b>introBrandingImageText</b> - an alternative text to be used for the |
| branding image. |
| </li> |
| <li> |
| <b>introDescription-<pageId></b> - an option description text that |
| appears below the title on each of the sections, where pageId is one of the |
| values listed further below (e.g. introDescription-overview, |
| introDescription-samples etc.). This value should be translated in |
| plugin.properties file. |
| </li> |
| </ul> |
| |
| <p> |
| Second half of universal intro variables are accessible as preferences. The |
| split is due to the fact that these variables can be configured by users and are |
| exposed in the new Welcome preference page. The initial values for these preferences |
| should be placed in the 'plugin_customization.ini' file that is referenced from |
| the product extension. These preferences are: |
| </p> |
| |
| <ul> |
| <li> |
| <b>org.eclipse.ui.intro.universal/INTRO_ROOT_PAGES</b> - a comma-separated list of |
| root page identifiers that should be visible in the home page. Valid values |
| are: |
| <ul> |
| <li><b>overview</b></li> |
| <li><b>firststeps</b></li> |
| <li><b>tutorials</b></li> |
| <li><b>samples</b></li> |
| <li><b>whatsnew</b></li> |
| <li><b>migrate</b></li> |
| <li><b>webresources</b></li> |
| </ul> |
| </li> |
| <li> |
| <b>org.eclipse.ui.intro.universal/INTRO_DATA</b> - a file name pointing at |
| the XML file with the page layout settings (see more about this below). The |
| file name relative to the product bundle must have 'product:' prefix. |
| </li> |
| <li> |
| <b>org.eclipse.ui.intro/INTRO_THEME</b> - a unique identifier of the |
| <a href="ua_intro_ext_theme.htm">presentation theme</a> to be used for this |
| product. <b>Note that this preference comes from 'org.eclipse.ui.intro |
| plug-in'</b> because active theme selection is performed at the framework |
| level. |
| </li> |
| <li> |
| <b>org.eclipse.ui.intro/INTRO_START_PAGE</b> - the id of the page which will |
| be shown when Eclipse starts the first time. |
| </li> |
| <li> |
| <b>org.eclipse.ui.intro/INTRO_HOME_PAGE</b> - the id of the page which will |
| be shown when the home button is pressed. |
| </li> |
| <li> |
| <b>org.eclipse.ui.intro/INTRO_STANDBY_PAGE</b> - the id of the page which will |
| be shown when welcome is displayed in a non-maximized form.</li> |
| <li> |
| When using universal intro valid values for the three page related |
| properties are are <b>root, overview, firststeps, tutorials, samples, whatsnew, migrate </b>or <b> webresources</b> |
| or the name of a page contributed using a config extension.</li> |
| </ul> |
| |
| <p> </p> |
| |
| </body> |
| </html> |