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

<plugin>

    <extension
            point="org.eclipse.ui.editors">
        <editor
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.XtextEditor"
            contributorClass="org.eclipse.ui.editors.text.TextEditorActionContributor"
            default="true"
            extensions="statemachine"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            name="Statemachine Editor">
        </editor>
    </extension>
    <extension
        point="org.eclipse.ui.handlers">
        <handler
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclarationHandler"
            commandId="org.eclipse.xtext.ui.editor.hyperlinking.OpenDeclaration">
            <activeWhen>
                <reference
                    definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.Editor.opened">
                </reference>
            </activeWhen>
        </handler>
        <handler
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.handler.ValidateActionHandler"
            commandId="org.eclipse.xtext.example.fowlerdsl.Statemachine.validate">
         <activeWhen>
            <reference
                    definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.Editor.opened">
            </reference>
         </activeWhen>
      </handler>
    </extension>
    <extension point="org.eclipse.core.expressions.definitions">
        <definition id="org.eclipse.xtext.example.fowlerdsl.Statemachine.Editor.opened">
            <and>
                <reference definitionId="isActiveEditorAnInstanceOfXtextEditor"/>
                <with variable="activeEditor">
                    <test property="org.eclipse.xtext.ui.editor.XtextEditor.languageName" 
                        value="org.eclipse.xtext.example.fowlerdsl.Statemachine" 
                        forcePluginActivation="true"/>
                </with>        
            </and>
        </definition>
    </extension>
    <extension
            point="org.eclipse.ui.preferencePages">
        <page
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            name="Statemachine">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
        </page>
        <page
            category="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.syntaxcoloring.SyntaxColoringPreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine.coloring"
            name="Syntax Coloring">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
        </page>
        <page
            category="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.templates.XtextTemplatePreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine.templates"
            name="Templates">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
        </page>
    </extension>
    <extension
            point="org.eclipse.ui.propertyPages">
        <page
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.preferences.LanguageRootPreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            name="Statemachine">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
            <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.xtext.example.fowlerdsl.ui.keyword_Statemachine"
            label="Statemachine"/>
    </extension>
    <extension
         point="org.eclipse.ui.commands">
      <command
            description="Trigger expensive validation"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine.validate"
            name="Validate">
      </command>
    </extension>
    <extension point="org.eclipse.ui.menus">
        <menuContribution
            locationURI="popup:#TextEditorContext?after=group.edit">
             <command
                 commandId="org.eclipse.xtext.example.fowlerdsl.Statemachine.validate"
                 style="push"
                 tooltip="Trigger expensive validation">
            <visibleWhen checkEnabled="false">
                <reference
                    definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.Editor.opened">
                </reference>
            </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.xtext.example.fowlerdsl.Statemachine.Editor.opened">
                	</reference>
            	</visibleWhen>
			</command>
		</menuContribution>
	</extension>
	<extension point="org.eclipse.ui.handlers">
	    <handler
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.findrefs.FindReferencesHandler"
            commandId="org.eclipse.xtext.ui.editor.FindReferences">
            <activeWhen>
                <reference
                    definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.Editor.opened">
                </reference>
            </activeWhen>
        </handler>
    </extension>   

<!-- adding resource factories -->

	<extension
		point="org.eclipse.emf.ecore.extension_parser">
		<parser
			class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.resource.IResourceFactory"
			type="statemachine">
		</parser>
	</extension>
	<extension point="org.eclipse.xtext.extension_resourceServiceProvider">
        <resourceServiceProvider
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.resource.IResourceUIServiceProvider"
            uriExtension="statemachine">
        </resourceServiceProvider>
    </extension>


    <!-- marker definitions for org.eclipse.xtext.example.fowlerdsl.Statemachine -->
    <extension
            id="statemachine.check.fast"
            name="Statemachine Problem"
            point="org.eclipse.core.resources.markers">
        <super type="org.eclipse.xtext.ui.check.fast"/>
        <persistent value="true"/>
    </extension>
    <extension
            id="statemachine.check.normal"
            name="Statemachine Problem"
            point="org.eclipse.core.resources.markers">
        <super type="org.eclipse.xtext.ui.check.normal"/>
        <persistent value="true"/>
    </extension>
    <extension
            id="statemachine.check.expensive"
            name="Statemachine 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.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.builder.IXtextBuilderParticipant">
      </participant>
   </extension>
   <extension
            point="org.eclipse.ui.preferencePages">
        <page
            category="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine.compiler.preferencePage"
            name="Compiler">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
        </page>
    </extension>
    <extension
            point="org.eclipse.ui.propertyPages">
        <page
            category="org.eclipse.xtext.example.fowlerdsl.Statemachine"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.builder.preferences.BuilderPreferencePage"
            id="org.eclipse.xtext.example.fowlerdsl.Statemachine.compiler.propertyPage"
            name="Compiler">
            <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
            <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.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.outline.quickoutline.ShowQuickOutlineActionHandler"
			commandId="org.eclipse.xtext.ui.editor.outline.QuickOutline">
			<activeWhen>
				<reference
					definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.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.xtext.example.fowlerdsl.Statemachine.Editor.opened"/>
				</visibleWhen>
			</command>
		</menuContribution>
	</extension>
    <!-- quickfix marker resolution generator for org.eclipse.xtext.example.fowlerdsl.Statemachine -->
    <extension
            point="org.eclipse.ui.ide.markerResolution">
        <markerResolutionGenerator
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.xtext.example.fowlerdsl.ui.statemachine.check.fast">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
        <markerResolutionGenerator
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.xtext.example.fowlerdsl.ui.statemachine.check.normal">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
        <markerResolutionGenerator
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.quickfix.MarkerResolutionGenerator"
            markerType="org.eclipse.xtext.example.fowlerdsl.ui.statemachine.check.expensive">
            <attribute
                name="FIXABLE_KEY"
                value="true">
            </attribute>
        </markerResolutionGenerator>
    </extension>
   	<!-- Rename Refactoring -->
	<extension point="org.eclipse.ui.handlers">
		<handler 
			class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.IRenameElementHandler"
			commandId="org.eclipse.xtext.ui.refactoring.RenameElement">
			<activeWhen>
				<reference
					definitionId="org.eclipse.xtext.example.fowlerdsl.Statemachine.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.xtext.example.fowlerdsl.Statemachine.Editor.opened">
               </reference>
            </visibleWhen>
         </command>
      </menuContribution>
   </extension>
   <extension point="org.eclipse.ui.preferencePages">
	    <page
	        category="org.eclipse.xtext.example.fowlerdsl.Statemachine"
	        class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.refactoring.ui.RefactoringPreferencePage"
	        id="org.eclipse.xtext.example.fowlerdsl.Statemachine.refactoring"
	        name="Refactoring">
	        <keywordReference id="org.eclipse.xtext.example.fowlerdsl.ui.keyword_Statemachine"/>
	    </page>
	</extension>

  <extension point="org.eclipse.compare.contentViewers">
    <viewer id="org.eclipse.xtext.example.fowlerdsl.Statemachine.compare.contentViewers"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
            extensions="statemachine">
    </viewer>
  </extension>
  <extension point="org.eclipse.compare.contentMergeViewers">
    <viewer id="org.eclipse.xtext.example.fowlerdsl.Statemachine.compare.contentMergeViewers"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.compare.InjectableViewerCreator"
            extensions="statemachine" label="Statemachine Compare">
     </viewer>
  </extension>
  <extension point="org.eclipse.ui.editors.documentProviders">
    <provider id="org.eclipse.xtext.example.fowlerdsl.Statemachine.editors.documentProviders"
            class="org.eclipse.xtext.example.fowlerdsl.ui.StatemachineExecutableExtensionFactory:org.eclipse.xtext.ui.editor.model.XtextDocumentProvider"
            extensions="statemachine">
    </provider>
  </extension>

</plugin>
