<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
    Copyright (c) 2016, 2019 Chalmers | University of Gothenburg, rt-labs 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
     
    SPDX-License-Identifier: EPL-2.0
     
    Contributors:
         Chalmers | University of Gothenburg and rt-labs - initial API and implementation and/or initial documentation
         Chalmers | University of Gothenburg - additional features, updated API
 -->

<plugin>
   <extension-point id="org.eclipse.capra.ui.transfers" name="%extension-point.name" schema="schema/org.eclipse.capra.ui.transfers.exsd"/>
   <extension
         point="org.eclipse.ui.commands">
      <command
            categoryId="org.eclipse.capra.ui.commands.category"
            id="org.eclipse.capra.ui.commands.createTrace"
            name="%command.createtrace.name">
      </command>
      <command
            categoryId="org.eclipse.capra.ui.commands.category"
            helpContextId="Remove currently selected item from the  list of selection"
            id="org.eclipse.capra.ui.commands.removefromselection"
            name="%command.removefromselection.name">
      </command>
      <command
            categoryId="org.eclipse.capra.ui.commands.category"
            id="org.eclipse.capra.ui.commands.clearselection"
            name="%command.clearselection.name">
      </command>
      <command
            categoryId="org.eclipse.capra.ui.commands.category"
            id="org.eclipse.capra.ui.addtoselection"
            name="%command.addtoselection.name">
      </command>
      <category
            id="org.eclipse.capra.ui.commands.category"
            name="%command.category">
      </category>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.capra.ui.handlers.TraceCreationHandler"
            commandId="org.eclipse.capra.ui.commands.createTrace">
         <enabledWhen></enabledWhen>
      </handler>
      <handler
            class="org.eclipse.capra.ui.handlers.selection.RemoveSelectionHandler"
            commandId="org.eclipse.capra.ui.commands.removefromselection">
      </handler>
      <handler
            class="org.eclipse.capra.ui.handlers.selection.ClearSelectionHandler"
            commandId="org.eclipse.capra.ui.commands.clearselection">
      </handler>
      <handler
            class="org.eclipse.capra.ui.handlers.selection.AddtoSelection"
            commandId="org.eclipse.capra.ui.addtoselection">
      </handler>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            locationURI="popup:org.eclipse.capra.ui.views.SelectionView?after=additions">
         <separator
               name="org.eclipse.capra.tracecreation.separator2"
               visible="true">
         </separator>
         <command
               commandId="org.eclipse.capra.generic.tracecreation.commands.createTrace"
               id="org.eclipse.capra.tracecreation.menus.createTrace"
               label="%command.createtrace.label"
               mnemonic="%command.createtrace.mnemonic"
               tooltip="%command.createtrace.tooltip">
         </command>
         <command
               commandId="org.eclipse.capra.generic.tracecreation.commands.removefromselection"
               label="%command.removefromselection.label"
               style="push"
               tooltip="%command.removefromselection.tooltip">
         </command>
         <command
               commandId="org.eclipse.capra.generic.tracecreation.clearselection"
               label="%command.clearselection.label"
               style="push"
               tooltip="%command.clearselection.tooltip">
         </command>
         <separator
               name="org.eclipse.capra.generic.tracecreation.separator1"
               visible="true">
         </separator>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.ui.popup.any?after=additions">
         <separator
               name="org.eclipse.capra.generic.separator2">
         </separator>
         <menu
               label="%menu.label"
               id="org.eclipse.capra.ui.contextsubmenu">
            <command
                  commandId="org.eclipse.capra.generic.addtoselection"
                  label="%command.addtoselection.label"
                  style="push"
                  tooltip="%command.addtoselection.tooltip">
            </command>
         </menu>
         <separator
               name="org.eclipse.capra.generic.separator1">
         </separator>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="toolbar:org.eclipse.capra.ui.views.SelectionView">
         <command
               commandId="org.eclipse.capra.ui.commands.createTrace"
               disabledIcon="platform:/plugin/org.eclipse.pde.ui/icons/dlcl16/add_att.png"
               icon="platform:/plugin/org.eclipse.ui/icons/full/obj16/add_obj.png"
               label="%command.createtrace.name"
               mnemonic="%command.createtrace.mnemonic"
               style="push"
               tooltip="%command.createtrace.tooltip">
         </command>
         <command
               commandId="org.eclipse.capra.ui.commands.clearselection"
               icon="platform:/plugin/org.eclipse.ui/icons/full/etool16/clear.png"
               label="%command.clearselection.name"
               style="push"
               tooltip="%command.clearselection.tooltip">
         </command>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <category
            id="org.eclipse.capra.ui.views"
            name="%category.name">
      </category>
      <view
            category="org.eclipse.capra.ui.views"
            class="org.eclipse.capra.ui.views.SelectionView"
            icon="icons/selectionView.png"
            id="org.eclipse.capra.ui.views.SelectionView"
            name="%view.name">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            class="org.eclipse.capra.ui.perspective.CapraPerspective"
            icon="icons/capra.png"
            id="org.eclipse.capra.generic.perspective.CapraPerspective"
            name="%perspective.name">
      </perspective>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            class="org.eclipse.capra.ui.preferences.CapraPreferences"
            id="org.eclipse.capra.ui.preferences.CapraPreferences"
            name="%page.name">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.bindings">
      <key
            commandId="org.eclipse.capra.ui.commands.createTrace"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="%command.createtrace.mnemonic">
      </key>
   </extension>
   <extension
         point="org.eclipse.ui.bindings">
  	  <sequenceModifier
  			find="DEL"
  			replace="BS"
  			platforms="cocoa"/>
      <key
            commandId="org.eclipse.capra.ui.commands.removefromselection"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="DEL">
      </key>
   </extension>
   <extension
         point="org.eclipse.ui.bindings">
  	  <sequenceModifier
  			find="M2+DEL"
  			replace="M2+BS"
  			platforms="cocoa"/>
         <key
            commandId="org.eclipse.capra.ui.commands.clearselection"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M2+DEL">
      </key> 
	</extension>
</plugin>
