<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.wst.xsd.ui"
   name="%_UI_PLUGIN_NAME"
   version="1.0.0"
   provider-name="Eclipse.org"
   class="org.eclipse.wst.xsd.ui.internal.XSDEditorPlugin">

   <runtime>
      <library name="xsdeditor.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
      
      <import plugin="org.eclipse.wst.xml.uriresolver"/>
      <import plugin="org.eclipse.wst.sse.ui"/>
      <import plugin="org.eclipse.wst.sse.core"/>
      <import plugin="org.eclipse.wst.xml.core"/>
      <import plugin="org.eclipse.wst.xml.ui"/>
      <import plugin="org.eclipse.wst.common.ui"/>
      
      <import plugin="org.eclipse.jface.text"/>
      <import plugin="org.eclipse.xsd"/>
      <import plugin="org.eclipse.gef"/>
      <import plugin="org.eclipse.jface"/>
      <import plugin="org.eclipse.ui.editors"/>
      <import plugin="org.eclipse.ui.workbench.texteditor"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.ui.views"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.wst.common.ui.properties"/>
      <import plugin="org.eclipse.xsd.edit"/>
      <import plugin="org.eclipse.emf.edit"/>
      <import plugin="org.eclipse.emf.edit.ui"/> 
      <import plugin="org.eclipse.wst.validation"/>
      
      <import plugin="org.eclipse.ltk.core.refactoring" />
	  <import plugin="org.eclipse.ltk.ui.refactoring" />
    </requires>


   <extension
         point="org.eclipse.ui.editors">
      <editor
            name="%_UI_EDITOR_NAME"
            default="true"
            icon="icons/XSDFile.gif"
            extensions="xsd"
            contributorClass="org.eclipse.wst.xsd.ui.internal.XSDActionBarContributor"
            class="org.eclipse.wst.xsd.ui.internal.XSDEditor"
            id="org.eclipse.wst.xsd.ui.XSDEditor">
      </editor>
   </extension>
<!-- drop targets for XSDTextEditor-->
   <extension
         point="org.eclipse.wst.sse.ui.dropTargetTransfers">
      <dropTargetContribution
            targetID="org.eclipse.wst.xsd.ui.internal.XSDTextEditor"
            id="org.eclipse.wst.xsd.ui.ExtendedTransfers">
         <transfer
               priority="mid"
               singleton="true"
               class="org.eclipse.swt.dnd.FileTransfer"
               method="getInstance"
               id="org.eclipse.swt.dnd.FileTransfer">
         </transfer>
         <dropAction
               class="org.eclipse.wst.sse.ui.extension.FileDropAction"
               transferID="org.eclipse.swt.dnd.FileTransfer"
               id="org.eclipse.wst.sse.ui.extension.FileDropAction">
         </dropAction>
         <transfer
               priority="low"
               singleton="true"
               class="org.eclipse.swt.dnd.TextTransfer"
               method="getInstance"
               id="org.eclipse.swt.dnd.TextTransfer">
         </transfer>
         <dropAction
               class="org.eclipse.wst.sse.ui.extension.TextDropAction"
               transferID="org.eclipse.swt.dnd.TextTransfer"
               id="corg.eclipse.wst.sse.ui.extension.TextDropAction">
         </dropAction>
      </dropTargetContribution>
   </extension>

   <extension point="org.eclipse.ui.newWizards">
     <wizard id = "org.eclipse.wst.xsd.ui.internal.wizards.NewXSDWizard"
        name = "%_UI_WIZARD_NEW_XSD"
        class = "org.eclipse.wst.xsd.ui.internal.wizards.NewXSDWizard"
        category = "org.eclipse.wst.XMLCategory"
        icon = "icons/XSDFile.gif">
      <description>%_UI_CREATE_A_NEW_SCHEMA</description>
      <selection class = "org.eclipse.core.resources.IResource" />
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.preferencePages">
      <page
            name="%_UI_XML_SCHEMA_PREFERENCE"
            category="org.eclipse.wst.sse.ui.preferences"
            class="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage"
            id="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage">
      </page>
   </extension>
	<extension point="org.eclipse.wst.sse.ui.extendedconfiguration">
		<definition 
			type="preferencepages"
			value="org.eclipse.wst.xsd.ui.internal.preferences.XSDPreferencePage"
			target="org.eclipse.wst.xsd.ui.internal.XSDEditor.source" />
	</extension>
   
   <!-- ==================================================== -->
<!-- Support help on the tags                             -->
<!-- ==================================================== -->
<!--   <extension
         point="org.eclipse.wst.xml.core.internal.contentmodel.annotationFiles">
      <annotationFile
            location="/w3c/schemaForCodeAssist-annotations.xml"
            publicId="http://www.w3.org/2001/XMLSchema">
      </annotationFile>
   </extension>
-->
   <extension
         point="org.eclipse.wst.common.ui.properties.propertyContributor">
      <propertyContributor
            contributorId="org.eclipse.wst.xsd.ui.internal.XSDEditor"
            sectionDescriptorProvider="org.eclipse.wst.xsd.ui.internal.properties.section.XSDSectionDescriptorProvider"
            labelProvider="org.eclipse.wst.xsd.ui.internal.properties.section.XSDSectionLabelProvider">
         <propertyCategory
               category="general">
         </propertyCategory>
         <propertyCategory
               category="namespace">
         </propertyCategory>
         <propertyCategory
               category="other">
         </propertyCategory>
         <propertyCategory
               category="attributes">
         </propertyCategory>
         <propertyCategory
               category="enumerations">
         </propertyCategory>
         <propertyCategory
               category="documentation">
         </propertyCategory>
         <propertyCategory
               category="facets">
         </propertyCategory>
      </propertyContributor>
   </extension>
   <extension
         point="org.eclipse.wst.common.ui.properties.propertyTabs">
      <propertyTabs
            contributorId="org.eclipse.wst.xsd.ui.internal.XSDEditor">
         <propertyTab
               label="%_UI_LABEL_GENERAL"
               category="general"
               id="com.ibm.xmlwebservices.general">
         </propertyTab>
         <propertyTab
               label="%_UI_LABEL_NAMESPACE"
               category="namespace"
               afterTab="com.ibm.xmlwebservices.general"
               id="com.ibm.xmlwebservices.namespace">
         </propertyTab>
         <propertyTab
               label="%_UI_LABEL_OTHER"
               category="other"
               id="com.ibm.xmlwebservices.other">
         </propertyTab>
         <propertyTab
               label="%_UI_LABEL_ATTRIBUTES"
               category="attributes"
               id="com.ibm.xmlwebservices.attributes">
         </propertyTab>
         <propertyTab
               label="%_UI_LABEL_ENUMERATIONS"
               category="enumerations"
               id="com.ibm.xmlwebservices.enumerations">
         </propertyTab>
         <propertyTab
               label="%_UI_LABEL_DOCUMENTATION"
               category="documentation"
               id="com.ibm.xmlwebservices.documentation">
         </propertyTab>
         <propertyTab
               label="%_UI_SECTION_ADVANCED_ATTRIBUTES"
               category="facets"
               id="com.ibm.xmlwebservices.facets">
         </propertyTab>
      </propertyTabs>
   </extension>
   
   <!--
    <extension point="org.eclipse.wst.xml.uriresolver.catalogContributor">
     <catalogContributor catalogId="default">
       <mappingInfo key="http://www.w3.org/2001/XMLSchema" uri="w3c/XMLSchema.xsd"/>
      </catalogContributor>
    </extension>
    -->
 
  	<!-- intialize xsd reconcile validator -->
	 <extension
         point="org.eclipse.wst.sse.ui.reconcileValidator">
      <validator
            scope="total"
            class="org.eclipse.wst.xsd.ui.reconcile.DelegatingReconcileValidatorForXSD"
            id="org.eclipse.wst.xsd.ui.reconcile.DelegatingReconcileValidatorForXSD">
  	<contentTypeIdentifier
               id="org.eclipse.wst.xsd.contentmodel.xsdsource">
            <partitionType
                  id="org.eclipse.wst.xml.DEFAULT_XML">
            </partitionType>
         </contentTypeIdentifier>       
      </validator>
   </extension>
   
   <extension point="org.eclipse.ui.contexts"> 
 		<context id="org.eclipse.wst.xsd.ui.text.editor.context"
 			name="%context.text.editor.xsd.name"
 			parentId="org.eclipse.ui.textEditorScope"/>
 	</extension>
 
 	<extension point="org.eclipse.ui.commands">
		<command name="%command.xsd.refactor.rename.element.name"
			description="%command.xsd.refactor.rename.element.description"
			categoryId="org.eclipse.ui.category.edit"
			id="org.eclipse.wst.xsd.ui.refactor.rename.element">
		</command>
		<keyBinding keySequence="Alt+Shift+R"
			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
			commandId="org.eclipse.wst.xsd.ui.refactor.rename.element"
			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
		</keyBinding>
	</extension>
	
	<extension point="org.eclipse.ui.commands">
		<command name="%command.xsd.refactor.makeElementGlobal.element.name"
			description="%command.xsd.refactor.makeElementGlobal.element.description"
			categoryId="org.eclipse.ui.category.edit"
			id="org.eclipse.wst.xsd.ui.refactor.makeElementGlobal">
		</command>
		<keyBinding 
			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
			commandId="org.eclipse.wst.xsd.ui.refactor.makeElementGlobal"
			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
		</keyBinding>
	</extension>
	
   <extension point="org.eclipse.ui.commands">
		<command name="%command.xsd.refactor.makeTypeGlobal.element.name"
			description="%command.xsd.refactor.makeTypeGlobal.element.description"
			categoryId="org.eclipse.ui.category.edit"
			id="org.eclipse.wst.xsd.ui.refactor.makeTypeGlobal">
		</command>
		<keyBinding 
			contextId="org.eclipse.wst.xsd.ui.text.editor.context"
			commandId="org.eclipse.wst.xsd.ui.refactor.makeTypeGlobal"
			keyConfigurationId="org.eclipse.ui.defaultAcceleratorConfiguration">
		</keyBinding>
	</extension>
   
    <!--extension
       point="org.eclipse.ltk.core.refactoring.renameParticipants">
       <renameParticipant
			name="%xsd.resource.rename.participant.name"
			class="org.eclipse.wst.xsd.ui.internal.refactor.rename.XSDResourceRenameParticipant"
			id="org.eclipse.wst.xsd.ui.refactoring.XSDResourceRenameParticipant">
			<enablement>
			  <with
                  variable="element">
               <instanceof
                     value="org.eclipse.core.resources.IResource">
               </instanceof>
              </with>
			</enablement>
		</renameParticipant>
    </extension-->

  <!-- 
  	   The following extension to the file context menu is temporary until resource 
       navigator will provide allow to extend refactor menu        
  -->                                               
<!--
  <extension point="org.eclipse.ui.popupMenus">
      <objectContribution
          objectClass="org.eclipse.core.resources.IFile"
          nameFilter="*.xsd"
          id="org.wst.xsd.ui.rename">
         <menu id="refactorXSDResource" path="additions" label="%refactoring.menu.label">
         	<separator name="refactor"/>
         </menu>
         <action
             label="%refactoring.renameAction.label"
             menubarPath="refactorXSDResource/refactor"
             class="org.eclipse.wst.xsd.ui.internal.refactor.actions.RenameResourceActionDelegate"
             enablesFor="1"
             id="org.eclipse.wst.xsd.ui.refactoring.actions.RenameResource">
         </action>
      </objectContribution>
   </extension>
   -->
   
</plugin>
