<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
  Copyright (c) 2010, 2014 THALES GLOBAL SERVICES
  This program and the accompanying materials
  are made available under the terms of the Eclipse Public License 2.0
  which accompanies this distribution, and is available at
  https://www.eclipse.org/legal/epl-2.0/

  SPDX-License-Identifier: EPL-2.0

  Contributors:
       Obeo - Initial API and implementation
-->
<plugin>

 <extension
          point="org.eclipse.sirius.externalJavaAction">
       <javaActions
             actionClass="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionForDDiagramElementCreation"
             id="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionForDDiagramElementCreationID">
       </javaActions>
 </extension>
 <extension
          point="org.eclipse.sirius.externalJavaAction">
       <javaActions
             actionClass="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionSpecificLayout"
             id="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionSpecificLayoutID">
       </javaActions>
 </extension>
 <extension
          point="org.eclipse.sirius.externalJavaAction">
       <javaActions
             actionClass="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionSpecificVerticalLayout"
             id="org.eclipse.sirius.tests.swtbot.services.ExternalJavaActionSpecificVerticalLayoutID">
       </javaActions>
 </extension>
 <extension
       point="org.eclipse.ui.menus">
    <menuContribution
          allPopups="false"
          locationURI="toolbar:org.eclipse.sirius.diagram.ui.tabbar?after=additions">
        <command
              commandId="org.eclipse.sirius.diagram.ui.command.refreshElement"
              icon="images/refresh.gif"
              id="org.eclipse.sirius.diagram.ui.tabbar.test.action.on.diagram"
              label="Action on DDiagram"
              tooltip="Action on DDiagram">
           <visibleWhen
                 checkEnabled="false">
              <and>
                 <with
                       variable="activeEditorId">
                    <equals
                          value="org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditorID">
                    </equals>
                 </with>
                 <with
                       variable="selection">
                    <iterate
                          ifEmpty="false"
                          operator="or">
                       <and>
                          <instanceof
                                value="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
                          </instanceof>
                          <test
                                property="org.eclipse.sirius.tests.swtbot.tabbar.shouldActivateTestTabbarExtension">
                          </test>
                          <test
                                property="org.eclipse.sirius.diagram.ui.isDDiagram"
                                value="true">
                          </test>
                       </and>
                    </iterate>
                 </with>
              </and>
           </visibleWhen>
       </command>
        <command
              commandId="org.eclipse.sirius.diagram.ui.command.refreshElement"
              icon="images/refresh.gif"
              id="org.eclipse.sirius.diagram.ui.tabbar.test.action.on.diagramelement"
              label="Action on DDiagramElement"
              tooltip="Action on DDiagramElement">
           <visibleWhen
                 checkEnabled="false">
              <and>
                 <with
                       variable="activeEditorId">
                    <equals
                          value="org.eclipse.sirius.diagram.ui.part.SiriusDiagramEditorID">
                    </equals>
                 </with>
                 <with
                       variable="selection">
                    <iterate
                          ifEmpty="false"
                          operator="or">
                       <and>
                          <instanceof
                                value="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
                          </instanceof>
                          <test
                                property="org.eclipse.sirius.tests.swtbot.tabbar.shouldActivateTestTabbarExtension">
                          </test>
                          <test
                                property="org.eclipse.sirius.diagram.ui.isDDiagramElement"
                                value="true">
                          </test>
                       </and>
                    </iterate>
                 </with>
              </and>
           </visibleWhen>
        </command>
    </menuContribution>
 </extension>
 <extension
       point="org.eclipse.core.expressions.propertyTesters">
    <propertyTester
          class="org.eclipse.sirius.tests.swtbot.tabbar.ActivateTestTabbarExtensionPropertyTester"
          id="org.eclipse.sirius.tests.swtbot.tabbar.ActiveExtensionID"
          namespace="org.eclipse.sirius.tests.swtbot.tabbar"
          properties="shouldActivateTestTabbarExtension"
          type="org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart">
    </propertyTester>
 </extension>
  <extension
        id="sample.design.donut"
        point="org.eclipse.sirius.diagram.bundledImageShape">
     <image
           imagePath="/org.eclipse.sirius.tests.swtbot/data/unit/edgeOnFigureWithAlphaAnchor/donut.svg"
           label="Donut">
        <colorIdentifier
              colorIdentifier="stop8224-2">
        </colorIdentifier>
        <colorAttribute
              colorAttribute="style">
        </colorAttribute>
        <borderColorIdentifier
              borderColorIdentifier="path10796-2-6-2-7">
        </borderColorIdentifier>
        <borderColorAttribute
              borderColorAttribute="style">
        </borderColorAttribute>
        <borderSizeIdentifier
              borderSizeIdentifier="path10796-2-6-2-7">
        </borderSizeIdentifier>
        <borderSizeAttribute
              borderSizeAttribute="style">
        </borderSizeAttribute>
     </image>
  </extension>
  <extension point="org.eclipse.sirius.componentization">
    <component class="org.eclipse.sirius.tests.swtbot.Activator"
               id="bugzilla459993.design"
	       name="bugzilla459993">
    </component>
  </extension>
  <extension
        id="sample.design.donut2"
        point="org.eclipse.sirius.diagram.bundledImageShape">
     <image
           imagePath="/org.eclipse.sirius.tests.swtbot/data/unit/edgeOnFigureWithAlphaAnchor/donut.svg"
           label="Donut2">
        <colorIdentifier
              colorIdentifier="stop8224-2">
        </colorIdentifier>
        <borderColorIdentifier
              borderColorIdentifier="path10796-2-6-2-7">
        </borderColorIdentifier>
        <borderSizeIdentifier
              borderSizeIdentifier="path10796-2-6-2-7">
        </borderSizeIdentifier>
        <borderSizeAttribute
              borderSizeAttribute="style">
        </borderSizeAttribute>
     </image>
  </extension>
</plugin>
