<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin>
     <extension-point id="DiscoveryProfilePage" name="%DiscoveryProfilePage.name" schema="schema/DiscoveryProfilePage.exsd"/>

   <extension
         point="org.eclipse.ui.popupMenus">
      <objectContribution
            objectClass="org.eclipse.core.resources.IResource"
            adaptable="true"
            id="org.eclipse.cdt.make.ui.popupMenu.NavigatorContribution">
         <action
               label="%LastTargetBuild.name"
               class="org.eclipse.cdt.make.ui.actions.BuildLastTargetAction"
               menubarPath="org.eclipse.cdt.make.ui.menu/gm1"
               id="org.eclipse.cdt.make.ui.NavigatorBuildLastTargetAction"
               enablesFor="1"
               definitionId="org.eclipse.cdt.make.ui.targetBuildLastCommand">
         </action>   
         <action
               label="%ActionMakeBuildTarget.label"
               class="org.eclipse.cdt.make.ui.actions.BuildTargetAction"
               menubarPath="org.eclipse.cdt.make.ui.menu/gm1"
               enablesFor="1"
               id="org.eclipse.cdt.make.ui.NavigatorBuildTargetAction">
         </action>
         <action
               label="%ActionMakeCreateTarget.label"
               class="org.eclipse.cdt.make.ui.actions.CreateTargetAction"
               menubarPath="org.eclipse.cdt.make.ui.menu/gm1"
               enablesFor="1"
               id="org.eclipse.cdt.make.ui.CViewCreateTargetAction">
         </action>
         <menu
               id="org.eclipse.cdt.make.ui.menu"
               label="%Make.targets.menu"
               path="buildGroup">
            <groupMarker
                  name="gm1">
            </groupMarker>
         </menu>
         <visibility>
            <or>
              <objectState
                 name="projectNature"
                 value="org.eclipse.cdt.managedbuilder.core.managedBuildNature"/>
              <objectState
                 name="projectNature"
                 value="org.eclipse.cdt.make.core.makeNature"/>
            </or>
         </visibility>
      </objectContribution>
      <viewerContribution
            targetID="#MakefileRulerContext"
            id="org.eclipse.cdt.ui.editor.MakefileEditorRulerPopupActions">
         <action
               label="%AddTask.label"
               helpContextId="org.eclipse.ui.AddTask_action_context"
               class="org.eclipse.ui.texteditor.TaskRulerAction"
               tooltip="%AddTask.tooltip"
               menubarPath="add"
               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="add"
               id="org.eclipse.ui.texteditor.BookmarkRulerAction">
         </action>
      </viewerContribution>
   </extension>
   <extension
   		 point="org.eclipse.ui.contexts">
   	   <context
   	  		name="%scope.makefileEditor.name"
            parentId="org.eclipse.ui.textEditorScope"
            description="%makefileEditor.description"
            id="org.eclipse.cdt.make.ui.makefileEditorScope">
       </context>
   </extension>
   <extension
   		 point="org.eclipse.ui.bindings">
     <!-- Makefile Editor keybindings  -->
     <key
            sequence="F3"
            contextId="org.eclipse.cdt.make.ui.makefileEditorScope"
            commandId="org.eclipse.cdt.make.ui.edit.text.makefile.opendecl"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>   
      <key
            sequence="Ctrl+/"
            contextId="org.eclipse.cdt.make.ui.makefileEditorScope"
            commandId="org.eclipse.cdt.make.ui.edit.text.makefile.comment"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>  
      <key
            sequence="Ctrl+\"
            contextId="org.eclipse.cdt.make.ui.makefileEditorScope"
            commandId="org.eclipse.cdt.make.ui.edit.text.makefile.uncomment"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>
      <key
            sequence="Shift+F9"
            contextId="org.eclipse.ui.contexts.window"
            commandId="org.eclipse.cdt.make.ui.targetBuildCommand"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>             
      <key
            sequence="F9"
            contextId="org.eclipse.ui.contexts.window"
            commandId="org.eclipse.cdt.make.ui.targetBuildLastCommand"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"/>             
   </extension>
   <extension
      point="org.eclipse.ui.commands">
      <command
            name="%CommandTargetBuild.name"
            defaultHandler="org.eclipse.cdt.make.ui.actions.BuildTargetHandler"
            description="%CommandTargetBuild.description"
            categoryId="org.eclipse.ui.category.project"
            id="org.eclipse.cdt.make.ui.targetBuildCommand">
      </command>
      <command
            categoryId="org.eclipse.ui.category.project"
            defaultHandler="org.eclipse.cdt.make.ui.actions.BuildLastTargetHandler"
            description="%LastTargetBuild.description"
            id="org.eclipse.cdt.make.ui.targetBuildLastCommand"
            name="%LastTargetBuild.name">
      </command>  
      <command
            name="%CommandTargetCreate.name"
            description="%CommandTargetCreate.description"
            categoryId="org.eclipse.ui.category.project"
            id="org.eclipse.cdt.make.ui.targetCreateCommand">
      </command>
      <category
            name="%category.source.name"
            description="%category.source.description"
            id="org.eclipse.cdt.make.ui.category.source">
      </category>
      <command
            name="%ActionDefinition.comment.name"
            description="%ActionDefinition.comment.description"
            categoryId="org.eclipse.cdt.make.ui.category.source"
            id="org.eclipse.cdt.make.ui.edit.text.makefile.comment">
      </command>
      <command
            name="%ActionDefinition.uncomment.name"
            description="%ActionDefinition.uncomment.description"
            categoryId="org.eclipse.cdt.make.ui.category.source"
            id="org.eclipse.cdt.make.ui.edit.text.makefile.uncomment">
      </command>
      <command
            name="%ActionDefinition.opendecl.name"
            categoryId="org.eclipse.cdt.make.ui.category.source"
            description="%ActionDefinition.opendecl.description"
            id="org.eclipse.cdt.make.ui.edit.text.makefile.opendecl">
      </command> 
   </extension>
   <extension
         point="org.eclipse.ui.preferencePages">
      <page
            name="%PreferenceBuildSettings.name"
            category="org.eclipse.cdt.ui.preferences.BuildSettings"
            class="org.eclipse.cdt.make.internal.ui.preferences.BuildSettingsPreferencePage"
            id="org.eclipse.cdt.ui.preferences.BuildSettingProperties">
      </page>
      <page
            name="%PreferenceMake.name"
            category="org.eclipse.cdt.ui.preferences.BuildSettings"
            class="org.eclipse.cdt.make.internal.ui.preferences.MakePreferencePage"
            id="org.eclipse.cdt.make.ui.preferences.MakePreferencePage">
      </page>
      <page
            name="%PreferenceMakefileEditor.name"
            category="org.eclipse.cdt.ui.preferences.BuildSettings"
            class="org.eclipse.cdt.make.internal.ui.preferences.MakefileEditorPreferencePage"
            id="org.eclipse.cdt.make.ui.preferences.MakeFileEditorPreferencePage">
      </page>
      <page
            name="%PreferenceMakefileSettings.name"
            category="org.eclipse.cdt.make.ui.preferences.MakeFileEditorPreferencePage"
            class="org.eclipse.cdt.make.internal.ui.preferences.MakefileSettingsPreferencePage"
            id="org.eclipse.cdt.make.ui.preferences.MakefileSettingPreferencePage">
      </page>
   </extension>
   <extension
         point="org.eclipse.ui.propertyPages">
      <page
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            name="%PropertyMakeProject.name"
            class="org.eclipse.cdt.make.internal.ui.properties.MakePropertyPage"
            id="org.eclipse.cdt.make.ui.properties.MakePropertyPage">
         <filter
               name="nature"
               value="org.eclipse.cdt.make.core.makeNature">
         </filter>
      </page>
      <page
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            name="%ProjectPathProperties.name"
            nameFilter="*"
            class="org.eclipse.cdt.internal.ui.dialogs.cpaths.CPathPropertyPage"
            id="org.eclipse.cdt.internal.ui.dialogs.cpath.CPathPropertyPage">
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.makeNature">
         </filter>
      </page> 
      <!--page
            objectClass="org.eclipse.cdt.core.model.ICContainer"
            name="%IncludeSymbolProperties.name"
            class="org.eclipse.cdt.internal.ui.dialogs.cpaths.IncludesSymbolsPropertyPage"
            id="org.eclipse.cdt.internal.ui.dialogs.cpath.IncludeSymbolsPropertyPage">
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.makeNature">
         </filter>
      </page>
      <page
            objectClass="org.eclipse.cdt.core.model.ITranslationUnit"
            name="%IncludeSymbolProperties.name"
            class="org.eclipse.cdt.internal.ui.dialogs.cpaths.IncludesSymbolsPropertyPage"
            id="org.eclipse.cdt.internal.ui.dialogs.cpath.IncludeSymbolsPropertyPage">
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.makeNature">
         </filter>
      </page-->
      <page
            objectClass="org.eclipse.core.resources.IProject"
            adaptable="true"
            name="%IncludeSymbolProperties.name"
            class="org.eclipse.cdt.internal.ui.dialogs.cpaths.IncludesSymbolsPropertyPage"
            id="org.eclipse.cdt.internal.ui.dialogs.cpath.IncludeSymbolsPropertyPage">
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.makeNature">
         </filter>
      </page>
      <page
            adaptable="true"
            class="org.eclipse.cdt.internal.ui.dialogs.cpaths.IncludesSymbolsPropertyPage"
            id="org.eclipse.cdt.make.ui.scannerconfig.PerFileIncludesSymbolsPropertyPage"
            name="%IncludeSymbolProperties.name"
            objectClass="org.eclipse.cdt.core.model.ITranslationUnit">
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.makeNature"/>
      </page>
        
   </extension>
   <extension
         point="org.eclipse.ui.views">
      <category
            name="%ViewCatagoryMake.name"
            id="org.eclipse.cdt.make.ui">
      </category>
      <view
            name="%Make.Target.label"
            icon="icons/view16/make_target.gif"
            category="org.eclipse.cdt.make.ui"
            class="org.eclipse.cdt.make.ui.views.MakeView"
            id="org.eclipse.cdt.make.ui.views.MakeView">
      </view>
   </extension>
   <extension
         point="org.eclipse.ui.actionSets">
      <actionSet
            label="%ActionSetUpdateMake.label"
            id="org.eclipse.cdt.make.ui.updateActionSet">
         <action
               label="%ActionMakeUpdate.label"
               icon="icons/etool16/update_old.gif"
               tooltip="%ActionMakeUpdate.tooltip"
               class="org.eclipse.cdt.make.ui.actions.UpdateMakeProjectAction"
               toolbarPath="Normal"
               id="org.eclipse.cdt.make.ui.UpdateMakeAction">
            <enablement>
               <and>
                  <not>
                     <objectState
                           value="org.eclipse.cdt.make.core.makeNature"
                           name="projectNature">
                     </objectState>
                  </not>
                  <objectState
                        value="org.eclipse.cdt.core.cnature"
                        name="projectNature">
                  </objectState>
               </and>
            </enablement>
         </action>
      </actionSet>
      <actionSet
            label="%ActionSetMake.label"
            id="org.eclipse.cdt.make.ui.makeTargetActionSet">
            <menu
               id="org.eclipse.cdt.make.ui.prjmenu"
               label="%Make.Target.label"
               path="project/additions">
               <groupMarker
                  name="gm1">
               </groupMarker>
            </menu>   
            <action
               label="%LastTargetBuild.name"
               class="org.eclipse.cdt.make.ui.actions.BuildLastTargetAction"
               menubarPath="project/org.eclipse.cdt.make.ui.prjmenu/gm1"
               enablesFor="1"
               id="org.eclipse.cdt.make.ui.actions.buildLastTargetAction">
               <enablement>
               <or>
                  <objectClass
                        name="org.eclipse.core.resources.IContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.core.resources.IFile">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICProject">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.make.core.IMakeTarget">
                  </objectClass>
               </or>
            </enablement>
         </action>  
            <action
               label="%ActionMakeBuildTarget.label"
               class="org.eclipse.cdt.make.ui.actions.BuildTargetAction"
               menubarPath="project/org.eclipse.cdt.make.ui.prjmenu/gm1"
               enablesFor="1"
               id="org.eclipse.cdt.make.ui.makeTargetAction">
            <enablement>
               <or>
                  <objectClass
                        name="org.eclipse.core.resources.IContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.core.resources.IFile">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICProject">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.make.core.IMakeTarget">
                  </objectClass>
               </or>
            </enablement>
         </action>
         <action
               definitionId="org.eclipse.cdt.make.ui.targetCreateCommand"
               label="%ActionMakeCreateTarget.label"
               class="org.eclipse.cdt.make.ui.actions.CreateTargetAction"
               menubarPath="project/org.eclipse.cdt.make.ui.prjmenu/gm1"
               enablesFor="1"
               id="org.eclipse.cdt.make.ui.createTargetAction">
            <enablement>
               <or>
                  <objectClass
                        name="org.eclipse.core.resources.IContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICContainer">
                  </objectClass>
                  <objectClass
                        name="org.eclipse.cdt.core.model.ICProject">
                  </objectClass>
               </or>
            </enablement>
         </action>
      </actionSet>
   </extension>
   
   <!-- Makefile Editor extensions.  -->
   <extension point="org.eclipse.ui.editors">
      <editor
            name="%MakefileEditor.name"
            icon="icons/etool16/makefile.gif"
            contributorClass="org.eclipse.cdt.make.internal.ui.editor.MakefileEditorActionContributor"
            class="org.eclipse.cdt.make.internal.ui.editor.MakefileEditor"
            id="org.eclipse.cdt.make.editor">
            <contentTypeBinding contentTypeId="org.eclipse.cdt.make.core.makefile"/>
      </editor>
   </extension>
   <extension point="org.eclipse.core.filebuffers.documentSetup">
      <participant
            contentTypeId="org.eclipse.cdt.make.core.makefile"
            class="org.eclipse.cdt.make.internal.ui.editor.MakefileDocumentSetupParticipant">
      </participant>
   </extension>
    
   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.eclipse.cdt.ui.CPerspective">
         <view
               relative="org.eclipse.ui.views.ContentOutline"
               visible="true"
               relationship="stack"
               id="org.eclipse.cdt.make.ui.views.MakeView">
         </view>
         <viewShortcut
               id="org.eclipse.cdt.make.ui.views.MakeView">
         </viewShortcut>
         <actionSet
               id="org.eclipse.cdt.make.ui.makeTargetActionSet">
         </actionSet>
      </perspectiveExtension>
   </extension>


   <extension
         point="org.eclipse.cdt.ui.PathContainerPage">
      <PathContainerPage
            class="org.eclipse.cdt.make.ui.dialogs.DiscoveredPathContainerPage"
            icon="icons/obj16/lib_obj.gif"
            id="org.eclipse.cdt.make.core.DISCOVERED_SCANNER_INFO"
            name="%DiscoveredScannerInfoContainer.name"/>
   </extension>
   <extension
         point="org.eclipse.core.runtime.preferences">
      <initializer class="org.eclipse.cdt.make.internal.ui.MakeUIPreferenceInitializer"/>
   </extension>
   <extension
         point="org.eclipse.cdt.make.ui.DiscoveryProfilePage">
      <profilePage
            class="org.eclipse.cdt.make.ui.dialogs.GCCPerProjectSCDProfilePage"
            name="%GCCPerProjectProfile.name"
            profileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
      <profilePage
            class="org.eclipse.cdt.make.ui.dialogs.GCCPerFileSCDProfilePage"
            name="%GCCPerFileProfile.name"
            profileId="org.eclipse.cdt.make.core.GCCStandardMakePerFileProfile"/>
   </extension>

   <extension
         point="org.eclipse.cdt.ui.cPropertyTab">

<!-- exported from CORE -->           
     <tab
           class="org.eclipse.cdt.ui.newui.IncludeTab"
           name="%Includes"
           icon="icons/obj16/hfolder_obj.gif"
           weight="010"
           helpId="cdt_u_prop_pns_inc"
           parent="org.eclipse.cdt.make.internal.ui.properties.PathAndSymbolPage"
           tooltip="%Includes.tooltip"/>
     <tab
           class="org.eclipse.cdt.ui.newui.SymbolTab"
           name="%Symbols"
           icon="icons/obj16/define_obj.gif"
           weight="020"
           helpId="cdt_u_prop_pns_sym"
           parent="org.eclipse.cdt.make.internal.ui.properties.PathAndSymbolPage"
           tooltip="%Symbols.tooltip"/>
     <tab
           class="org.eclipse.cdt.ui.newui.ErrorParsTab"
           helpId="cdt_u_prop_build_setting_errparser"
           icon="icons/obj16/error_obj.gif"
           name="%ErrorParsersTab.name"
           parent="org.eclipse.cdt.make.internal.ui.preferences.BuildSettingsPreferencePage"
           tooltip="%ErrorParsersTab.tooltip"
           weight="020">
     </tab>
     <tab
           class="org.eclipse.cdt.internal.ui.language.settings.providers.LanguageSettingsProviderTab"
           icon="icons/obj16/search.gif"
           name="%LanguageSettingsProvidersTab.name"
           parent="org.eclipse.cdt.make.internal.ui.preferences.BuildSettingsPreferencePage"
           tooltip="%LanguageSettingsProvidersTab.tooltip"
           helpId="cdt_u_pref_build_scanner_discovery"
           weight="040">
     </tab>
   </extension>

     <extension
         point="org.eclipse.ui.propertyPages">
    
      <page
            class="org.eclipse.cdt.make.internal.ui.properties.PathAndSymbolPage"
            id="org.eclipse.cdt.make.ui.propertypages.project.ref12"
            name="%CDTPathSymbolsProperty.name"
            >
         <filter
               name="projectNature"
               value="org.eclipse.cdt.make.core.cfgSupportNature">
         </filter>
         <enabledWhen>
            <or>
		     <instanceof value="org.eclipse.core.resources.IProject"/>
		     <instanceof value="org.eclipse.cdt.core.model.ICProject"/>
		     
		     <instanceof value="org.eclipse.core.resources.IFolder"/>
		     <instanceof value="org.eclipse.cdt.core.model.ICContainer"/>

		     <and>
	`	         <instanceof value="org.eclipse.core.resources.IFile"/>
    	         <test property="org.eclipse.cdt.ui.isSource"/>
             </and>
             <and>
	         	<instanceof value="org.eclipse.cdt.core.model.ITranslationUnit"/>
    	        <test property="org.eclipse.cdt.ui.isSource"/>
	         </and>	

		    </or>          
         </enabledWhen>
      </page>
      </extension>

<!-- Compare viewer -->
   <extension
         point="org.eclipse.compare.contentMergeViewers">
      <viewer
            class="org.eclipse.cdt.make.internal.ui.compare.MakefileContentViewerCreator"
            extensions="mk2"
            id="org.eclipse.cdt.make.ui.compare.MakefileContentViewerCreator">
      </viewer>
      <contentTypeBinding
			contentTypeId="org.eclipse.cdt.make.core.makefile"
            contentMergeViewerId="org.eclipse.cdt.make.ui.compare.MakefileContentViewerCreator">
	  </contentTypeBinding>
   </extension>
   <!-- compare font -->
   <extension
       point="org.eclipse.ui.themes">
      <fontDefinition
            label="%makeCompareFontDefinition.label"
            defaultsTo="org.eclipse.jface.textfont"
            categoryId="org.eclipse.compare.contentmergeviewer.TextMergeViewer"
            id="org.eclipse.cdt.make.internal.ui.compare.MakefileMergeViewer">
         <description>
            %makeCompareFontDefinition.description
         </description>
      </fontDefinition>
   </extension>
 <extension
       point="org.eclipse.ui.preferenceTransfer">
    <transfer
          icon="icons/etool16/makefile.gif"
          id="org.eclipse.cdt.make.ui.transfer.editor.appearance"
          name="%transfer.MakefileEditorAppearance.name">
       <mapping scope="instance">
          <entry node="org.eclipse.cdt.make.ui">
            <key name="org.eclipse.cdt.make.ui." match="prefix"/>
            <key name="editor_" match="prefix"/>
          </entry>
          <entry node="org.eclipse.cdt.make.core">
            <key name="org.eclipse.cdt.make.core.editor_" match="prefix"/>
          </entry>
       </mapping>
       <description>
          %transfer.MakefileEditorAppearance.description
       </description>
    </transfer>
   </extension>
</plugin>
