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

<plugin>

    <extension
            point="org.eclipse.ui.editors">
        <editor
              class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
              contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
              default="true"
              extensions="functionlibrary"
              icon="icons/dsl_functionlibrary.png"
              id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
              matchingStrategy="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.editor.JavaEditorInputMatcher"
              name="OSBP FunctionLibraryDsl Editor">
        </editor>
    </extension>
    <extension
        point="org.eclipse.ui.handlers">
        <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
            commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
            <activeWhen>
                <reference
                    definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                </reference>
            </activeWhen>
        </handler>
        <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
            commandId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.validate">
         <activeWhen>
            <reference
                    definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
            </reference>
         </activeWhen>
      	</handler>
      	<!-- copy qualified name -->
        <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedNameHandler"
            commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName">
            <activeWhen>
				<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened" />
            </activeWhen>
        </handler>
        <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedNameHandler"
            commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName">
            <activeWhen>
            	<and>
            		<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.XtextEditor.opened" />
	                <iterate>
						<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
					</iterate>
				</and>
            </activeWhen>
        </handler>
    </extension>
    <extension point="org.eclipse.core.expressions.definitions">
        <definition id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
            <and>
                <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
                <with variable="activeEditor">
                    <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" 
                        value="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl" 
                        forcePluginActivation="true"/>
                </with>        
            </and>
        </definition>
        <definition id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.XtextEditor.opened">
            <and>
                <reference definitionId="isXtextEditorActive"/>
                <with variable="activeEditor">
                    <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" 
                        value="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl" 
                        forcePluginActivation="true"/>
                </with>        
            </and>
        </definition>
    </extension>
    <extension
            point="org.eclipse.ui.preferencePages">
        <page
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            icon="icons/dsl_functionlibrary.png"
            name="OSBP FunctionLibraryDsl">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
        </page>
        <page
            category="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.coloring"
            icon="icons/dsl_functionlibrary.png"
            name="Syntax Coloring">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
        </page>
        <page
            category="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.templates"
            icon="icons/dsl_functionlibrary.png"
            name="Templates">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
        </page>
    </extension>
    <extension
            point="org.eclipse.ui.propertyPages">
        <page
              class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
              icon="icons/dsl_functionlibrary.png"
              id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
              name="OSBP FunctionLibraryDsl">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
            <enabledWhen>
	            <adapt type="org.eclipse.core.resources.IProject"/>
			</enabledWhen>
	        <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
        </page>
    </extension>
    <extension
        point="org.eclipse.ui.keywords">
        <keyword
            id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"
            label="OSBP FunctionLibraryDsl"/>
    </extension>
    <extension
         point="org.eclipse.ui.commands">
      <command
            description="Trigger expensive validation"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.validate"
            name="Validate">
      </command>
      <!-- copy qualified name -->
      <command
            id="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
            categoryId="org.eclipse.ui.category.edit"
            description="Copy the qualified name for the selected element"
            name="Copy Qualified Name">
      </command>
      <command
            id="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName"
            categoryId="org.eclipse.ui.category.edit"
            description="Copy the qualified name for the selected element"
            name="Copy Qualified Name">
      </command>
    </extension>
    <extension point="org.eclipse.ui.menus">
        <menuContribution
            locationURI="popup:#TextEditorContext?after=group.edit">
             <command
                 commandId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.validate"
                 style="push"
                 tooltip="Trigger expensive validation">
            <visibleWhen checkEnabled="false">
                <reference
                    definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                </reference>
            </visibleWhen>
         </command>  
         </menuContribution>
         <!-- copy qualified name -->
         <menuContribution locationURI="popup:#TextEditorContext?after=copy">
         	<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName" 
         		style="push" tooltip="Copy Qualified Name">
            	<visibleWhen checkEnabled="false">
                	<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened" />
            	</visibleWhen>
         	</command>  
         </menuContribution>
         <menuContribution locationURI="menu:edit?after=copy">
         	<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.EditorCopyQualifiedName"
            	style="push" tooltip="Copy Qualified Name">
            	<visibleWhen checkEnabled="false">
                	<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened" />
            	</visibleWhen>
         	</command>  
         </menuContribution>
         <menuContribution locationURI="popup:org.eclipse.xtext.ui.outline?after=additions">
			<command commandId="org.eclipse.xtext.ui.editor.copyqualifiedname.OutlineCopyQualifiedName" 
				style="push" tooltip="Copy Qualified Name">
         		<visibleWhen checkEnabled="false">
	            	<and>
	            		<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.XtextEditor.opened" />
						<iterate>
							<adapt type="org.eclipse.xtext.ui.editor.outline.IOutlineNode" />
						</iterate>
					</and>
				</visibleWhen>
			</command>
         </menuContribution>
    </extension>
    <extension point="org.eclipse.ui.menus">
		<menuContribution locationURI="popup:#TextEditorContext?endof=group.find">
			<command commandId="org.eclipse.xtext.ui.editor.FindReferences">
				<visibleWhen checkEnabled="false">
                	<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                	</reference>
            	</visibleWhen>
			</command>
		</menuContribution>
	</extension>
	<extension point="org.eclipse.ui.handlers">
	    <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
            commandId="org.eclipse.xtext.ui.editor.FindReferences">
            <activeWhen>
                <reference
                    definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                </reference>
            </activeWhen>
        </handler>
    </extension>   

<!-- adding resource factories -->

	<extension
		point="org.eclipse.emf.ecore.extension_parser">
		<parser
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
			type="functionlibrary">
		</parser>
	</extension>
	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
        <resourceServiceProvider
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
            uriExtension="functionlibrary">
        </resourceServiceProvider>
    </extension>


	<!-- marker definitions for org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl -->
	<extension
	        id="functionlibrarydsl.check.fast"
	        name="OSBP FunctionLibraryDsl Problem"
	        point="org.eclipse.core.resources.markers">
	    <super type="org.eclipse.xtext.ui.check.fast"/>
	    <persistent value="true"/>
	</extension>
	<extension
	        id="functionlibrarydsl.check.normal"
	        name="OSBP FunctionLibraryDsl Problem"
	        point="org.eclipse.core.resources.markers">
	    <super type="org.eclipse.xtext.ui.check.normal"/>
	    <persistent value="true"/>
	</extension>
	<extension
	        id="functionlibrarydsl.check.expensive"
	        name="OSBP FunctionLibraryDsl Problem"
	        point="org.eclipse.core.resources.markers">
	    <super type="org.eclipse.xtext.ui.check.expensive"/>
	    <persistent value="true"/>
	</extension>

   <extension
         point="org.eclipse.xtext.builder.participant">
      <participant
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant">
      </participant>
   </extension>
   <extension
            point="org.eclipse.ui.preferencePages">
        <page
            category="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.compiler.preferencePage"
            icon="icons/dsl_functionlibrary.png"
            name="Compiler">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
        </page>
    </extension>
    <extension
            point="org.eclipse.ui.propertyPages">
        <page
              category="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
              class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
              icon="icons/dsl_functionlibrary.png"
              id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.compiler.propertyPage"
              name="Compiler">
            <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
            <enabledWhen>
	            <adapt type="org.eclipse.core.resources.IProject"/>
			</enabledWhen>
	        <filter name="projectNature" value="org.eclipse.xtext.ui.shared.xtextNature"/>
        </page>
    </extension>

	<!-- Quick Outline -->
	<extension
		point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
			commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
	</extension>
	<extension
		point="org.eclipse.ui.commands">
		<command
			description="Open the quick outline."
			id="org.eclipse.xtext.ui.editor.outline.QuickOutline"
			name="Quick Outline">
		</command>
	</extension>
	<extension point="org.eclipse.ui.menus">
		<menuContribution
			locationURI="popup:#TextEditorContext?after=group.open">
			<command commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline"
				style="push"
				tooltip="Open Quick Outline">
				<visibleWhen checkEnabled="false">
					<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened"/>
				</visibleWhen>
			</command>
		</menuContribution>
	</extension>
    <!-- quickfix marker resolution generator for org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl -->
    <extension
            point="org.eclipse.ui.ide.markerResolution">
        <markerResolutionGenerator
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.osbp.xtext.functionlibrarydsl.ui.functionlibrarydsl.check.fast">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
        <markerResolutionGenerator
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.osbp.xtext.functionlibrarydsl.ui.functionlibrarydsl.check.normal">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
        <markerResolutionGenerator
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.osbp.xtext.functionlibrarydsl.ui.functionlibrarydsl.check.expensive">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
    </extension>
   	<!-- Rename Refactoring -->
	<extension point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.DefaultRenameElementHandler"
			commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
	</extension>
    <extension point="org.eclipse.ui.menus">
         <menuContribution
            locationURI="popup:#TextEditorContext?after=group.edit">
         <command commandId="org.eclipse.xtext.ui.refactoring.RenameElement"
               style="push">
            <visibleWhen checkEnabled="false">
               <reference
                     definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
               </reference>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension point="org.eclipse.ui.preferencePages">
	    <page
	        category="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
	        class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
	        id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.refactoring"
            icon="icons/dsl_functionlibrary.png"
	        name="Refactoring">
	        <keywordReference id="org.eclipse.osbp.xtext.functionlibrarydsl.ui.keyword_FunctionLibraryDsl"/>
	    </page>
	</extension>

<!-- Type Hierarchy  -->
	<extension
		point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.hierarchy.OpenTypeHierarchyHandler"
			commandId="org.eclipse.xtext.xbase.ui.hierarchy.OpenTypeHierarchy">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.hierarchy.QuickTypeHierarchyHandler"
			commandId="org.eclipse.jdt.ui.edit.text.java.open.hierarchy">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
	</extension>
	<extension point="org.eclipse.ui.menus">
		<menuContribution
			locationURI="popup:#TextEditorContext?after=group.open">
			<command commandId="org.eclipse.xtext.xbase.ui.hierarchy.OpenTypeHierarchy"
				style="push"
				tooltip="Open Type Hierarchy">
				<visibleWhen checkEnabled="false">
					<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened"/>
				</visibleWhen>
			</command>
		</menuContribution>
		<menuContribution
			locationURI="popup:#TextEditorContext?after=group.open">
			<command commandId="org.eclipse.jdt.ui.edit.text.java.open.hierarchy"
				style="push"
				tooltip="Quick Type Hierarchy">
				<visibleWhen checkEnabled="false">
					<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened"/>
				</visibleWhen>
			</command>
		</menuContribution>
	</extension>
	<!-- Call Hierachy -->
	<extension
		point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.hierarchy.OpenCallHierachyHandler"
			commandId="org.eclipse.xtext.xbase.ui.hierarchy.OpenCallHierarchy">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
	</extension>
	
	<extension point="org.eclipse.ui.menus">
		<menuContribution
			locationURI="popup:#TextEditorContext?after=group.open">
			<command commandId="org.eclipse.xtext.xbase.ui.hierarchy.OpenCallHierarchy"
				style="push"
				tooltip="Open Call Hierarchy">
				<visibleWhen checkEnabled="false">
					<reference definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened"/>
				</visibleWhen>
			</command>
		</menuContribution>
	</extension>
	<extension
         point="org.eclipse.core.runtime.adapters">
      <factory class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.builder.smap.StratumBreakpointAdapterFactory"
         adaptableType="org.eclipse.xtext.ui.editor.XtextEditor">
         <adapter type="org.eclipse.debug.ui.actions.IToggleBreakpointsTarget"/>
      </factory> 
   </extension>
   <extension point="org.eclipse.ui.editorActions">
      <editorContribution targetID="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl" 
                          id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.ide.rulerActions">
	     <action
	             label="Not Used"
	             class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
	             style="push"
	             actionID="RulerDoubleClick"
	             id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.doubleClickBreakpointAction"/>
	  </editorContribution>
   </extension>
   <extension point="org.eclipse.ui.popupMenus">
      <viewerContribution
         targetID="example.rulerContextMenuId"
         id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.ide.RulerPopupActions">
         <action
            label="Toggle Breakpoint"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
            menubarPath="additions"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.ide.rulerContextMenu.toggleBreakpointAction">
         </action>
      </viewerContribution>
   </extension>
   
    <!-- Introduce Local Variable Refactoring -->
	<extension point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.refactoring.ExtractVariableHandler"
			commandId="org.eclipse.xtext.xbase.ui.refactoring.ExtractLocalVariable">
			<activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
		</handler>
	</extension>
    <extension point="org.eclipse.ui.menus">
         <menuContribution
            locationURI="popup:#TextEditorContext?after=group.edit">
         <command commandId="org.eclipse.xtext.xbase.ui.refactoring.ExtractLocalVariable"
               style="push">
            <visibleWhen checkEnabled="false">
               <reference
                     definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
               </reference>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>  

  <extension point="org.eclipse.compare.contentViewers">
    <viewer id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.compare.contentViewers"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
            extensions="functionlibrary">
    </viewer>
  </extension>
  <extension point="org.eclipse.compare.contentMergeViewers">
    <viewer id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.compare.contentMergeViewers"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
            extensions="functionlibrary" label="FunctionLibraryDsl Compare">
     </viewer>
  </extension>
  <extension point="org.eclipse.ui.editors.documentProviders">
    <provider id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.editors.documentProviders"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
            extensions="functionlibrary">
    </provider>
  </extension>
    <!-- Organize imports  -->
    <extension
        point="org.eclipse.ui.handlers">
        <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.osbp.xtext.oxtype.ui.imports.OXTypeOrganizeImportsHandler"
            commandId="org.eclipse.xtext.xbase.ui.organizeImports">
               <activeWhen>
                <reference
                    definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                </reference>
            </activeWhen>
        </handler>
    </extension>

 <extension point="org.eclipse.ui.menus">
        <menuContribution
            locationURI="menu:#xtext.ui.SourceMenu?after=xtext.ui.ImportsSeparator">
             <command
                 commandId="org.eclipse.xtext.xbase.ui.organizeImports"
                 style="push"
                 tooltip="Organize Imports">
                <visibleWhen checkEnabled="false">
                    <reference
                        definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
                    </reference>
                </visibleWhen>
            </command>  
        </menuContribution>
    </extension>

</plugin>
