<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
     Copyright (c) 2017 CEA LIST.
   
     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:
     		CEA LIST - Initial API and implementation
 -->

<plugin>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu?after=org.eclipse.papyrus.requirements.common.ui.sysml.assistant.additions">
         <menu
               icon="platform:/plugin/org.eclipse.papyrus.requirements.common.ui/images/Papyrus_Req_logo_16x16.png"
               id="papyrus.requirements.sysml.assistant.menu"
               label="%papyrus.requirements.sysml.assistant.menu.label"
               tooltip="%papyrus.requirements.sysml.assistant.menu.tooltip">
            <visibleWhen>
               <with
                     variable="activeEditorId">
                  <equals
                        value="org.eclipse.papyrus.infra.core.papyrusEditor">
                  </equals>
               </with>
            </visibleWhen>
         </menu>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup?after=org.eclipse.papyrus.requirements.common.ui.sysml.assistant.additions">
         <menu
               icon="platform:/plugin/org.eclipse.papyrus.requirements.common.ui/images/Papyrus_Req_logo_16x16.png"
               id="papyrus.requirements.sysml.assistant.menu"
               label="%papyrus.requirements.sysml.assistant.menu.label"
               tooltip="%papyrus.requirements.sysml.assistant.menu.tooltip">
         </menu>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="popup:papyrus.requirements.sysml.assistant.menu">
         <command
               commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.PapyrusReqSysMLRequirementHandler"
               icon="images/Requirement.gif"
               label="%createNewRequirement.command.label"
               style="push"
               tooltip="%createNewRequirement.command.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="selection">
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.papyrus.requirements.sysml.testers.appliesSysMLRequirementsProfile"
                        value="true">
                  </test>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.DecomposeReqHandler"
               icon="images/ContainmentConnection.gif"
               label="%decomposeRequirement.command.label"
               style="push"
               tooltip="%decomposeRequirement.command.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="selection">
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.papyrus.requirements.sysml.testers.isRequirementElement"
                        value="true">
                  </test>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.CommentReqHandler"
               icon="images/Comment.gif"
               label="%createComments.command.label"
               style="push"
               tooltip="%createComments.command.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="selection">
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.papyrus.requirements.sysml.testers.isRequirementElement"
                        value="true">
                  </test>
               </with>
            </visibleWhen>
         </command>
         <command
               commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.ExtractCommentsHandler"
               icon="images/Link.gif"
               label="%extractComments.command.label"
               style="push"
               tooltip="%extractComments.command.tooltip">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="selection">
                  <test
                        forcePluginActivation="true"
                        property="org.eclipse.papyrus.requirements.sysml.testers.isRequirementElement"
                        value="true">
                  </test>
               </with>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.bindings">
      <key
            commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.PapyrusReqSysMLRequirementHandler"
            contextId="org.eclipse.ui.contexts.window"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+1">
      </key>
      <key
            commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.DecomposeReqHandler"
            contextId="org.eclipse.ui.contexts.window"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+2">
      </key>
      <key
            commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.CommentReqHandler"
            contextId="org.eclipse.ui.contexts.window"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+4">
      </key>
      <key
            commandId="org.eclipse.papyrus.requirements.sysml.assistant.handlers.ExtractCommentsHandler"
            contextId="org.eclipse.ui.contexts.window"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
            sequence="M1+5">
      </key>
   </extension>
</plugin>

