<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
   <extension
         id="product"
         name="Java EE IDE"
         point="org.eclipse.core.runtime.products">
      <product
            application="org.eclipse.ui.ide.workbench"
            name="Eclipse IDE">
         <property
               name="preferenceCustomization"
               value="plugin_customization.ini">
         </property>
         <property
               name="appName"
               value="Eclipse IDE">
         </property>
         <property
               name="aboutText"
               value="Eclipse Java EE IDE for Web Developers.&#x0A;&#x0A;Version: {1}&#x0A;Build id: {0}&#x0A;&#x0A;(c) Copyright Eclipse contributors and others 2000, 2018.  All rights reserved. Eclipse and the Eclipse logo are trademarks of the Eclipse Foundation, Inc., https://www.eclipse.org/. The Eclipse logo cannot be altered without Eclipse's permission. Eclipse logos are provided for use under the Eclipse logo and trademark guidelines, https://www.eclipse.org/logotm/. Oracle and Java are trademarks or registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.&#x0A;&#x0A;This product includes software developed by other open source projects including the Apache Software Foundation, https://www.apache.org/.&#x0A;">
         </property>
         <property
               name="startupForegroundColor"
               value="c1bc1f">
         </property>
         <property
               name="startupMessageRect"
               value="7,265,320,20">
         </property>
         <property
               name="startupProgressRect"
               value="2,290,448,10">
         </property>
         <property
               name="aboutImage"
               value="aboutgears_115x.png">
         </property>
         <property
               name="windowImages"
               value="javaee-ide_x16.png,javaee-ide_x32.png,javaee-ide_x48.png">
         </property>
         <property
              name="introBrandingImage"
              value="product:wtp_logo_96.png">
         </property>
         <property
               name="introTitle"
               value="Eclipse Java EE IDE for Web Developers">
         </property>
         <property
               name="introBrandingImageText"
               value="Eclipse Web Tools Platform">
         </property>
         <property
               name="buildIdLocation"
               value="303,190">
         </property>
         <property
               name="applicationXMI"
               value="org.eclipse.platform/LegacyIDE.e4xmi">
         </property>
         <property 
               name="cssTheme"
               value="org.eclipse.e4.ui.css.theme.e4_default">
         </property>
         <property
               name="applicationCSSResources" 
               value="platform:/plugin/org.eclipse.ui.themes/images/"> 
         </property>
         <property
               name="buildIdLocation"
               value="0,220">
         </property>
         <property
               name="buildIdSize"
               value="293,40">
         </property>
      </product>
   </extension>

   <extension
         point="org.eclipse.ui.intro">
      <introProductBinding
            introId="org.eclipse.ui.intro.universal"
            productId="org.eclipse.epp.package.jee.product">
      </introProductBinding>
   </extension>

   <extension
         point="org.eclipse.ui.intro.quicklinks">
      <command
            id="org.eclipse.ui.newWizard(newWizardId=org.eclipse.jst.servlet.ui.project.facet.WebProjectWizard)"
            description="%ql.newJEEWebProject.description"
            label="%ql.newJEEWebProject.label"
            importance="medium"
            resolution="launchbar">
      </command>
      <command
            id="org.eclipse.ui.newWizard(newWizardId=org.eclipse.wst.jsdt.ui.wizards.JavaProjectWizard)"
            description="%ql.newJSDTProject.description"
            label="%ql.newJSDTProject.label"
            importance="medium"
            resolution="launchbar">
      </command>
      <command
            id="org.eclipse.ui.file.import(importWizardId=org.eclipse.egit.ui.internal.clone.GitCloneWizard)"
            description="%ql.checkoutGitProject.description"
            icon="platform:/plugin/org.eclipse.ui.intro.universal/themes/solstice/graphics/icons/ctool/egit-checkout.png"
            label="%ql.checkoutGitProject.label"
            importance="medium"
            resolution="launchbar">
      </command>
      <command
            id="org.eclipse.ui.file.import(importWizardId=org.eclipse.ui.wizards.import.ExternalProject)"
            description="%ql.importExistingProjects.description"
            icon="platform:/plugin/org.eclipse.ui.intro.universal/themes/solstice/graphics/icons/ctool/import-existing-project.png"
            label="%ql.importExistingProjects.label"
            resolution="launchbar">
      </command>
      <command
            id="org.eclipse.ui.edit.text.openLocalFile"
            description="%ql.openExistingFile.description"
            icon="platform:/plugin/org.eclipse.ui.intro.universal/themes/solstice/graphics/icons/ctool/open-file.png"
            importance="low"
            label="%ql.openExistingFile.label"
            resolution="launchbar">
      </command>
      <command
            id="org.eclipse.oomph.setup.ui.questionnaire"
            importance="high"
            icon="platform:/plugin/org.eclipse.ui.intro.universal/themes/solstice/graphics/icons/ctool/settings.png"
            label="%ql.setupQuestionnaire.label">
      </command>
      <override
            command="org.eclipse.ui.newWizard*"
            icon="platform:/plugin/org.eclipse.ui.intro.universal/themes/solstice/graphics/icons/ctool/new-project.png"
            theme="org.eclipse.ui.intro.universal.solstice">
      </override>
      <command
            id="org.eclipse.epp.mpc.ui.command.showMarketplaceWizard(trigger=welcome)"
            label="%ql.mpc.label"
            description="%ql.mpc.description"
            icon="platform:/plugin/org.eclipse.epp.mpc.ui/intro/css/marketplace.png">
      </command>
   </extension>
</plugin>
