<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.jdt.ui.tests"
   name="%Plugin.name"
   version="3.1.0"
   provider-name="%Plugin.providerName"
   class="org.eclipse.jdt.testplugin.JavaTestPlugin">

   <runtime>
      <library name="javauitests.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.ui.views"/>
      <import plugin="org.junit"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.jdt.ui"/>
      <import plugin="org.eclipse.jdt.launching"/>
      <import plugin="org.eclipse.jface.text"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.ui.workbench.texteditor"/>
      <import plugin="org.eclipse.ui.editors"/>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
      <import plugin="org.eclipse.search"/>
	  <import plugin="org.eclipse.ltk.core.refactoring"/>
	  <import plugin="org.eclipse.test.performance"/>
	  <import plugin="org.eclipse.jdt.junit.runtime"/>
	  <import plugin="org.eclipse.debug.ui"/>
	  <import plugin="org.eclipse.debug.core"/>
	  <import plugin="org.eclipse.jdt.junit"/>
   </requires>


<!-- **************** TEST DECORATOR ******************* -->
   <extension
         point="org.eclipse.ui.decorators">
      <decorator
            objectClass="org.eclipse.jdt.core.IJavaElement"
            adaptable="true"
            label="%TestLabelDecorator.label"
            state="false"
            class="org.eclipse.jdt.ui.examples.JavaElementDecorator"
            id="org.eclipse.jdt.ui.examples.javaElementDecorator">
      </decorator>
      
      <decorator
		label="%TestLightweightLabelDecorator.label"
		lightweight="true"
		location="BOTTOM_LEFT"		
		state="true"
		class="org.eclipse.jdt.ui.examples.JavaElementLightweightDecorator"
		id="org.eclipse.jdt.ui.examples.javaElementLightweightDecorator">
		<enablement>
			<or>
				<objectClass
					name="org.eclipse.core.resources.IResource">
				</objectClass>         
				<objectClass
					name="org.eclipse.jdt.core.IJavaElement">
				</objectClass>
			</or>                
		</enablement>
	  </decorator>	
      
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <view
            name="MochPluginView"
            class="org.eclipse.jdt.ui.tests.packageview.MockPluginView"
            id="org.eclipse.jdt.ui.tests.packageview.MockPluginView">
      </view>
      <view
            name="MockPluginView"
            class="org.eclipse.jdt.ui.tests.browsing.MockPluginView"
            id="org.eclipse.jdt.ui.tests.browsing.MockPluginView">
      </view>
      <view
            allowMultiple="true"
            class="org.eclipse.jdt.ui.tests.performance.views.MockupPackageExplorerPart"
            id="org.eclipse.jdt.ui.tests.MockPackageExplorer"
            name="Package Explorer Mock View"/>
   </extension>
<!-- **************** TEST MARKER for quick fix ******************* -->
   <extension
         id="testmarker"
         name="jdt-test-problem"
         point="org.eclipse.core.resources.markers">
      <super
            type="org.eclipse.core.resources.textmarker">
      </super>
   </extension>
   <extension
         point="org.eclipse.ui.ide.markerResolution">
      <markerResolutionGenerator
            markerType="org.eclipse.jdt.ui.tests.testmarker"
            class="org.eclipse.jdt.ui.tests.quickfix.MarkerResolutionGenerator">
      </markerResolutionGenerator>
   </extension>
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.jdt.core.ICompilationUnit"
            id="org.eclipse.jdt.ui.examples.AddTestMarkersAction">
         <action
               label="%AddTestMarkersAction.label"
               tooltip="%AddTestMarkersAction.tooltip"
               class="org.eclipse.jdt.ui.examples.AddTestMarkersAction"
               menubarPath="AddTestMarkers"
               enablesFor="1"
               id="addTestmarkers">
         </action>
      </objectContribution>
   </extension>
   <extension
         point="org.eclipse.jdt.ui.quickFixProcessors">
      <quickFixProcessor
            name="%exampleQuickFixProcessor.name"
            class="org.eclipse.jdt.ui.examples.MyQuickFixProcessor"
            id="org.eclipse.jdt.ui.examples.MyQuickFixProcessor">
         <enablement>
           <with variable="compilationUnit">
            <adapt
                  type="org.eclipse.core.resources.IResource">
               <test
                     value="A.java"
                     property="org.eclipse.jdt.internal.ui.matchesPattern">
               </test>
            </adapt>
           </with>
         </enablement>
      </quickFixProcessor>
   </extension>
   <extension
         point="org.eclipse.jdt.ui.quickAssistProcessors">
      <quickAssistProcessor
            name="%exampleQuickAssistProcessor.name"
            class="org.eclipse.jdt.ui.examples.MyQuickAssistProcessor"
            id="org.eclipse.jdt.ui.examples.MyQuickAssistProcessor">
         <enablement>
           <with variable="projectNatures">
              <iterate operator="or">
                 <equals value="org.eclipse.jdt.core.javanature"/>
              </iterate>
           </with>
         </enablement>
      </quickAssistProcessor>
   </extension>

   <extension
      point="org.eclipse.jdt.core.classpathContainerInitializer">
      <classpathContainerInitializer
            class="org.eclipse.jdt.ui.examples.MyClasspathContainerInitializer"
            id="org.eclipse.jdt.EXAMPLE_CONTAINER">
      </classpathContainerInitializer>
   </extension>
   
   <extension
         point="org.eclipse.jdt.ui.classpathContainerPage">
      <classpathContainerPage
            name="My Example Container"
            class="org.eclipse.jdt.ui.examples.MyClasspathContainerPage"
            id="org.eclipse.jdt.EXAMPLE_CONTAINER">
      </classpathContainerPage>
   </extension>
   
   <!-- **************** TEST NEW PROJECT WIZARD ******************* -->
   <extension 
	point="org.eclipse.ui.newWizards">
  	<wizard
		id="org.eclipse.jdt.ui.examples.MyProjectCreationWizard"
		name="In/Out Project (jdt.ui.tests)"
		class="org.eclipse.jdt.ui.examples.MyProjectCreationWizard"
		category="org.eclipse.jdt.ui.java"
		project="true"
		finalPerspective="org.eclipse.jdt.ui.JavaPerspective">
		<description>In/Out Project (jdt.ui.tests)</description>
    </wizard>	 
</extension>
   
</plugin>
