<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.epf.rcp"
   name="%pluginName"
   version="1.0.1.1"
   provider-name="%providerName"
   class="org.eclipse.epf.rcp.MainPlugin">

   <runtime>
      <library name="rcp.jar">
         <export name="*"/>
      </library>
   </runtime>

   <requires>
      <import plugin="org.eclipse.epf.authoring.ui"/>
      <import plugin="org.eclipse.epf.library.ui"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.core.runtime"/>
      <import plugin="org.eclipse.emf.edit"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.ui.intro"/>
      <import plugin="org.eclipse.help.ui"/>
      <import plugin="org.eclipse.help.webapp"/>
      <import plugin="org.eclipse.tomcat"/>
      <import plugin="org.eclipse.epf.publishing.ui"/>
   </requires>
   <extension-point id="exportWizards" name="UI Export Wizards" schema="schema/exportWizards.exsd"/>
   <extension-point id="importWizards" name="UI Import Wizards" schema="schema/importWizards.exsd"/>

   <extension
         id="MainApplication"
         point="org.eclipse.core.runtime.applications">
      <application>
         <run
            class="org.eclipse.epf.rcp.MainApplication">
         </run>
      </application>
   </extension>
   
   <extension
         id="beacon"
         point="org.eclipse.core.runtime.products">
      <product
            application="org.eclipse.epf.rcp.MainApplication"
            name="Eclipse Process Framework Composer">
         <property
               name="preferenceCustomization"
               value="plugin_customization.ini"/>
         <property
               name="aboutImage"
               value="icons/about.gif"/>
         <property
               name="aboutText"
               value="Eclipse Process Framework Composer &#x0A;&#x0A;Version: 1.0.1.2&#x0A;Build Label: 20061205-2344&#x0A;&#x0A;(c) Copyright Eclipse contributors and others 2004, 2006. All Rights Reserved."/>
         <property
               name="windowImages"
               value="icons/full/obj16/product.gif,icons/full/obj32/product32.gif"/>
      </product>
   </extension>

   <extension
         point="org.eclipse.ui.intro">
      <intro
            class="org.eclipse.ui.intro.config.CustomizableIntroPart"
            icon="icons/full/obj16/product.gif"
            id="org.eclipse.epf.intro"/>
         <introProductBinding
               introId="org.eclipse.epf.intro"
               productId="org.eclipse.epf.rcp.beacon"/>
   </extension>
     
   <extension
         point="org.eclipse.ui.intro.config">
      <config
            content="$nl$/introContent.xml"
            id="org.eclipse.ui.intro.config"
            introId="org.eclipse.epf.intro">
         <presentation home-page-id="root" standby-page-id="standby">
           	<implementation
           	  	   ws="win32,gtk"
           	  	   style="css/shared.css"
           	  	   kind="html"
           	  	   os="win32,linux">
           	</implementation>
            <implementation kind="swt"/>
               <launchBar 	
                     location="right" 
                     bg="#dedcf5">
               <handle
                     close="true"
                     image="css/graphics/contentpage/handle.gif"/>
               <shortcut
                     icon="css/graphics/icons/etool/overview.gif"
                     tooltip="%shortcut.overview.tooltip"
                     url="http://org.eclipse.ui.intro/showPage?id=overview"/>
               <shortcut
                     tooltip="%shortcut.tutorials.tooltip"
                     icon="css/graphics/icons/etool/tutorials.gif"
                     url="http://org.eclipse.ui.intro/showPage?id=tutorials"/>
               <shortcut
                     tooltip="%shortcut.firststeps.tooltip"
                     icon="css/graphics/icons/etool/firsteps48.gif"
                     url="http://org.eclipse.ui.intro/showPage?id=steps"/>
               <shortcut
                     tooltip="%shortcut.webresources.tooltip"
                     icon="css/graphics/icons/etool/webrsrc16.gif"
                     url="http://org.eclipse.ui.intro/showPage?id=web"/>                                             
            </launchBar>
         </presentation>
      </config>
   </extension>

   <extension point="org.eclipse.ui.intro.configExtension">
      <action
            name="openCheatsheetView"
            replaces="runAction?class=org.eclipse.epf.authoring.ui.actions.OpenCheatsheetView&amp;pluginId=org.eclipse.epf.authoring.ui">
      </action>
   </extension>

   <extension
         point="org.eclipse.ui.views">
      <category
            name="%methodCategoryName"
            id="org.eclipse.epf.rcp.MethodCategory">
      </category>
   </extension>

   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            label="%globalActionSet"
            visible="true"
            id="org.eclipse.epf.rcp.actions.GlobalActionSet">
      </actionSet>
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <command
            name="edit"
            description="Open a method element"
            categoryId="org.eclipse.ui.category.edit"
            id="org.eclipse.epf.rcp.actions.openElement"/>
   </extension>

   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            description="%actionSet.description"
            id="org.eclipse.help.ui.actions"
            label="%actionSet.label"
            visible="true">
        <action
               class="org.eclipse.help.ui.internal.SearchAction"
               icon="$nl$/icons/etool16/search_menu.gif"
               id="org.eclipse.help.ui.search"
               label="%searchAction.label"
               menubarPath="help/group.help"
               style="push"
               toolbarPath="org.eclipse.ui.workbench.file/build.group"
               tooltip="%searchAction.tooltip"/>
         <action
               class="org.eclipse.help.ui.internal.DynamicHelpAction"
               icon="$nl$/icons/etool16/help.gif"
               id="org.eclipse.help.ui.dynamicHelp"
               label="%dynamicHelpAction.label"
               menubarPath="help/group.help"
               style="push"
               toolbarPath="org.eclipse.ui.workbench.file/build.group"
               tooltip="%dynamicHelpAction.tooltip"/>
      </actionSet>
   </extension>
</plugin>
