<?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"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            matchingStrategy="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.editor.JavaEditorInputMatcher"
            name="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"
            name="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"
            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"
            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"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl"
            name="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="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="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="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="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"
            fileExtensions="functionlibrary"
            >
      </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"
            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"
            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"
	        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>
		<handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.imports.OrganizeImportsHandler"
            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="popup:#TextEditorContext?after=group.edit">
             <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>
		<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.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="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.RulerContext"
         id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.RulerPopupActions">
         <action
            label="Toggle Breakpoint"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.debug.ui.actions.RulerToggleBreakpointActionDelegate"
            menubarPath="debug"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.rulerContextMenu.toggleBreakpointAction">
         </action>
         <action
            label="Not used"
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.debug.ui.actions.RulerEnableDisableBreakpointActionDelegate"
            menubarPath="debug"
            id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.rulerContextMenu.enableDisableBreakpointAction">
         </action>
         <action
           label="Breakpoint Properties"
           helpContextId="breakpoint_properties_action_context"
           class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.jdt.debug.ui.actions.JavaBreakpointPropertiesRulerActionDelegate"
           menubarPath="group.properties"
           id="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.rulerContextMenu.openBreapointPropertiesAction">
         </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>  
   <!-- Open implementation -->
   <extension point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.osbp.xtext.functionlibrarydsl.ui.FunctionLibraryDslExecutableExtensionFactory:org.eclipse.xtext.xbase.ui.navigation.OpenImplementationHandler"
            commandId="org.eclipse.xtext.xbase.ui.OpenImplementationCommand">
            <activeWhen>
				<reference
					definitionId="org.eclipse.osbp.xtext.functionlibrarydsl.FunctionLibraryDsl.Editor.opened">
				</reference>
			</activeWhen>
      </handler>
   </extension>
 <extension point="org.eclipse.ui.menus">
       <menuContribution
            locationURI="menu:navigate?after=open.ext4">
         <command commandId="org.eclipse.xtext.xbase.ui.OpenImplementationCommand">
		<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>

</plugin>
