<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?><!--
     Copyright (c) 2005, 2011 IBM Corporation and others.
     All rights reserved. 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:
         IBM Corporation - initial API and implementation
 -->

<plugin>

     <extension-point id="suites" name="%ExtensionPoint.suites.name" schema="schema/suites.exsd"/>

   <extension point="org.eclipse.ui.views">
      <category 
         id="org.eclipse.rse.projects.testing"
         name="%TestSuiteHolderView.category.name">
      </category>
      <view
            icon="icons/HolderView.gif"
            class="org.eclipse.rse.internal.tests.framework.ui.TestSuiteHolderView"
            category="org.eclipse.rse.projects.testing"
            name="%TestSuiteHolderView.view.name"
            id="org.eclipse.rse.tests.framework.HolderView">
      </view>
      <!--
      <view
            icon="icons/ConsoleView.gif"
            class="org.eclipse.rse.tests.framework.ui.TestSuiteConsoleView"
            category="org.eclipse.rse.projects.testing"
            name="Test Console"
            id="org.eclipse.rse.tests.framework.ConsoleView">
      </view>
      <view
            icon="icons/ImageView.gif"
            class="org.eclipse.rse.tests.framework.ui.TestSuiteImageView"
            category="org.eclipse.rse.projects.testing"
            name="Test Image"
            id="org.eclipse.rse.tests.framework.ImageView">
      </view>
      -->
   </extension>
   
   <extension point="org.eclipse.ui.popupMenus">
      <viewerContribution
            targetID="org.eclipse.rse.tests.framework.HolderView"
            id="org.eclipse.rse.tests.framework.HolderViewerContributions">
         <action
               enablesFor="*"
               label="%SelectAllHoldersDelegate.label"
               class="org.eclipse.rse.internal.tests.framework.actions.SelectAllHoldersDelegate"
               menubarPath="additions"
               id="org.eclipse.rse.tests.framework.SelectAllHolders"/>
      </viewerContribution>
      <objectContribution
            objectClass="org.eclipse.rse.tests.framework.ITestSuiteHolder"
            id="org.eclipse.rse.tests.framework.HolderObjectContributions">
         <action
               enablesFor="+"
               label="%ResetHolderDelegate.label"
               class="org.eclipse.rse.internal.tests.framework.actions.ResetHolderDelegate"
               menubarPath="additions"
               id="org.eclipse.rse.tests.framework.ResetHolder"/>
         <action
               enablesFor="+"
               label="%RunHolderDelegate.label"
               class="org.eclipse.rse.internal.tests.framework.actions.RunHolderDelegate"
               menubarPath="additions"
               id="org.eclipse.rse.tests.framework.RunHolder"/>
      </objectContribution>
   </extension>
   
   <extension point="org.eclipse.ui.viewActions">
      <viewContribution
            id="org.eclipse.rse.tests.framework.HolderViewActions"
            targetID="org.eclipse.rse.tests.framework.HolderView">
         <action
               class="org.eclipse.rse.internal.tests.framework.actions.ToggleRunInBackgroundDelegate"
               icon="icons/GreenDot.gif"
               id="org.eclipse.rse.tests.framework.runInBackgroundToggle"
               label="%ToggleRunInBackgroundDelegate.label"
               state="true"
               style="toggle"
               toolbarPath="RunGroup"
               tooltip="%ToggleRunInBackgroundDelegate.tooltip"/>
      </viewContribution>
   
   </extension>
   
   <extension point="org.eclipse.help.toc">
      <toc primary="true" file="toc.xml" category="Eclipse.TM"/>
   </extension>
   <!--
   <extension
         point="org.eclipse.ui.perspectives">
      <perspective
            icon="icons/HolderView.gif"
            class="org.eclipse.rse.tests.framework.ui.TestPerspectiveFactory"
            name="RSE Test Perspective"
            id="org.eclipse.rse.tests.framework.TestPerspective">
         
         <description>
            This perspective provides a place from which to run automatic and semi-automatic testcases.  Semi-automatic testcases use the Test Image View and the Test Transcript.
         </description>
      </perspective>
   </extension>
   -->
   <extension
         point="org.eclipse.rse.tests.framework.suites">
      <type
            class="org.eclipse.rse.internal.tests.framework.StandardTestSuiteHolder"
            name="standard"/>
      <type
            class="org.eclipse.rse.internal.tests.framework.TestSuiteGeneratorHolder"
            name="generated"/>
      <!--
      <type
            class="org.eclipse.rse.tests.framework.scripting.ScriptTestSuiteHolder"
            name="scripted"/>
      -->
   </extension>
   
</plugin>
