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

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

<plugin>

   <extension
         point="org.eclipse.team.ui.configurationWizards">
      <wizard
            class="org.eclipse.emf.cdo.ui.internal.ide.wizards.TeamConfigurationWizard"
            icon="icons/full/obj16/CDOResource.gif"
            id="org.eclipse.emf.cdo.ui.ide.TeamConfigurationWizard"
            name="%wizard.name">
      </wizard>
   </extension>

   <extension
         point="org.eclipse.ui.navigator.navigatorContent">
      <navigatorContent
            activeByDefault="true"
            contentProvider="org.eclipse.emf.cdo.ui.ide.RepositoryContentProvider"
            icon="icons/full/obj16/repository_content.gif"
            id="org.eclipse.emf.cdo.ui.ide.RepositoryContent"
            labelProvider="org.eclipse.emf.cdo.ui.ide.RepositoryLabelProvider"
            name="%navigatorContent.name"
            priority="normal"
            providesSaveables="false">
         <triggerPoints>
            <or>
               <adapt
                     type="org.eclipse.core.resources.IProject">
                  <test
                        args="org.eclipse.team.core.repository,org.eclipse.emf.cdo.team.TeamProvider"
                        property="org.eclipse.core.resources.projectPersistentProperty">
                  </test>
               </adapt>
               <instanceof
                     value="org.eclipse.emf.cdo.ui.ide.Node">
               </instanceof>
               <instanceof
                     value="org.eclipse.emf.ecore.EObject">
               </instanceof>
            </or>
         </triggerPoints>
      </navigatorContent>
   </extension>

   <extension
         point="org.eclipse.ui.navigator.viewer">
      <viewerContentBinding
            viewerId="org.eclipse.ui.navigator.ProjectExplorer">
         <includes>
            <contentExtension
                  isRoot="false"
                  pattern="org.eclipse.emf.cdo.ui.ide.RepositoryContent">
            </contentExtension>
         </includes>
      </viewerContentBinding>
   </extension>

   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            adaptable="true"
            id="org.eclipse.emf.cdo.ui.ide.IProjectContributions"
            objectClass="org.eclipse.core.resources.IProject">
         <filter
               name="projectPersistentProperty"
               value="org.eclipse.team.core.repository=org.eclipse.emf.cdo.team.TeamProvider">
         </filter>
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.DisconnectActionDelegate"
               id="org.eclipse.emf.cdo.ui.ide.DisconnectAction"
               label="%action.label"
               menubarPath="team.main/projectGroup">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="true"
            id="org.eclipse.emf.cdo.ui.ide.ResourcesNodeContributions"
            objectClass="org.eclipse.emf.cdo.ui.ide.Node$ResourcesNode">
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.ChangeViewTargetActionDelegate"
               id="org.eclipse.emf.cdo.ui.ide.changeViewTarget"
               label="%action.label.14">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="false"
            id="org.eclipse.emf.cdo.ui.ide.PackageNodeActions"
            objectClass="org.eclipse.emf.cdo.ui.ide.Node$PackagesNode">
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.ManagePackagesActionDelegate"
               icon="icons/full/elcl16/EPackageIcon.gif"
               id="org.eclipse.emf.cdo.ui.ide.managePackages"
               label="%action.label.5"
               tooltip="%action.tooltip.4">
         </action>
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.RegisterFileSystemPackageActionDelegate"
               icon="icons/full/elcl16/FileSystemIcon.gif"
               id="org.eclipse.emf.cdo.ui.ide.registerFilesystemPackage"
               label="%action.label.6"
               tooltip="%action.tooltip.5">
         </action>
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.RegisterWorkspacePackageActionDelegate"
               icon="icons/full/elcl16/EcoreModelFile.gif"
               id="org.eclipse.emf.cdo.ui.ide.registerWorkspacePackage"
               label="%action.label.7"
               tooltip="%action.tooltip.6">
         </action>
      </objectContribution>
      <objectContribution
            adaptable="false"
            id="org.eclipse.emf.cdo.ui.ide.BranchesNodeActions"
            objectClass="org.eclipse.emf.cdo.ui.ide.Node$BranchNode">
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.SwitchToBranchActionDelegate"
               icon="icons/full/obj16/switch.png"
               id="org.eclipse.emf.cdo.ui.ide.switchToBranchAction"
               label="%action.label.12"
               tooltip="%action.tooltip.10">
         </action>
         <action
               class="org.eclipse.emf.cdo.ui.internal.ide.actions.CreateBranchActionDelegate"
               icon="icons/full/obj16/fork.png"
               id="org.eclipse.emf.cdo.ui.ide.createNewBranchAction"
               label="%action.label.11"
               tooltip="%action.tooltip.9">
         </action>
      </objectContribution>
   </extension>

   <extension
         point="org.eclipse.ui.newWizards">
      <wizard
            canFinishEarly="false"
            class="org.eclipse.emf.cdo.ui.internal.ide.wizards.CDOProjectCreationWizard"
            finalPerspective="org.eclipse.emf.cdo.ui.CDOExplorerPerspective"
            hasPages="true"
            icon="icons/full/obj16/repository_content.gif"
            id="org.eclipse.emf.cdo.ui.ide.createSharedProject"
            name="%wizard.name.0"
            preferredPerspectives="org.eclipse.ui.resourcePerspective"
            project="true">
      </wizard>
   </extension>
   
   <extension
         point="org.eclipse.net4j.util.factories">
      <factory
            class="org.eclipse.emf.cdo.ui.internal.ide.actions.RegisterWorkspacePackagesFactory"
            productGroup="org.eclipse.emf.cdo.ui.packageRegistryDialogCustomizers"
            type="RegisterWorkspacePackages"/>
   </extension>

</plugin>
