<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin id="org.eclipse.jst.jsp.ui" 
	name="%pluginName" version="1.0.0"
	provider-name="%providerName"
	class="org.eclipse.jst.jsp.ui.internal.JSPUIPlugin">

	<runtime>
		<library name="jspeditor.jar">
			<export name="*" />
		</library>
	</runtime>
	<requires>
		<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.ui" />
		<import plugin="org.eclipse.wst.sse.ui" />
		<import plugin="org.eclipse.wst.html.ui" />
		<import plugin="org.eclipse.wst.css.ui" />
		<import plugin="org.eclipse.wst.xml.ui" />
		<import plugin="org.eclipse.jst.jsp.core" />
		<import plugin="org.eclipse.wst.html.core" />
		<import plugin="org.eclipse.wst.css.core" />
		<import plugin="org.eclipse.wst.xml.core" />
		<import plugin="org.eclipse.wst.xml.uriresolver" />
		<import plugin="org.eclipse.wst.sse.core" />
		<import plugin="org.eclipse.jdt.ui" />
		<import plugin="org.eclipse.jdt.core" />
		<import plugin="org.eclipse.debug.core" />
		<import plugin="org.eclipse.jdt.debug" />
		<import plugin="org.eclipse.core.resources" />
		<import plugin="org.eclipse.core.runtime" />
		<import plugin="org.eclipse.search" />
		<import plugin="org.eclipse.ltk.core.refactoring" />
		<import plugin="org.eclipse.ltk.ui.refactoring" />
		<import plugin="org.eclipse.wst.common.uriresolver"/>
		<import plugin="org.eclipse.ui.ide" />
  		<import plugin="org.eclipse.wst.javascript.ui"/>
	</requires>

	<extension point="org.eclipse.ui.editors">
		<editor name="%JSP_Source_Page_Editor.name"
			icon="icons/sourceEditor.gif" extensions="jsp, jsf, jspf, jspx, tag, tagf"
			contributorClass="org.eclipse.jst.jsp.ui.internal.editor.ActionContributorJSP"
			class="org.eclipse.jst.jsp.ui.internal.editor.StructuredTextEditorJSP"
			symbolicFontName="org.eclipse.wst.sse.ui.textfont"
			id="org.eclipse.jst.jsp.core.jspsource.source">
      <contentTypeBinding contentTypeId="org.eclipse.jst.jsp.core.jspsource" />
		</editor>
	</extension>
	<extension point="org.eclipse.wst.sse.ui.extendedconfiguration"> 
		<configuration 
      		type="textviewerconfiguration"
			class="org.eclipse.jst.jsp.ui.internal.provisional.StructuredTextViewerConfigurationJSP"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<configuration 
      		type="contentoutlineconfiguration"
			class="org.eclipse.jst.jsp.ui.internal.views.contentoutline.JSPContentOutlineConfiguration"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<configuration 
      		type="propertysheetconfiguration"
			class="org.eclipse.wst.xml.ui.internal.views.properties.XMLPropertySheetConfiguration"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<configuration 
      		type="sourceeditingtexttools"
			class="org.eclipse.jst.jsp.ui.internal.editor.JSPSourceEditingTextTools"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<configuration 
      		type="characterpairmatcher"
			class="org.eclipse.jst.jsp.ui.internal.text.JSPDocumentRegionEdgeMatcher"
			target="org.eclipse.jst.jsp.core.jspsource"/>
      <configuration
      		type="structuredtextfoldingprovider"
            class="org.eclipse.jst.jsp.ui.internal.projection.StructuredTextFoldingProviderJSP"
            target="org.eclipse.jst.jsp.core.jspsource"/>
		<definition 
      		type="preferencepages"
            value="org.eclipse.wst.sse.ui.preferences.jsp"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<definition 
      		type="preferencepages"
            value="org.eclipse.wst.sse.ui.preferences.jsp.source"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<definition 
      		type="preferencepages"
            value="org.eclipse.wst.sse.ui.preferences.jsp.templates"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<definition 
      		type="preferencepages"
            value="org.eclipse.wst.sse.ui.preferences.jsp.styles"
			target="org.eclipse.jst.jsp.core.jspsource"/>
		<definition 
      		type="showintarget"
            value="org.eclipse.jdt.ui.PackageExplorer"
			target="org.eclipse.jst.jsp.core.jspsource"/>
	</extension>
	<extension
		point="org.eclipse.wst.sse.ui.adapterFactoryDescription">
		<adapterFactoryDescription
			class="org.eclipse.jst.jsp.ui.internal.registry.AdapterFactoryProviderForJSP">
			<contentType id="org.eclipse.jst.jsp.core.jspsource" />
		</adapterFactoryDescription>
	</extension>
	<extension
		point="org.eclipse.core.filebuffers.annotationModelCreation">
		<factory contentTypeId="org.eclipse.jst.jsp.core.jspsource"
			class="org.eclipse.wst.sse.ui.internal.StructuredResourceMarkerAnnotationModelFactory" />
	</extension>
	<extension point="org.eclipse.ui.preferencePages">

		<!--======================================================================================-->
		<!-- JSP PREFERENCE PAGES                                                                 -->
		<!--======================================================================================-->
		<page name="%JSP_Files.name"
			category="org.eclipse.wst.sse.ui.internal.provisional.preferences"
			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPFilesPreferencePage"
			id="org.eclipse.wst.sse.ui.preferences.jsp">
		</page>
		<page name="%JSP_Source.name"
			category="org.eclipse.wst.sse.ui.preferences.jsp"
			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPSourcePreferencePage"
			id="org.eclipse.wst.sse.ui.preferences.jsp.source">
		</page>
		<page name="%JSP_Templates.name"
			category="org.eclipse.wst.sse.ui.preferences.jsp"
			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPTemplatePreferencePage"
			id="org.eclipse.wst.sse.ui.preferences.jsp.templates">
		</page>
		<page name="%JSP_Styles.name"
			category="org.eclipse.wst.sse.ui.preferences.jsp"
			class="org.eclipse.jst.jsp.ui.internal.preferences.ui.JSPColorPage"
			id="org.eclipse.wst.sse.ui.preferences.jsp.styles">
		</page>
	</extension>

	<!--======================================================================================-->
	<!-- FOR JSP/JAVA RENAME PARTICIPATION                                                    -->
	<!--======================================================================================-->
	<extension
		point="org.eclipse.ltk.core.refactoring.renameParticipants">
		<renameParticipant
			name="%JSP_Type_Rename_Participant_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPTypeRenameParticipant"
			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPTypeRenameParticipant">
			<enablement>
				<with variable="affectedNatures">
					<iterate operator="or">
						<equals
							value="org.eclipse.jdt.core.javanature">
						</equals>
					</iterate>
				</with>
				<with variable="element">
					<instanceof value="org.eclipse.jdt.core.IType">
					</instanceof>
				</with>
			</enablement>
		</renameParticipant>

		<renameParticipant
			name="%JSP_Method_Rename_Participant_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPMethodRenameParticipant"
			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPMethodRenameParticipant">
			<enablement>
				<with variable="affectedNatures">
					<iterate operator="or">
						<equals
							value="org.eclipse.jdt.core.javanature">
						</equals>
					</iterate>
				</with>
				<with variable="element">
					<instanceof value="org.eclipse.jdt.core.IMethod">
					</instanceof>
				</with>
			</enablement>
		</renameParticipant>

		<renameParticipant
			name="%JSP_Package_Rename_Participant_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPPackageRenameParticipant"
			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPPackageRenameParticipant">
			<enablement>
				<with variable="affectedNatures">
					<iterate operator="or">
						<equals
							value="org.eclipse.jdt.core.javanature">
						</equals>
					</iterate>
				</with>
				<with variable="element">
					<instanceof
						value="org.eclipse.jdt.core.IPackageFragment">
					</instanceof>
				</with>
			</enablement>
		</renameParticipant>
	</extension>

	<!--======================================================================================-->
	<!-- FOR JSP/JAVA MOVE PARTICIPATION                                                      -->
	<!--======================================================================================-->
	<extension
		point="org.eclipse.ltk.core.refactoring.moveParticipants">

		<moveParticipant
			id="org.eclipse.jst.jsp.ui.java.refactoring.JSPTypeMoveParticipant"
			name="%JSP_Type_Move_Participant_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.java.refactoring.JSPTypeMoveParticipant">
			<enablement>
				<with variable="affectedNatures">
					<iterate operator="or">
						<equals value="org.eclipse.jdt.core.javanature" />
					</iterate>
				</with>
				<with variable="element">
					<instanceof value="org.eclipse.jdt.core.IType">
					</instanceof>
				</with>
			</enablement>
		</moveParticipant>
	</extension>

	<!--======================================================================================-->
	<!-- for breakpoint                                                                       -->
	<!--======================================================================================-->
	<extension point="org.eclipse.wst.sse.ui.breakpoint">
		<breakpointContribution id="org.eclipse.jst.jsp.ui.providers">
			<!-- 
				<provider
				extensions="jsp, jspf, jsf"
				class="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider"
				id="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider">
				</provider>
			-->
			<provider contentTypes="org.eclipse.jst.jsp.core.jspsource"
				class="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider:*jsp"
				id="org.eclipse.jst.jsp.ui.internal.breakpointproviders.JavaStratumBreakpointProvider" />
		</breakpointContribution>
	</extension>

	<!--======================================================================================-->
	<!-- Snippet View contributions                                                           -->
	<!--======================================================================================-->
	<extension
		point="org.eclipse.wst.common.snippets.SnippetContributions">
		<category label="%JSP_Extension_Element.label"
			icon="icons/snippets/tag-jsp.gif"
			id="org.eclipse.jst.jsp.ui.category0"
			contenttypes="org.eclipse.jst.jsp.core.jspsource" >
			<item label="%jsp_hidden_comment"
				icon="icons/snippets/tag-generic.gif"
				id="org.eclipse.jst.jsp.ui.jsp_hidden_comment">
				<content>%jsp_hidden_comment_content</content>
			</item>
			<item label="%jsp_scriptlet" icon="icons/snippets/jspscr.gif"
				id="org.eclipse.jst.jsp.ui.jsp_scriptlet">
				<content>%jsp_scr_content</content>
			</item>
			<item label="%jsp_expression" icon="icons/snippets/jspexp.gif"
				id="org.eclipse.jst.jsp.ui.jsp_expression">
				<content>%jsp_expression_content</content>
			</item>
			<item label="%jsp_declaration" icon="icons/snippets/jspdecl.gif"
				id="org.eclipse.jst.jsp.ui.jsp_declaration">
				<content>%jsp_declaration_content</content>
			</item>
			<item label="%jsp_include_directive"
				icon="icons/snippets/jspincl.gif"
				id="org.eclipse.jst.jsp.ui.jsp_include_directive">
				<content>%jsp_include_directive_content</content>
			</item>
			<item label="%jsp_page_directive"
				id="org.eclipse.jst.jsp.ui.jsp_page_directive">
				<content>%jsp_page_directive_content</content>
			</item>
			<item label="%jsp_taglib_directive"
				icon="icons/snippets/jsptaglib.gif"
				id="org.eclipse.jst.jsp.ui.jsp_taglib_directive">
				<content>%jsp_taglib_directive_content</content>
				<variable description="%jsp_taglib_directive_uri"
					id="uri">
				</variable>
				<variable default="mylib"
					description="%jsp_taglib_directive_prefix" id="prefix">
				</variable>
			</item>
		</category>
	</extension>

	<!-- Editor actionsets -->
	<extension point="org.eclipse.ui.actionSetPartAssociations">
		<actionSetPartAssociation
			targetID="org.eclipse.ui.edit.text.actionSet.annotationNavigation">
			<part id="org.eclipse.jst.jsp.core.jspsource.source">
			</part>
		</actionSetPartAssociation>
		<actionSetPartAssociation
			targetID="org.eclipse.ui.NavigateActionSet">
			<part id="org.eclipse.jst.jsp.core.jspsource.source">
			</part>
		</actionSetPartAssociation>
	</extension>

	<!--======================================================================================-->
	<!-- JSP Editor specific actions                                                          -->
	<!--======================================================================================-->
	<extension point="org.eclipse.ui.commands">
		<scope name="%scope.structured.text.editor.jsp.name"
			parent="org.eclipse.ui.textEditorScope"
			description="%scope.structured.text.editor.jsp.description"
			id="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope">
		</scope>
		<!-- dmw 6/6 removed from 'scope'      parentId="org.eclipse.ui.textEditorScope" -->
		<!-- rename refactor -->
		<command name="%command.jsp.refactor.rename.name"
			description="%command.jsp.refactor.rename.description"
			category="org.eclipse.ui.category.edit"
			id="org.eclipse.jst.jsp.ui.refactor.rename">
		</command>
		<keyBinding string="Alt+Shift+R"
			scope="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope"
			command="org.eclipse.jst.jsp.ui.refactor.rename"
			configuration="org.eclipse.ui.defaultAcceleratorConfiguration">
		</keyBinding>
		<!-- move refactor -->
		<command name="%command.jsp.refactor.move.name"
			description="%command.jsp.refactor.move.description"
			category="org.eclipse.ui.category.edit"
			id="org.eclipse.jst.jsp.ui.refactor.move">
		</command>
		<keyBinding string="Alt+Shift+V"
			scope="org.eclipse.jst.jsp.ui.structured.text.editor.jsp.scope"
			command="org.eclipse.jst.jsp.ui.refactor.move"
			configuration="org.eclipse.ui.defaultAcceleratorConfiguration">
		</keyBinding>
	</extension>

	<!--======================================================================================-->
	<!-- Templates                                                                            -->
	<!--======================================================================================-->
	<extension point="org.eclipse.ui.editors.templates">
		<contextType name="%All_JSP_context_type_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
			id="jsp_all">
		</contextType>
		<contextType name="%JSP_New_context_type_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
			id="jsp_new">
		</contextType>
		<contextType name="%JSP_Tag_context_type_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
			id="jsp_tag">
		</contextType>
		<contextType
			name="%JSP_Attribute_context_type_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
			id="jsp_attribute">
		</contextType>
		<contextType
			name="%JSP_Attribute_value_context_type_Extension_Element.name"
			class="org.eclipse.jst.jsp.ui.internal.templates.TemplateContextTypeJSP"
			id="jsp_attribute_value">
		</contextType>
		<include file="templates/jspdefault-templates.xml"
			translations="templates/jspdefault-templates.properties">
		</include>
	</extension>

	<!--======================================================================================-->
	<!-- queryParticipant to participate in java seraches                                     -->
	<!--======================================================================================-->
	<extension point="org.eclipse.jdt.ui.queryParticipants">
		<queryParticipant
			name="%JSP_Query_Participant_Extension_Element.name"
			nature="org.eclipse.jdt.core.javanature"
			class="org.eclipse.jst.jsp.ui.internal.java.search.ui.JSPQueryParticipant"
			id="org.eclipse.jst.jsp.ui.java.search.ui.JSPQueryParticipant">
		</queryParticipant>
	</extension>
	<!-- initialize xml ui preferences -->
	<extension point="org.eclipse.core.runtime.preferences">
	   <initializer class="org.eclipse.jst.jsp.ui.internal.preferences.JSPUIPreferenceInitializer"/>
	</extension>
	
	<!--======================================================================================-->
	<!-- Document provider for ExternalFileEditorInput                                        -->
	<!--======================================================================================-->
	<extension point="org.eclipse.ui.editors.documentProviders"> 
		<provider 
			inputTypes="org.eclipse.jst.jsp.ui.internal.hyperlink.ExternalFileEditorInput" 
			class="org.eclipse.ui.editors.text.TextFileDocumentProvider" 
			id="org.eclipse.jst.jsp.ui.internal.ExternalFileDocumentProvider"> 
		</provider> 
	</extension> 

	<!-- New JSP wizard -->
	<extension point="org.eclipse.ui.newWizards">
		<wizard id="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard"
			name="%_UI_WIZARD_NAME"
			class="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard"
			category="org.eclipse.wst.web.ui"
			icon="icons/full/ctool16/newjsp_wiz.gif">
			<description>%_UI_WIZARD_CREATE_NEW_FILE</description>
			<selection class="org.eclipse.core.resources.IResource" />
		</wizard>
	</extension>
	
   <!-- Add new JSP wizard to J2EE Project Navigator -->
   <extension
		point="org.eclipse.wst.common.navigator.workbench.commonWizard">
        <commonWizard
			type="new"
            wizardId="org.eclipse.jst.jsp.ui.internal.wizard.NewJSPWizard">
			<enablement>
				<or>
		           <objectClass 
		                name="org.eclipse.core.resources.IProject">
		           </objectClass>
		           <objectClass
		                 name="org.eclipse.core.resources.IFolder">
		           </objectClass> 
		           <objectClass
		                 name="org.eclipse.core.resources.IFile">
		           </objectClass> 
				</or>
			</enablement>
       </commonWizard>
    </extension> 
	
	<extension
		point="org.eclipse.ui.popupMenus">
		<viewerContribution
			targetID="org.eclipse.jst.jsp.core.jspsource.source.RulerContext"
            id="org.eclipse.ui.texteditor.ruler.context.actions">
			<action
				label="%AddTask.label"
				helpContextId="org.eclipse.ui.AddTask_action_context"
				class="org.eclipse.ui.texteditor.TaskRulerAction"
				tooltip="%AddTask.tooltip"
				menubarPath="additions"
				id="org.eclipse.ui.texteditor.TaskRulerAction">
			</action>
			<action
				label="%AddBookmark.label"
				helpContextId="org.eclipse.ui.bookmark_action_context"
				class="org.eclipse.ui.texteditor.BookmarkRulerAction"
				tooltip="%AddBookmark.tooltip"
				menubarPath="additions"
				id="org.eclipse.ui.texteditor.BookmarkRulerAction">
			</action>
		</viewerContribution>
	</extension>
	
	
</plugin>
