<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>

    
<!-- ========== Extension Points ================= -->
<!-- =============================================================================== -->
<!-- Extension point: org.eclipse.ui.intro.config                                    -->
<!-- Extension-point for contributing a configuration to a Customizable Intro Part.  -->
<!--                                                                                 -->
<!-- =============================================================================== -->
<!-- ================================================================================= -->
<!-- Extension point: org.eclipse.ui.intro.configExtension                             -->
<!-- Extension-point for contributing an extension to an existing intro configuration  -->
<!--                                                                                   -->
<!-- ================================================================================= -->
   
   <extension
         point="org.eclipse.ui.intro">
      <intro
            class="org.eclipse.ui.intro.config.CustomizableIntroPart"
            icon="$nl$/icons/welcome_item.gif"
            id="org.eclipse.ui.intro.universal"/>
   </extension>
   <extension
         point="org.eclipse.ui.intro.config">
      <config
            configurer="org.eclipse.ui.internal.intro.universal.UniversalIntroConfigurer"
            content="$nl$/introContent.xml"
            id="org.eclipse.ui.intro.universalConfig"
            introId="org.eclipse.ui.intro.universal">
         <presentation
               home-page-id="root" standby-page-id="standby">
              <implementation
                  style="$theme$/html/shared.css,themes/shared/html/shared.css"
                  kind="html"
                  os="win32,linux,macosx">
            </implementation>
            <implementation
                  kind="swt">
            </implementation>
            <launchBar
               	location="fastview" 
            	bg="$launchbarBackground$"
            	computed="true">
            </launchBar>
         </presentation>
      </config>
   </extension>
   <extension
         point="org.eclipse.ui.intro.configExtension">
      <theme
            default="true"
            id="org.eclipse.ui.intro.universal.circles"
            name="%theme.name.circles"
            path="$nl$/themes/circles"
            previewImage="themes/circles/preview.png">
            <property name="workbenchAsRootLink"
            		value="true"/>
            		<!--
            <property name="launchbarBackground"
            		value="#a1c2cb"/>
            		-->
            <property name="launchbarOverviewIcon"
            		  value="$theme$graphics/launchbar/overview16.png"/>
            <property name="launchbarFirststepsIcon"
            		  value="$theme$graphics/launchbar/firststeps16.png"/>
            <property name="launchbarTutorialsIcon"
            		  value="$theme$graphics/launchbar/tutorials16.png"/>
            <property name="launchbarSamplesIcon"
            		  value="$theme$graphics/launchbar/samples16.png"/>
            <property name="launchbarWhatsnewIcon"
            		  value="$theme$graphics/launchbar/whatsnew16.png"/>
            <property name="launchbarMigrateIcon"
            		  value="$theme$graphics/launchbar/migrate16.png"/>
            <property name="launchbarWebresourcesIcon"
            		  value="$theme$graphics/launchbar/webresources16.png"/>
      </theme>
      <theme
            id="org.eclipse.ui.intro.universal.purpleMesh"
            name="%theme.name.purpleMesh"
            path="$nl$/themes/purpleMesh"
            previewImage="themes/purpleMesh/preview.png">
            <property name="launchbarBackground"
            		value="#c6c3e8"/>
            <property name="capitalizeTitles"
            		value="true"/>
            <property name="launchbarOverviewIcon"
            		  value="$theme$graphics/launchbar/overview.gif"/>
            <property name="launchbarFirststepsIcon"
            		  value="$theme$graphics/launchbar/firststeps16.png"/>
            <property name="launchbarTutorialsIcon"
            		  value="$theme$graphics/launchbar/tutorials.gif"/>
            <property name="launchbarSamplesIcon"
            		  value="$theme$graphics/launchbar/samples.gif"/>
            <property name="launchbarWhatsnewIcon"
            		  value="$theme$graphics/launchbar/whatsnew.gif"/>
            <property name="launchbarMigrateIcon"
            		  value="$theme$graphics/launchbar/migrate16.png"/>
            <property name="launchbarWebresourcesIcon"
            		  value="$theme$graphics/launchbar/webresources16.png"/>
      </theme>
   </extension>
</plugin>
