<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>

<!--
Copyright (c) 2011 Obeo.
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
    Obeo - initial API and implementation
-->

<plugin>
     <extension-point id="org.eclipse.mylyn.docs.intent.client.ui.ide.template.extension" name="org.eclipse.mylyn.docs.intent.client.ui.ide.template.extension" schema="schema/org.eclipse.mylyn.docs.intent.client.ui.ide.template.exsd"/>
     
   <!-- EXTENSIONS OF THE PROJECT EXPLORER -->
    <extension
          point="org.eclipse.ui.navigator.viewer">
        <viewer
              helpContext="org.eclipse.ui.navigator.ProjectExplorer.help"
              inheritBindingsFromViewer="org.eclipse.ui.navigator.ProjectExplorer"
              viewerId="org.eclipse.ui.navigator.ProjectExplorer">
       </viewer>
       <viewerContentBinding
             viewerId="org.eclipse.ui.navigator.ProjectExplorer">
          <includes>
             <contentExtension
                   isRoot="false"
                   pattern="org.eclipse.mylyn.docs.intent.client.ui.ide.RepositoryContent">
             </contentExtension>
          </includes>
       </viewerContentBinding>
     
    </extension>
    <extension
          point="org.eclipse.ui.navigator.navigatorContent">
       <navigatorContent
             activeByDefault="true"
             contentProvider="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.RepositoryContentProvider"
             icon="icon/ide/workspaceicon.gif"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.RepositoryContent"
             labelProvider="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.RepositoryLabelProvider"
             name="Repository Content"
             priority="highest"
             providesSaveables="false">
          <triggerPoints>
 			<or>
            	<adapt type="org.eclipse.core.resources.IProject">
                	<and>
                    	<test
                        	property="org.eclipse.core.resources.projectNature"
                            value="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature">
                        </test>
                    </and>
                </adapt>                
            </or>
          </triggerPoints>
 		<possibleChildren>
        	<or>
            <instanceof
                  value="org.eclipse.mylyn.docs.intent.core.indexer.IntentIndex">
            </instanceof>
            <instanceof
                  value="org.eclipse.mylyn.docs.intent.core.indexer.IntentIndexEntry">
            </instanceof>         
        	</or>
     	</possibleChildren>
          <actionProvider
                class="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.RepositoryActionProvider">
          </actionProvider>
       </navigatorContent>
    </extension>
    <extension
          id="intentBuilder"
          name="Intent Project Builder"
          point="org.eclipse.core.resources.builders">
       <builder
             hasNature="true">
          <run
                class="org.eclipse.mylyn.docs.intent.client.ui.ide.builder.IntentBuilder">
          </run>
       </builder>
    </extension>
    <extension
          id="intentNature"
          name="Intent Project Nature"
          point="org.eclipse.core.resources.natures">
       <runtime>
          <run
                class="org.eclipse.mylyn.docs.intent.client.ui.ide.builder.IntentNature">
          </run>
       </runtime>
       <builder
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.intentBuilder">
       </builder>
    </extension>
    <extension
          id="xmlProblem"
          name="XML Problem"
          point="org.eclipse.core.resources.markers">
       <super
             type="org.eclipse.core.resources.problemmarker">
       </super>
       <persistent
             value="true">
       </persistent>
    </extension>
    <extension
          point="org.eclipse.ui.ide.projectNatureImages">
       <image
             icon="icon/ide/nature.gif"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNatureImage"
             natureId="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature">
       </image>
    </extension>
    <extension
          point="org.eclipse.ui.newWizards">
       <category
             id="org.eclipse.mylyn.docs.intent.client.ui.ide"
             name="Intent">
       </category>
       <wizard
             category="org.eclipse.mylyn.docs.intent.client.ui.ide"
             class="org.eclipse.mylyn.docs.intent.client.ui.ide.wizards.NewIntentProjectWizard"
             icon="icon/ide/toggle_nature.gif"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.wizards.NewIntentProjectWizard"
             name="Intent project"
             project="true">
       </wizard>
    </extension>
    <extension
          point="org.eclipse.mylyn.docs.intent.client.ui.ide.template.extension">
       <IntentDocumentTemplate
             description="A simple Intent document."
             name="Default template"
             template="templates/default.intent">
       </IntentDocumentTemplate>
    </extension>
    <extension
          point="org.eclipse.mylyn.docs.intent.client.ui.ide.template.extension">
       <IntentDocumentTemplate
             description="This templates helps initializing a documentation of a standard software."
             name="Standard Software Template"
             template="templates/software.intent">
       </IntentDocumentTemplate>
    </extension>
    <extension
          point="org.eclipse.mylyn.docs.intent.collab.repository.extension">
       <Repository
             id="org.eclipse.mylyn.docs.intent.collab.ide.repository"
             repositoryCreatorClass="org.eclipse.mylyn.docs.intent.client.ui.ide.repository.IntentWorkspaceRepositoryCreator"
             repositoryStructurerClass="org.eclipse.mylyn.docs.intent.client.ui.ide.repository.IntentWorkspaceRepositoryStructurer">
       </Repository>
    </extension>
    <extension
          point="org.eclipse.ui.menus">
       <menuContribution
             allPopups="false"
             locationURI="popup:org.eclipse.ui.popup.any?after=additions">
          <menu
                icon="icon/ide/toggle_nature.gif"
                id="org.eclipse.mylyn.docs.intent.client.ui.ide.menu"
                label="Intent">
             <visibleWhen
                   checkEnabled="true">
             </visibleWhen>
          </menu>
       </menuContribution>
       <menuContribution
             allPopups="false"
             locationURI="popup:org.eclipse.ui.projectConfigure?after=additions">
          <command
                commandId="org.eclipse.mylyn.docs.intent.client.ui.ide.addNatureCommand"
                icon="icon/ide/toggle_nature.gif"
                label="Add Intent Nature"
                style="push"
                tooltip="Toggle the Intent Nature on the selected project">
             <visibleWhen
                   checkEnabled="false">
                <iterate>
                   <adapt
                         type="org.eclipse.core.resources.IProject">
                      <and>
                         <not>
                            <test
                                  property="org.eclipse.core.resources.projectNature"
                                  value="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature">
                            </test>
                         </not>
                         <test
                               property="org.eclipse.core.resources.open"
                               value="true">
                         </test>
                      </and>
                   </adapt>
                </iterate>
             </visibleWhen>
          </command>
          <command
                commandId="org.eclipse.mylyn.docs.intent.client.ui.ide.removeNatureCommand"
                icon="icon/ide/toggle_nature.gif"
                label="Remove Intent Nature"
                style="push"
                tooltip="Toggle the Intent Nature on the selected project">
             <visibleWhen
                   checkEnabled="false">
                <iterate>
                   <adapt
                         type="org.eclipse.core.resources.IProject">
                      <and>
                         <test
                               property="org.eclipse.core.resources.open"
                               value="true">
                         </test>
                         <test
                               property="org.eclipse.core.resources.projectNature"
                               value="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature">
                         </test>
                      </and>
                   </adapt>
                </iterate>
             </visibleWhen>
          </command>
       </menuContribution>
       <menuContribution
             allPopups="false"
             locationURI="popup:org.eclipse.ui.views.ProblemView">
          <menu
                icon="icon/ide/toggle_nature.gif"
                id="org.eclipse.mylyn.docs.intent.client.ui.ide.problemview"
                label="Intent">
             <command
                   commandId="org.eclipse.mylyn.docs.intent.client.ui.ide.problemview.show_editor"
                   label="Show in Intent Editor"
                   style="push">
                <visibleWhen
                      checkEnabled="false">
                   <iterate
                         operator="and">
                      <test
                            forcePluginActivation="true"
                            property="org.eclipse.mylyn.docs.intent.client.ui.ide.isIntentProblemMarker">
                      </test>
                   </iterate>
                </visibleWhen>
             </command>
          </menu>
       </menuContribution>
    </extension>
    <extension
          point="org.eclipse.ui.commands">
       <command
             categoryId="org.eclipse.ui.category.file"
             defaultHandler="org.eclipse.mylyn.docs.intent.client.ui.ide.builder.ToggleNatureAction"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.addNatureCommand"
             name="Add Intent Nature">
       </command>
       <command
             categoryId="org.eclipse.ui.category.file"
             defaultHandler="org.eclipse.mylyn.docs.intent.client.ui.ide.builder.ToggleNatureAction"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.removeNatureCommand"
             name="Remove Intent Nature">
       </command>
       <command
             category="org.eclipse.ui.views.problems"
             categoryId="org.eclipse.ui.category.views"
             defaultHandler="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.ShowProblemInEditorHandler"
             id="org.eclipse.mylyn.docs.intent.client.ui.ide.problemview.show_editor"
             name="Show in Intent Editor">
       </command>
    </extension>
    <extension
          point="org.eclipse.core.expressions.propertyTesters">
       <propertyTester
             class="org.eclipse.mylyn.docs.intent.client.ui.ide.propertytester.IsAssociatedToIntentDocumentTester"
             id="org.eclipse.mylyn.docs.intent.IntentPropertyTester"
             namespace="org.eclipse.mylyn.docs.intent.client.ui.ide"
             properties="isIntentDocument"
             type="java.lang.Object">
       </propertyTester>
       <propertyTester
             class="org.eclipse.mylyn.docs.intent.client.ui.ide.propertytester.IsIntentProblemMarker"
             id="org.eclipse.mylyn.docs.intent.IntentProblemViewPropertyTester"
             namespace="org.eclipse.mylyn.docs.intent.client.ui.ide"
             properties="isIntentProblemMarker"
             type="java.lang.Object">
       </propertyTester>
    </extension>
   
   
   
   

</plugin>
