org.symbian.tools.wrttools/plugin.xml
author Eugene Ostroukhov <eugeneo@symbian.org>
Mon, 15 Mar 2010 17:56:08 -0700
changeset 268 ef733cd772bb
parent 266 f0f78f7ebf4d
child 274 d236e890687c
permissions -rw-r--r--
Bug 2213 - User is not prompted to save when debug session is started

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>

<!-- Generic Project Builder and Project Natures  -->		
 	
<!-- Widget Project Nature -->	
 <extension
       id="WidgetProjectNature"
       point="org.eclipse.core.resources.natures">
    <runtime>
       <run class="org.symbian.tools.wrttools.WidgetProjectNature"/>
    </runtime>
 </extension> 
 
<!-- Widget Project Nature Images -->
        <extension
              point="org.eclipse.ui.ide.projectNatureImages">
           <image
                 icon="icons/WRT_main_16.png"
                 id="org.symbian.tools.wrttools.natureImage"
                 natureId="org.symbian.tools.wrttools.WidgetProjectNature">
           </image>
        </extension>
        
<!-- Validator Marker -->
   
        <extension
           id="org.symbian.tools.wrttools.core.validator.marker"
           name="Validator Marker"
           point="org.eclipse.core.resources.markers">
                 <super type="org.eclipse.core.resources.problemmarker"/>
                 <persistent value ="true"/>
        </extension>
        
<!-- Web Runtime Preferences --> 
 <extension
    point="org.eclipse.core.runtime.preferences">
    <initializer class="org.symbian.tools.wrttools.core.deploy.PreferenceInitializer"/>
    <initializer
          class="org.symbian.tools.wrttools.core.WrtIdeCorePreferences">
    </initializer>
 </extension>

<!-- WRT Tool Integration (Package, Validate, Include, Exclude Settings)-->
        <extension	
          point="org.eclipse.ui.popupMenus">
<!--
      <objectContribution
      		objectClass="org.eclipse.core.resources.IResource" 
            id="org.symbian.tools.wrttools.widget.wrttool.deployment.setttings">
     	 <filter
         	name="projectNature"
         	value="org.symbian.tools.wrttools.WidgetProjectNature"/>
         <action
               class="org.symbian.tools.wrttools.core.deploy.WrtDeploymentSettingsActionDelegate"
               icon="icons/deploy_settings.gif"
               id="org.symbian.tools.wrttools.core.deploy.WrtDeploymentSettingsActionDelegate"
               label="Deployment Settings for WRT Application"
			   menubarPath="org.symbian.tools.wrttools.contextMenuGroupMarker">
         </action>
      </objectContribution>	 
-->                
    
      
	  <objectContribution
           objectClass="org.eclipse.core.resources.IResource" 
		   adaptable="true"         
           id="org.symbian.tools.wrttools.widget.wrttool">
	 	   <filter
	     	name="projectNature"
	     	value="org.symbian.tools.wrttools.WidgetProjectNature"/>
	       <action
	             class="org.symbian.tools.wrttools.core.packager.WrtPackageActionDelegate"
	             enablesFor="+"
	             icon="icons/package_widget.gif"
	             id="org.symbian.tools.wrttools.widget.package.WrtPackageActionDelegate"
	             label="Package WRT Application"
	             menubarPath="org.symbian.tools.wrttools.contextMenuGroupMarker">
	       </action>
      </objectContribution> 
      <objectContribution
            objectClass="org.eclipse.core.resources.IResource"            
            id="org.symbian.tools.wrttools.widget.wrttool.packageoptions">
         <visibility>
            <not>
               <or>
               <objectState name="persistentProperty" value="org.symbian.tools.wrttools.core.packager.exclude"/>
			   <objectState name="extension" value="plist"/>
			   <objectClass name="org.eclipse.core.resources.IProject"/>
			   </or>
            </not>
         </visibility>
     	 <filter
         	name="projectNature"
         	value="org.symbian.tools.wrttools.WidgetProjectNature"/>           
         <action
             class="org.symbian.tools.wrttools.core.packager.ExcludeFileAction"
             icon="icons/exclude_archive.gif"
             id="org.symbian.tools.wrttools.widget.wrttool.packageoptions.ExcludeFileAction"
             label="Exclude From WRT Archive"
             menubarPath="org.symbian.tools.wrttools.contextMenuGroupMarker"> 
         </action>  
      </objectContribution>    
      <objectContribution
            objectClass="org.eclipse.core.resources.IResource"            
            id="org.symbian.tools.wrttools.widget.wrttool.packageoptions">
      <visibility>
        <and>
	        <not>
	        	<objectState name="extension" value="wgz"/>
	        </not>
	        <and>
	        	<objectState name="persistentProperty" value="org.symbian.tools.wrttools.core.packager.exclude"/>
	        	<objectState name="projectNature" value="org.symbian.tools.wrttools.WidgetProjectNature"/>
	        </and>
        </and>
       </visibility>
       <action
             class="org.symbian.tools.wrttools.core.packager.IncludeFileAction"
             icon="icons/include_archive.gif"
             id="org.symbian.tools.wrttools.widget.wrttool.packageoptions.IncludeFileAction"
             label="Include in WRT Archive"
             menubarPath="org.symbian.tools.wrttools.contextMenuGroupMarker"> 
      </action>  
    </objectContribution>
   </extension>  

<!-- WRT Project Templates - CSS Validator -->
	<extension-point id="projectTemplates" name="WRT application project templates" schema="schema/projectTemplates.exsd"/>
	<extension id="org.symbian.tools.wrttools.core.cssvalidator"
		name="CSS Validator" point="org.eclipse.wst.validation.validatorV2">
		<validator build="true"
			class="org.symbian.tools.wrttools.core.internal.validation.CssBuildValidator"
			manual="true" markerId="org.symbian.tools.wrttools.core.cssValidationMarker"
			version="0.0.1">
			<include>
				<rules>
					<contentType exactMatch="false"
						id="org.eclipse.wst.css.core.csssource">
					</contentType>
				</rules>
			</include>
		</validator>
	</extension>
	 
	<extension point="org.eclipse.ui.newWizards">
		<category id="org.symbian.tools.wrttools.core.category" name="Web Runtime(WRT)">
		</category>
		<wizard category="org.symbian.tools.wrttools.core.category"
			class="org.symbian.tools.wrttools.wizards.WrtWidgetWizard"
			finalPerspective="org.symbian.tools.wrttools.mainPerspective"
			hasPages="true" icon="icons/WRT_main_16.png"
			id="org.symbian.tools.wrttools.core.wrtwidgetwizard" name="Web Runtime Application Project"
			project="true">
			<description>
				Creates a new Symbian WRT application project using one of the provided
				templates
         </description>
		</wizard>
  <wizard
        category="org.symbian.tools.wrttools.core.category"
        class="org.symbian.tools.wrttools.wizards.WgzImportWizard"
        finalPerspective="org.symbian.tools.wrttools.mainPerspective"
        hasPages="true"
        icon="icons/import_16x16px.png"
        id="org.symbian.tools.wrttools.importwgz"
        name="WRT Project from WGZ Archive"
        project="true">
     <description>
        Create WRT project from deployable WGZ application archive
     </description>
  </wizard>
	</extension>
	
<!-- WRT Project Templates -->
	<extension point="org.symbian.tools.wrttools.projectTemplates">

      <projectTemplate
		name="Basic Widget Project"
        archive="projecttemplates/basic.zip"
        default-css-name="basic"
        default-html-name="index"
        default-js-name="basic"
        icon="icons/main16.gif"
        id-pattern="com.{0}.basic.widget">
			<description>
				This wizard generates an empty widget project with a minimal Info.plist, html,css and js.
         </description>
	  </projectTemplate> 

      <projectTemplate
            name="Hello Application Project with WRTKit Support"
            archive="projecttemplates/helloWithWRTKit.zip"
            default-css-name="HelloWithWRTKit"
            default-html-name="index"
            default-js-name="HelloWithWRTKit"
            icon="icons/WRT_main_16.png"
            id-pattern="com.{0}.helloWithWRTKit.widget"
            wizard-page-factory="org.symbian.tools.wrttools.wizards.HelloWithWRTKitProjectDetailsWizardPage$Factory">
         <description>
            This wizard generates a basic Hello project with a minimal Info.plist, html,css and js along with WRTKit.
         </description>
         <requires-library>org.symbian.wrtkit</requires-library>
      </projectTemplate>

      <projectTemplate
            name="Flickr Application Project"
            archive="projecttemplates/flickr.zip"
            default-css-name="Flickr"
            default-html-name="index"
            default-js-name="Flickr"
            icon="icons/flickr.gif"
            id-pattern="com.{0}.flickr.widget"
            wizard-page-factory="org.symbian.tools.wrttools.wizards.FlickrProjectDetailsWizardPage$Factory">
         <description>
            This wizard generates an Flickr project with a minimal Info.plist, html,css and js and WRTKit.
         </description>
         <requires-library>org.symbian.wrtkit</requires-library>
      </projectTemplate>

      <projectTemplate
            name="RSS Reader Application Project"
            archive="projecttemplates/rssreader.zip"
            default-css-name="RSSReader"
            default-html-name="index"
            default-js-name="RSSReader"
            icon="icons/rss.gif"
            id-pattern="com.{0}.rssreader.widget"
            wizard-page-factory="org.symbian.tools.wrttools.wizards.RssReaderProjectDetailsWizardPage$Factory">
         <description>
            This wizard generates an RSS Reader project with a minimal Info.plist, html,css and js and WRTKit.
         </description>
         <requires-library>org.symbian.wrtkit</requires-library>
      </projectTemplate>
	</extension>
	
<!-- Import Wizard -->
	<extension point="org.eclipse.ui.importWizards">
		<category id="org.symbian.tools.wrttools.import" name="Web Runtime(WRT)">
		</category>
		<wizard category="org.symbian.tools.wrttools.import"
			class="org.symbian.tools.wrttools.wizards.projectimport.WrtProjectsImportWizard"
			icon="icons/import_aptana_project.gif" id="org.symbian.tools.wrttools.import.projectImport"
			name="Existing WRT Projects into Workspace">
     <description>
        Import WRT project created in Aptana, Adobe Dreamweaver or WRT IDE
     </description>
		</wizard>
    </extension>
	
<!-- Problem Markers -->
	<extension id="org.symbian.tools.wrt.xmlProblem" name="XML Problem"
		point="org.eclipse.core.resources.markers">
		<super type="org.eclipse.core.resources.problemmarker">
		</super>
		<persistent value="true">
		</persistent>
	</extension>
	<extension id="org.symbian.tools.wrt.jsProblem" name="JSProblem"
		point="org.eclipse.core.resources.markers">
		<super type="org.eclipse.core.resources.problemmarker">
		</super>
		<persistent value="true">
		</persistent>
	</extension>
	
<!-- WRT Content Descriptor (.plist) file -->
	<extension point="org.eclipse.core.contenttype.contentTypes">
		<content-type base-type="org.eclipse.core.runtime.xml"
			file-extensions="plist" id="org.symbian.tools.wrttools.contenttype.plist"
			name="WebRuntime Descriptor File" priority="normal">
		</content-type>
	</extension>
	
<!-- Perspective Extensions -->
	<extension point="org.eclipse.ui.perspectiveExtensions">
		<perspectiveExtension targetID="org.eclipse.wst.jsdt.ui.JavaPerspective">
			<newWizardShortcut id="org.symbian.tools.wrttools.core.wrtwidgetwizard">
			</newWizardShortcut>
			<newWizardShortcut id="org.symbian.tools.wrttools.importwgz">
			</newWizardShortcut>
		</perspectiveExtension>
		<perspectiveExtension targetID="org.eclipse.debug.ui.DebugPerspective">
			<newWizardShortcut id="org.symbian.tools.wrttools.core.wrtwidgetwizard">
			</newWizardShortcut>
			<newWizardShortcut id="org.symbian.tools.wrttools.importwgz">
			</newWizardShortcut>
		</perspectiveExtension>
  <perspectiveExtension
        targetID="org.symbian.tools.wrttools.mainPerspective">
     <newWizardShortcut
           id="org.symbian.tools.wrttools.importwgz">
     </newWizardShortcut>
  </perspectiveExtension>
	</extension>
	
<!-- Navigator Extensions -->
	<extension point="org.eclipse.ui.views">
		<view allowMultiple="false" category="org.symbian.tools.wrttools.views"
			class="org.eclipse.ui.navigator.CommonNavigator" icon="icons/main16.gif"
			id="org.symbian.tools.wrttools.wrtnavigator" name="WRT Navigator"
			restorable="true">
		</view>
		<category id="org.symbian.tools.wrttools.views" name="WRT Tools">
		</category>
	</extension>
	<extension point="org.eclipse.ui.navigator.viewer">
		<viewer viewerId="org.symbian.tools.wrttools.wrtnavigator">
			<popupMenu allowsPlatformContributions="true"
				id="org.eclipse.ui.navigator.ProjectExplorer#PopupMenu">
				<insertionPoint name="group.new" />
				<insertionPoint name="group.open" separator="true" />
				<insertionPoint name="group.openWith" />
				<insertionPoint name="group.edit" separator="true" />
				<insertionPoint name="group.reorganize" separator="true" />
				<insertionPoint name="group.port" separator="true" />
				<insertionPoint name="group.build" separator="true" />
				<insertionPoint name="group.generate" separator="true" />
				<insertionPoint name="group.search" separator="true" />
				<insertionPoint name="additions" separator="true" />
				<insertionPoint name="group.properties" separator="true" />
			</popupMenu>
		</viewer>
		<viewerContentBinding viewerId="org.symbian.tools.wrttools.wrtnavigator">
			<includes>
				<contentExtension
          isRoot="true"
          pattern="org.symbian.tools.wrttools.navigatorcontent"/>
				<contentExtension pattern="org.eclipse.ui.navigator.resources.filters.*" />
				<contentExtension
          isRoot="true"
          pattern="org.symbian.tools.wrttools.wrtLinkHelper"/>
			</includes>
		</viewerContentBinding>
		<viewerActionBinding viewerId="org.symbian.tools.wrttools.wrtnavigator">
			<includes>
				<actionExtension pattern="org.eclipse.ui.navigator.resources.PortingActions" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.GotoActions" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.GoIntoActions" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.NewActions" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.PropertiesActionProvider" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.WorkManagementActionProvider" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.ResourceMgmtActions" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.UndoRedoActionProvider" />
				<actionExtension pattern="org.eclipse.ui.navigator.resources.WorkingSetActions" />
			</includes>
		</viewerActionBinding>
		<dragAssistant
			class="org.eclipse.ui.navigator.resources.ResourceDragAdapterAssistant"
			viewerId="org.symbian.tools.wrttools.wrtnavigator" />
	</extension>
	 <extension
       point="org.eclipse.ui.navigator.navigatorContent">
    <navigatorContent
          activeByDefault="true"
          contentProvider="org.symbian.tools.wrttools.navigator.WRTNavigatorContentProvider"
          icon="icons/main16.gif"
          id="org.symbian.tools.wrttools.navigatorcontent"
          labelProvider="org.eclipse.wst.jsdt.internal.ui.navigator.JavaNavigatorLabelProvider"
          name="WRT Elements"
          priority="high"
          providesSaveables="false">
       <triggerPoints>
          <or>
             <instanceof
                   value="org.eclipse.wst.jsdt.core.IJavaScriptElement">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.core.IJarEntryResource">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.internal.ui.packageview.PackageFragmentRootContainer">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.ui.ProjectLibraryRoot">
             </instanceof>
             <instanceof
                   value="org.eclipse.core.resources.IResource">
             </instanceof>
             <adapt
                   type="org.eclipse.core.resources.IProject">
                <test
                      property="org.eclipse.core.resources.projectNature"
                      value="org.symbian.tools.wrttools.WidgetProjectNature">
                </test>
             </adapt>
          </or>
       </triggerPoints>
       <possibleChildren>
          <or>
             <instanceof
                   value="org.eclipse.core.resources.IResource">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.core.IJavaScriptElement">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.core.IJarEntryResource">
             </instanceof>
             <instanceof
                   value="org.eclipse.wst.jsdt.ui.ProjectLibraryRoot">
             </instanceof>
          </or>
       </possibleChildren>
       <actionProvider
             class="org.eclipse.wst.jsdt.internal.ui.navigator.JavaNavigatorActionProvider"
             id="org.eclipse.wst.jsdt.ui.navigator.actions.StandardActions">
       </actionProvider>
       <actionProvider
             class="org.eclipse.wst.jsdt.internal.ui.navigator.JavaNavigatorRefactorActionProvider"
             id="org.eclipse.wst.jsdt.ui.navigator.actions.RefactorActions"
             overrides="org.eclipse.ui.navigator.resources.actions.RefactorActions">
          <enablement>
             <or>
                <adapt
                      type="java.util.Collection">
                   <count
                         value="0">
                   </count>
                </adapt>
                <and>
                   <or>
                      <instanceof
                            value="org.eclipse.wst.jsdt.core.IJavaScriptElement">
                      </instanceof>
                      <instanceof
                            value="org.eclipse.wst.jsdt.core.IJarEntryResource">
                      </instanceof>
                   </or>
                   <not>
                      <instanceof
                            value="org.eclipse.wst.jsdt.core.ITypeRoot">
                      </instanceof>
                   </not>
                </and>
             </or>
          </enablement>
       </actionProvider>
       <actionProvider
             class="org.symbian.tools.wrttools.navigator.RenameMoveActionProvider"
             id="org.symbian.wrttools.navigator.MoveRename"
             overrides="org.eclipse.ui.navigator.resources.actions.RefactorActions">
          <enablement>
             <and>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                </adapt>
                <not>
                   <instanceof
                         value="org.eclipse.wst.jsdt.core.IType">
                   </instanceof>
                </not>
             </and>
          </enablement>
       </actionProvider>
       <actionProvider
             class="org.eclipse.wst.jsdt.internal.ui.navigator.PackageExplorerOpenActionProvider"
             id="org.eclipse.wst.jsdt.ui.navigator.actions.OpenActions"
             overrides="org.eclipse.ui.navigator.resources.OpenActions">
       </actionProvider>
       <override
             policy="InvokeAlwaysRegardlessOfSuppressedExt"
             suppressedExtensionId="org.eclipse.ui.navigator.resourceContent">
       </override>
       <commonWizard
             menuGroupId="group.new"
             type="new"
             wizardId="org.symbian.tools.wrttools.core.wrtwidgetwizard">
          <enablement>
             <or>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                </adapt>
                <adapt
                      type="java.util.Collection">
                </adapt>
             </or>
          </enablement>
       </commonWizard>
       <commonWizard
             type="new"
             wizardId="org.eclipse.wst.html.ui.internal.wizard.NewHTMLWizard">
          <enablement>
             <adapt
                   type="org.eclipse.core.resources.IResource">
             </adapt>
          </enablement>
       </commonWizard>
       <commonWizard
             type="new"
             wizardId="org.eclipse.wst.css.ui.internal.wizard.NewCSSWizard">
          <enablement>
             <adapt
                   type="org.eclipse.core.resources.IResource">
             </adapt>
          </enablement>
       </commonWizard>
       <commonWizard
             type="new"
             wizardId="org.eclipse.wst.jsdt.ui.NewJSWizard">
          <enablement>
             <adapt
                   type="org.eclipse.core.resources.IResource">
             </adapt>
          </enablement>
       </commonWizard>
       <commonWizard
             type="import"
             wizardId="org.symbian.tools.wrttools.import.projectImport">
          <enablement>
             <or>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                </adapt>
                <adapt
                      type="java.util.Collection">
                </adapt>
             </or>
          </enablement>
       </commonWizard>
       <commonWizard
             menuGroupId="group.new"
             type="new"
             wizardId="org.symbian.tools.wrttools.importwgz">
          <enablement>
             <or>
                <adapt
                      type="org.eclipse.core.resources.IResource">
                </adapt>
                <adapt
                      type="java.util.Collection">
                </adapt>
             </or>
          </enablement>
       </commonWizard>
       <dropAssistant
             class="org.eclipse.wst.jsdt.internal.ui.navigator.JavaDropAdapterAssistant"
             id="org.eclipse.wst.jsdt.ui.dropAssistant">
          <possibleDropTargets>
             <or>
                <instanceof
                      value="org.eclipse.core.resources.IResource">
                </instanceof>
                <instanceof
                      value="org.eclipse.wst.jsdt.core.IJavaScriptElement">
                </instanceof>
             </or>
          </possibleDropTargets>
       </dropAssistant>
       <commonSorter
             class="org.symbian.tools.wrttools.navigator.NavigatorSorter"
             id="org.symbian.tools.wrttools.sorter">
       </commonSorter>
    </navigatorContent>
 </extension>
 <extension
       point="org.eclipse.wst.jsdt.core.JsGlobalScopeContainerInitializer">
    <JsGlobalScopeContainerInitializer
       class="org.symbian.tools.wrttools.core.libraries.WrtKitLibInitializer"
       id="org.symbian.wrtkit">
    </JsGlobalScopeContainerInitializer>
    <JsGlobalScopeContainerInitializer
       class="org.symbian.tools.wrttools.core.libraries.WrtLibInitializer"
       id="org.symbian.wrt">
    </JsGlobalScopeContainerInitializer>
 </extension>
 <extension
        point="org.eclipse.wst.jsdt.ui.JsGlobalScopeContainerPage">
    <JsGlobalScopeContainerPage
            name="WRTKit"
            class="org.symbian.tools.wrttools.wizards.WrtKitLibraryWizardPage"
            id="org.symbian.wrtkit">
    </JsGlobalScopeContainerPage>    
    <JsGlobalScopeContainerPage
            name="WebRuntime Toolkit"
            class="org.symbian.tools.wrttools.wizards.WrtLibraryWizardPage"
            id="org.symbian.wrt">
    </JsGlobalScopeContainerPage>    
  </extension>
 <extension
       id="org.symbian.tools.wrttools.core.plistvalidator"
       name="WRT Application Descriptor Validator"
       point="org.eclipse.wst.validation.validatorV2">
    <validator
          build="true"
          class="org.symbian.tools.wrttools.core.internal.validation.WrtApplicationValidator"
          manual="true"
          markerId="org.symbian.tools.wrttools.core.cssValidationMarker"
          version="0.0.1">
       <include>
          <rules>
             <projectNature
                   id="org.symbian.tools.wrttools.WidgetProjectNature">
             </projectNature>
          </rules>
       </include>
    </validator>
 </extension>
 <extension
       point="org.eclipse.ui.keywords">
    <keyword
          id="org.symbian.tools.wrttools.wrtwords"
          label="wrt, webruntime, web runtime, cwrt widget">
    </keyword>
 </extension>
 <extension
       point="org.eclipse.ui.navigator.linkHelper">
    <linkHelper
          class="org.symbian.tools.wrttools.navigator.WrtNavigatorLinkHelper"
          id="org.symbian.tools.wrttools.wrtLinkHelper">
       <editorInputEnablement>
          <adapt
                type="org.eclipse.ui.IFileEditorInput">
          </adapt>
       </editorInputEnablement>
       <selectionEnablement>
          <or>
             <adapt
                   type="org.eclipse.wst.jsdt.core.IJavaScriptElement">
             </adapt>
             <instanceof
                   value="java.util.Collection">
             </instanceof>
             <adapt
                   type="org.eclipse.core.resources.IResource">
             </adapt>
          </or>
       </selectionEnablement>
    </linkHelper>
 </extension>
 <extension
       id="org.symbian.tools.wrttools.platformservices"
       name="Platform Services Inferrence Support"
       point="org.eclipse.wst.jsdt.core.inferrenceSupport">
    <inferenceProvider
          class="org.symbian.tools.wrttools.core.libraries.PlatformServicesTypeProvider">
    </inferenceProvider>
 </extension>
 <extension
       point="org.eclipse.ui.commands">
    <category
          id="org.symbian.tools.wrttools.commands.maincategory"
          name="WRT Tools">
    </category>
    <command
          categoryId="org.symbian.tools.wrttools.commands.maincategory"
          description="Deploys application to phone or emulator"
          id="org.symbian.tools.wrttools.commands.deploy"
          name="Deploy Application">
    </command>
 </extension>
 <extension
       point="org.eclipse.ui.menus">
    <menuContribution
          locationURI="toolbar:org.eclipse.ui.main.toolbar">
       <toolbar
             id="org.symbian.tools.wrttools">
          <command
                commandId="org.symbian.tools.wrttools.commands.deploy"
                icon="icons/deploy_widget.gif"
                id="org.symbian.tools.wrttools.toolbars.deploy"
                label="Deploy"
                tooltip="Deploy application">
          </command>
       </toolbar>
    </menuContribution>
 </extension>
 <extension
       point="org.eclipse.ui.handlers">
    <handler
          class="org.symbian.tools.wrttools.handlers.DeployHandler"
          commandId="org.symbian.tools.wrttools.commands.deploy">
       <enabledWhen>
          <or>
             <with
                   variable="selection">
                <and>
                   <count
                         value="1">
                   </count>
                   <iterate>
                      <adapt
                            type="org.eclipse.core.resources.IResource">
                         <test
                               property="org.eclipse.core.resources.projectNature"
                               value="org.symbian.tools.wrttools.WidgetProjectNature">
                         </test>
                      </adapt>
                   </iterate>
                </and>
             </with>
             <and>
                <with
                      variable="activePart">
                   <instanceof
                         value="org.eclipse.ui.IEditorPart">
                   </instanceof>
                </with>
                <with
                      variable="activeEditorInput">
                   <adapt
                         type="org.eclipse.core.resources.IResource">
                   </adapt>
                </with>
             </and>
          </or>
       </enabledWhen>
    </handler>
 </extension>
</plugin>