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

   <runtime>
      <library name="xmleditor.jar">
         <export name="*"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
      <import plugin="org.eclipse.ui.ide"/>
      <import plugin="org.eclipse.ui.views"/>
      <import plugin="org.eclipse.jface.text"/>
      <import plugin="org.eclipse.ui.workbench.texteditor"/>
      <import plugin="org.eclipse.ui.editors"/>
      <import plugin="org.eclipse.wst.sse.ui"/>
      <import plugin="org.eclipse.wst.dtd.ui"/>
      <import plugin="org.eclipse.wst.sse.core"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.wst.common.contentmodel"/>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.core.runtime"/>
      <import plugin="org.eclipse.wst.common.encoding"/>
      <import plugin="org.eclipse.wst.xml.uriresolver.ui"/>
      <import plugin="org.eclipse.wst.common.uriresolver"/>
      <import plugin="org.eclipse.wst.xml.uriresolver"/>
      <import plugin="org.eclipse.wst.xml.core"/>
      <import plugin="org.eclipse.wst.common.ui"/>
   </requires>


   <extension
         point="org.eclipse.ui.editors">
      <editor
            name="%XML_Source_Page_Editor.name"
            icon="icons/sourceEditor.gif"
            extensions="tld, nst, xmi, dadx, wsdl"
            contributorClass="org.eclipse.wst.xml.ui.actions.ActionContributorXML"
            class="org.eclipse.wst.xml.ui.StructuredTextEditorXML"
            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
            id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
      </editor>
      <!-- Separate editor definition for xml source page to mark it as the default editor -->
      <editor
            name="%XML_Source_Page_Editor.name"
            icon="icons/sourceEditor.gif"
            extensions="xml"
            default="true"
            contributorClass="org.eclipse.wst.xml.ui.actions.ActionContributorXML"
            class="org.eclipse.wst.xml.ui.StructuredTextEditorXML"
            symbolicFontName="org.eclipse.wst.sse.ui.textfont"
            id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
      </editor>
   </extension>
   <extension
         point="org.eclipse.wst.sse.ui.extendedconfiguration">
      <textviewerconfiguration
            class="org.eclipse.wst.xml.ui.StructuredTextViewerConfigurationXML"
            target="org.eclipse.wst.xml.core.xmlsource">
      </textviewerconfiguration>
      <contentoutlineconfiguration
            class="org.eclipse.wst.xml.ui.views.contentoutline.XMLContentOutlineConfiguration"
            target="org.eclipse.wst.xml.core.xmlsource">
      </contentoutlineconfiguration>
      <propertysheetconfiguration
            class="org.eclipse.wst.xml.ui.views.properties.XMLPropertySheetConfiguration"
            target="org.eclipse.wst.xml.core.xmlsource">
      </propertysheetconfiguration>
      <spellchecktarget
            class="org.eclipse.wst.xml.ui.XMLSpellCheckTarget"
            target="org.eclipse.wst.xml.core.xmlsource">
      </spellchecktarget>
      <sourceeditingtexttools
            class="org.eclipse.wst.xml.ui.extensions.XMLSourceEditingTextTools"
            target="org.eclipse.wst.xml.core.xmlsource">
      </sourceeditingtexttools>
      <characterpairmatcher
            class="org.eclipse.wst.xml.ui.text.XMLDocumentRegionEdgeMatcher"
            target="org.eclipse.wst.xml.core.xmlsource">
      </characterpairmatcher>
      <preferencepages
            preferenceids="org.eclipse.wst.sse.ui.preferences/org.eclipse.wst.sse.ui.preferences.xml"
            target="org.eclipse.wst.xml.core.xmlsource">
      </preferencepages>
   </extension>
   <extension
      point="org.eclipse.core.filebuffers.annotationModelCreation">
      <factory
            contentTypeId="org.eclipse.wst.xml.core.xmlsource"
            class="org.eclipse.wst.sse.ui.StructuredResourceMarkerAnnotationModelFactory"/>
   </extension>
   <extension
         point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
      <adapterFactoryDescription
            class="org.eclipse.wst.xml.ui.registry.AdapterFactoryProviderForXML">
            <contentType id="org.eclipse.wst.xml.core.xmlsource"/>
      </adapterFactoryDescription>
   </extension>
   <extension
         point="org.eclipse.wst.sse.ui.embeddedAdapterFactoryProvider">
      <embeddedAdapterFactoryProvider
            class="org.eclipse.wst.xml.ui.registry.AdapterFactoryProviderForEmbeddedXML">
      </embeddedAdapterFactoryProvider>
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
<!-- XML PREFERENCE PAGES -->
      <page
            name="%XML_Files.name"
            category="org.eclipse.wst.sse.ui.preferences"
            class="org.eclipse.wst.xml.ui.preferences.XMLFilesPreferencePage"
            id="org.eclipse.wst.sse.ui.preferences.xml">
      </page>
      <page
            name="%XML_Source.name"
            category="org.eclipse.wst.sse.ui.preferences.xml"
            class="org.eclipse.wst.xml.ui.preferences.XMLSourcePreferencePage"
            id="org.eclipse.wst.sse.ui.preferences.xml.source">
      </page>
      <page
            name="%XML_Templates.name"
            category="org.eclipse.wst.sse.ui.preferences.xml"
            class="org.eclipse.wst.xml.ui.preferences.XMLTemplatePreferencePage"
            id="org.eclipse.wst.sse.ui.preferences.xml.templates">
      </page>
      <page
            name="%XML_Styles.name"
            category="org.eclipse.wst.sse.ui.preferences.xml"
            class="org.eclipse.wst.xml.ui.preferences.XMLColorPage"
            id="org.eclipse.wst.sse.ui.preferences.xml.colors">
      </page>
   </extension>
<!-- Editor actionsets -->
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation
            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
         <part
               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
         </part>
		<part
               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
         </part>
      </actionSetPartAssociation>
      <actionSetPartAssociation
            targetID="org.eclipse.ui.NavigateActionSet">
         <part
               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML">
         </part>
		<part
               id="org.eclipse.wst.xml.ui.StructuredTextEditorXML2">
         </part>
      </actionSetPartAssociation>
   </extension>
   
<!-- add a default open on action for xml content type -->
   <extension
         point="org.eclipse.wst.sse.ui.openon">
      <openon
            class="org.eclipse.wst.xml.ui.openon.DefaultOpenOnXML"
            id="org.eclipse.wst.xml.ui.openon.DefaultOpenOnXML">
         <contenttypeidentifier
               id="org.eclipse.wst.xml.core.xmlsource">
         </contenttypeidentifier>
      </openon>
   </extension>
<!-- Templates -->
   <extension
         point="org.eclipse.ui.editors.templates">
      <contextType
            name="All XML context type"
            class="org.eclipse.wst.xml.ui.templates.TemplateContextTypeXML"
            id="xml_all">
      </contextType>
      <contextType
            name="XML Tag context type"
            class="org.eclipse.wst.xml.ui.templates.TemplateContextTypeXMLTag"
            id="xml_tag">
      </contextType>
      <contextType
            name="XML Attribute context type"
            class="org.eclipse.wst.xml.ui.templates.TemplateContextTypeXMLAttribute"
            id="xml_attribute">
      </contextType>
      <contextType
            name="XML Attribute value context type"
            class="org.eclipse.wst.xml.ui.templates.TemplateContextTypeXMLAttributeValue"
            id="xml_attribute_value">
      </contextType>
      <include
      		file="templates/xmldefault-templates.xml"
      		translations="templates/xmldefault-templates.properties">
      </include>
   </extension>
   
   
   
   
   
      <extension
         point="org.eclipse.ui.editors">
      <editor
            name="%XML_Editor.name"
            icon="icons/xmldoc.gif"
            extensions="xml, tld, nst, xmi"
            contributorClass="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorActionBarContributor"
            class="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart"
            id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
      </editor>
   </extension>
<!-- Editor actionsets -->
   <extension
         point="org.eclipse.ui.actionSetPartAssociations">
      <actionSetPartAssociation
            targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
         <part
               id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
         </part>
      </actionSetPartAssociation>
      <actionSetPartAssociation
            targetID="org.eclipse.ui.NavigateActionSet">
         <part
               id="org.eclipse.wst.xml.internal.ui.XMLMultiPageEditorPart">
         </part>
      </actionSetPartAssociation>
   </extension>
   
   
   
<!-- ================================================== -->
<!-- Contribute a 'New Wizard' for XML files            -->
<!-- ================================================== -->
   <extension
         point="org.eclipse.ui.newWizards">
      <category
            name="XML"
            id="org.eclipse.wst.XMLCategory">
      </category>
      <wizard
            name="%_UI_WIZARD_NEW_XML"
            icon="icons/XMLFile.gif"
            category="org.eclipse.wst.XMLCategory"
            class="org.eclipse.wst.xml.ui.internal.wizards.NewXMLWizard"
            id="org.eclipse.wst.xml.ui.internal.wizards.NewXMLWizard">
         <description>
            %_UI_CREATE_NEW_XML_FILE
         </description>
         <selection
               class="org.eclipse.core.resources.IResource">
         </selection>
      </wizard>
   </extension>
   
<!-- =============================================================================== -->
<!-- Allow the 'New XML' wizard to be accessed via the 'Generate' menu on a XSD file -->
<!-- =============================================================================== -->
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.xsd"
            id="org.eclipse.wst.xmlwizard.createXMLFromXSD">
         <menu
               label="%genMenuLabel"
               path="additions"
               id="generateXMLArtifacts">
            <separator name="xml"/>
         </menu>
         <action
               label="%_UI_ACTION_CREATE_XML"
               class="org.eclipse.wst.xml.ui.internal.wizards.XMLImportActionDelegate"
               menubarPath="generateXMLArtifacts/xml"
               enablesFor="1"
               id="org.eclipse.wst.xmlwizard.createXMLFromXSDAction">
         </action>
      </objectContribution>
   </extension>

<!-- =============================================================================== -->
<!-- Allow the 'New XML' wizard to be accessed via the 'Generate' menu on a DTD file -->
<!-- =============================================================================== -->
   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IFile"
            nameFilter="*.dtd"
            id="org.eclipse.wst.xmlwizard.createXMLFromDTD">
         <action
               label="%_UI_ACTION_CREATE_XML"
               class="org.eclipse.wst.xml.ui.internal.wizards.XMLImportActionDelegate"
               menubarPath="generateXMLArtifacts/xml"
               enablesFor="1"
               id="org.eclipse.wst.xmlwizard.createXMLFromDTDAction">
         </action>
      </objectContribution>
   </extension>
   
<!-- =============================================================================== -->
<!-- Contribute a New->Example... entry for Editing and Validating XML files         -->
<!-- =============================================================================== -->
   
  <extension point="org.eclipse.ui.newWizards"> 
       <category
            name="XML"
            parentCategory="org.eclipse.ui.Examples"
            id="org.eclipse.wst.xml.examples">
        </category>
       <wizard
            name="%XMLExample.name"
            class="org.eclipse.wst.xml.ui.internal.wizards.XMLExampleProjectCreationWizard"
            category="org.eclipse.ui.Examples/org.eclipse.wst.xml.examples" 
            finalPerspective="org.eclipse.ui.resourcePerspective"
            id="org.eclipse.wst.xml.ui.XMLExampleProjectCreationWizard"
            project="true" 
            icon="icons/newSampleProject_wiz.gif">
         <description>
           %XMLExampleProjectCreationWizard.description
         </description>  
      </wizard> 
   </extension>
   
   <extension point="org.eclipse.wst.common.ui.exampleProjectCreationWizard"
   		id="XMLExampleProjectCreationWizardExtension"> 
  	 <wizard
           id="org.eclipse.wst.xml.ui.XMLExampleProjectCreationWizard"
           banner="icons/newSampleProject_wizbanner.gif">
        <projectsetup
           	pagetitle="%XMLExampleProjectCreationWizard.pagetitle"
           	name="%XMLExampleProjectCreationWizard.projectname"
           	label="%XMLExampleProjectCreationWizard.label"
           	pagedescription="%XMLExampleProjectCreationWizard.pagedescription"
           	open="readme.html">
            <import
                  dest=""
                  src="examples/EditingAndValidatingXML.zip">
            </import>
        </projectsetup>
     </wizard>
   </extension>
   
</plugin>
