<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
  Copyright (c) 2015 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="org.eclipse.core.expressions.definitions">
      <definition
            id="org.eclipse.oomph.ostools.folderProvider">
         <or>
            <adapt
                  type="org.eclipse.core.resources.IResource">
            </adapt>
            <adapt
                  type="java.io.File">
            </adapt>
            <adapt
                  type="org.eclipse.jgit.lib.Repository">
            </adapt>
            <adapt
                  type="org.eclipse.egit.ui.internal.repository.tree.RepositoryTreeNode">
            </adapt>
         </or>
      </definition>
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <command
            defaultHandler="org.eclipse.oomph.ostools.ExplorerHandler"
            id="org.eclipse.oomph.ostools.commands.Explorer"
            name="%explorer.command.name">
      </command>
      <command
            defaultHandler="org.eclipse.oomph.ostools.PromptHandler"
            id="org.eclipse.oomph.ostools.commands.Prompt"
            name="%prompt.command.name">
      </command>
   </extension>

   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.ui.popup.any?after=additions">
         <command
               commandId="org.eclipse.oomph.ostools.commands.Explorer"
               icon="icons/explorer.gif"
               label="%explorer.menu.label"
               style="push"
               tooltip="%explorer.menu.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="activeMenuSelection">
                  <count
                        value="1">
                  </count>
                  <iterate>
                     <reference
                           definitionId="org.eclipse.oomph.ostools.folderProvider">
                     </reference>
                  </iterate>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.oomph.ostools.commands.Prompt"
               icon="icons/prompt.gif"
               label="%prompt.menu.label"
               style="push"
               tooltip="%prompt.menu.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="activeMenuSelection">
                  <count
                        value="1">
                  </count>
                  <iterate>
                     <reference
                           definitionId="org.eclipse.oomph.ostools.folderProvider">
                     </reference>
                  </iterate>
               </with>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>

</plugin>
