<?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"
             appearsBefore="org.eclipse.jdt.java.ui.javaContent"
             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">
                	<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature"/>
                </adapt>                
            </or>
          </triggerPoints>
 		<possibleChildren>
 			<or>
        	 <instanceof
                    value="org.eclipse.emf.ecore.EObject">
              </instanceof>
               <adapt
                    type="org.eclipse.core.resources.IProject">
                	<test property="org.eclipse.core.resources.projectNature" value="org.eclipse.mylyn.docs.intent.client.ui.ide.intentNature"/>
              </adapt>
             </or>
     	</possibleChildren>
          <actionProvider
                class="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.RepositoryActionProvider">
          </actionProvider>
          <commonSorter
                class="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.RepositoryContentSorter">
          </commonSorter>
       </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 (based on the TUFTE template)."
             name="Standard Software Documentation 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="false">
                <test
                      forcePluginActivation="true"
                      property="org.eclipse.mylyn.docs.intent.client.ui.ide.isIntentStructuredElement"
                      value="true">
                </test>
             </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.IntentDocumentPropertyTester"
             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.IsAssociatedToIntentStructuredElementTester"
             id="org.eclipse.mylyn.docs.intent.IntentStructuredElementPropertyTester"
             namespace="org.eclipse.mylyn.docs.intent.client.ui.ide"
             properties="isIntentStructuredElement"
             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>
    <extension
          point="org.eclipse.mylyn.docs.intent.collab.common.repositorymanagercontribution">
       <repositorymanagercontribution
             class="org.eclipse.mylyn.docs.intent.client.ui.ide.repository.IntentProjectBasedRepositoryManagerContribution">
       </repositorymanagercontribution>
    </extension>
   
    <extension
        point="org.eclipse.ui.navigator.linkHelper">
     <linkHelper
           class="org.eclipse.mylyn.docs.intent.client.ui.ide.navigator.IntentLinkHelper"
           id="org.eclipse.mylyn.docs.intent.client.ui.ide.linkhelper">
        <editorInputEnablement>
           <instanceof
                 value="org.eclipse.mylyn.docs.intent.client.ui.editor.IntentEditorInput">
           </instanceof>
        </editorInputEnablement>
        <selectionEnablement>
                 <or>
                    <instanceof
                          value="org.eclipse.core.resources.IProject">
                    </instanceof>
                    <instanceof
                          value="org.eclipse.mylyn.docs.intent.core.indexer.IntentIndexEntry">
                    </instanceof>
                 </or>
        </selectionEnablement>
     </linkHelper>
  </extension>
     <extension
        point="org.eclipse.ui.navigator.viewer">
     <viewerContentBinding
           viewerId="org.eclipse.ui.navigator.ProjectExplorer">
        <includes>
           <contentExtension
                 pattern="org.eclipse.mylyn.docs.intent.client.ui.ide.*">
           </contentExtension>
        </includes>
     </viewerContentBinding>
     <viewerContentBinding
           viewerId="fr.obeo.dsl.viewpoint.ui.tools.views.model.explorer">
        <includes>
           <contentExtension
                 pattern="org.eclipse.mylyn.docs.intent.client.ui.ide.*">
           </contentExtension>
        </includes>
     </viewerContentBinding>
  </extension>

</plugin>
