<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
  Copyright (c) 2014-2017 Eike Stepper (Loehne, Germany) and others.
  All rights reserved. This program and the accompanying materials
  are made available under the terms of the Eclipse Public License v2.0
  which accompanies this distribution, and is available at
  http://www.eclipse.org/legal/epl-v20.html

  Contributors:
    Eike Stepper - initial API and implementation
-->

<plugin>

   <extension-point id="questionnaire" name="%extPoint.questionnaire.name" schema="schema/questionnaire.exsd"/>
   <extension-point id="preferencePolicies" name="%extPoint.preferencePolicies.name" schema="schema/preferencePolicies.exsd"/>

   <extension
         point="org.eclipse.oomph.ui.deferredEarlyStart">
      <startup class="org.eclipse.oomph.setup.ui.EarlyStartup"/>
   </extension>

   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            category="org.eclipse.oomph.ui.preferences.OomphPreferencePage"
            id="org.eclipse.oomph.setup.SetupPreferencePage"
            class="org.eclipse.oomph.setup.ui.SetupPreferencePage"
            name="%setupPreferencePage.name">
      </page>
      <page
            category="org.eclipse.oomph.setup.SetupPreferencePage"
            id="org.eclipse.oomph.setup.RecorderPreferencePage"
            class="org.eclipse.oomph.setup.ui.recorder.RecorderPreferencePage"
            name="%recorderPreferencePage.name">
      </page>
      <page
            category="org.eclipse.oomph.setup.SetupPreferencePage"
            id="org.eclipse.oomph.setup.SynchronizerPreferencePage"
            class="org.eclipse.oomph.setup.ui.synchronizer.SynchronizerPreferencePage"
            name="%synchronizerPreferencePage.name">
      </page>
   </extension>

   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            id="org.eclipse.oomph.setup.contribution1"
            objectClass="org.eclipse.oomph.setup.SetupTask">
         <action
               class="org.eclipse.oomph.setup.ui.actions.ToggleDisabledAction"
               enablesFor="multiple"
               id="org.eclipse.oomph.setup.ToggleDisabledAction"
               label="%toggleDisabledAction.label"
               state="false"
               style="toggle"
               tooltip="%toggleDisabledAction.tooltip">
         </action>
      </objectContribution>
      <objectContribution
            id="org.eclipse.oomph.setup.contribution2"
            objectClass="org.eclipse.oomph.setup.MacroTask">
         <action
               class="org.eclipse.oomph.setup.ui.actions.InlineMacroTaskAction"
               enablesFor="multiple"
               id="org.eclipse.oomph.setup.InlineMacroTaskAction"
               label="%inlineMacroTaskAction.label"
               style="push"
               tooltip="%inlineMacroTaskAction.tooltip">
         </action>
      </objectContribution>
      <objectContribution
            id="org.eclipse.oomph.setup.contribution3"
            objectClass="org.eclipse.oomph.setup.MacroTask">
         <action
               class="org.eclipse.oomph.setup.ui.actions.ConfigureMarketPlaceListingAction"
               enablesFor="1"
               id="org.eclipse.oomph.setup.ConfigureMarketPlaceListingAction"
               label="%configureMarketPlaceListingAction.label"
               style="push"
               tooltip="%configureMarketPlaceListingAction.tooltip">
         </action>
      </objectContribution>
   </extension>

   <extension
         point="org.eclipse.ui.importWizards">
      <wizard
            category="org.eclipse.oomph.importWizards"
            class="org.eclipse.oomph.setup.ui.wizards.SetupWizard$Importer"
            icon="icons/oomph_import.png"
            id="org.eclipse.oomph.setup.ui.ImportWizard"
            name="%importWizard.name">
         <description>
            %importWizard.description
         </description>
      </wizard>
   </extension>

   <extension
         point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
            class="org.eclipse.oomph.setup.ui.SetupPropertyTester"
            id="org.eclipse.oomph.setup.ui.propertyTester"
            namespace="org.eclipse.oomph.setup.ui"
            properties="starting,performing,handling,showToolBarContributions,syncEnabled,donating"
            type="java.lang.Object">
      </propertyTester>
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <command
            categoryId="org.eclipse.oomph.setup.category"
            defaultHandler="org.eclipse.oomph.setup.ui.actions.LaunchQuestionnaireHandler"
            description="%command.questionnaire.description"
            id="org.eclipse.oomph.setup.ui.questionnaire"
            name="%command.questionnaire.name">
      </command>
   </extension>
   <extension
         point="org.eclipse.userstorage.oauth.clients">
      <client
            id="Q9TBg1mthjy0wSKVgrXfiBU4Kqz"
            authURI="https://accounts.eclipse.org/"
            icon="icons/oomph16.png"
            name="%oomph">
      </client>
   </extension>

</plugin>
