<?xml version="1.0" encoding="UTF-8"?>
<gmfgen:GenEditorGenerator
    xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:gmfgen="http://www.eclipse.org/gmf/2009/GenModel"
    copyrightText="">
  <diagram
      visualID="1000"
      editPartClassName="ModelEditPart"
      itemSemanticEditPolicyClassName="ModelItemSemanticEditPolicy"
      canonicalEditPolicyClassName="ModelCanonicalEditPolicy"
      iconProviderPriority="Low"
      validationProviderPriority="Low"
      validationEnabled="true"
      validationDecorators="true"
      liveValidationUIFeedback="true">
    <diagramRunTimeClass
        href="platform:/plugin/org.eclipse.gmf.runtime.notation/model/notation.genmodel#//notation/Diagram"/>
    <elementType
        xsi:type="gmfgen:MetamodelType"
        editHelperClassName="ModelEditHelper"/>
    <viewmap
        xsi:type="gmfgen:FigureViewmap"
        figureQualifiedClassName="org.eclipse.draw2d.FreeformLayer"/>
    <containsShortcutsTo>rcpapp</containsShortcutsTo>
    <shortcutsProvidedFor>rcpapp</shortcutsProvidedFor>
    <domainDiagramElement
        href="rcpapp.genmodel#//rcpapp/Model"/>
    <topLevelNodes
        visualID="2001"
        editPartClassName="ComponentEditPart"
        itemSemanticEditPolicyClassName="ComponentItemSemanticEditPolicy"
        canonicalEditPolicyClassName="ComponentCanonicalEditPolicy"
        graphicalNodeEditPolicyClassName="ComponentGraphicalNodeEditPolicy"
        createCommandClassName="ComponentCreateCommand">
      <diagramRunTimeClass
          href="platform:/plugin/org.eclipse.gmf.runtime.notation/model/notation.genmodel#//notation/Node"/>
      <elementType
          xsi:type="gmfgen:MetamodelType"
          editHelperClassName="ComponentEditHelper"/>
      <viewmap
          xsi:type="gmfgen:InnerClassViewmap"
          className="ComponentFigure"
          classBody="&#xA;/**&#xA; * @generated&#xA; */&#xA;public class ComponentFigure extends org.eclipse.draw2d.RoundedRectangle {&#xA;&#xA;&#xA;&#x9;/**&#xA;&#x9; * @generated&#xA;&#x9; */&#xA;&#x9;private org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel fFigureComponentLabelFigure; &#xA;&#xA;&#xA;&#x9;/**&#xA;&#x9; * @generated&#xA;&#x9; */&#xA;&#x9;public ComponentFigure() {&#xA;&#x9;&#x9;&#x9;&#x9;this.setCornerDimensions(new org.eclipse.draw2d.geometry.Dimension(getMapMode().DPtoLP(8)&#xA;, getMapMode().DPtoLP(8)&#xA;));&#xA;this.setBorder(new org.eclipse.draw2d.MarginBorder(getMapMode().DPtoLP(5)&#xA;, getMapMode().DPtoLP(5)&#xA;, getMapMode().DPtoLP(5)&#xA;, getMapMode().DPtoLP(5)&#xA;));&#xA;&#x9;&#x9;createContents();&#xA;&#x9;}&#xA;&#x9;/**&#xA;&#x9; * @generated&#xA;&#x9; */&#xA;&#x9;private void createContents(){&#xA;&#xA;&#xA;fFigureComponentLabelFigure = new org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel();&#xA;&#xA;fFigureComponentLabelFigure.setText(&quot;Component&quot;);&#xA;&#xA;this.add(fFigureComponentLabelFigure);&#xA;&#xA;&#xA;&#x9;}&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#x9;/**&#xA;&#x9; * @generated&#xA;&#x9; */&#xA;&#x9;public org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel getFigureComponentLabelFigure() {&#xA;&#x9;&#x9;return fFigureComponentLabelFigure;&#xA;&#x9;}&#xA;&#xA;&#xA;}&#xA;&#xA;"/>
      <modelFacet>
        <metaClass
            href="rcpapp.genmodel#//rcpapp/Component"/>
        <containmentMetaFeature
            href="rcpapp.genmodel#//rcpapp/Model/components"/>
        <childMetaFeature
            href="rcpapp.genmodel#//rcpapp/Model/components"/>
      </modelFacet>
      <labels
          visualID="5001"
          editPartClassName="ComponentNameEditPart"
          itemSemanticEditPolicyClassName="ComponentNameItemSemanticEditPolicy"
          elementIcon="true">
        <diagramRunTimeClass
            href="platform:/plugin/org.eclipse.gmf.runtime.notation/model/notation.genmodel#//notation/Node"/>
        <viewmap
            xsi:type="gmfgen:ParentAssignedViewmap"
            getterName="getFigureComponentLabelFigure"
            figureQualifiedClassName="org.eclipse.gmf.runtime.draw2d.ui.figures.WrappingLabel"/>
        <modelFacet
            xsi:type="gmfgen:FeatureLabelModelFacet"
            parser="//@labelParsers/@implementations.0">
          <metaFeatures
              href="rcpapp.genmodel#//rcpapp/Component/name"/>
        </modelFacet>
      </labels>
    </topLevelNodes>
    <palette>
      <groups
          title="Objects"
          collapse="true">
        <entries
            xsi:type="gmfgen:ToolEntry"
            title="Component"
            description="Create new Component"
            genNodes="//@diagram/@topLevelNodes.0"/>
      </groups>
    </palette>
    <preferencePages
        xsi:type="gmfgen:GenStandardPreferencePage"
        iD="org.eclipse.epsilon.eugenia.examples.rcpapp.diagram.general"
        name="Rcpapp Diagram">
      <children
          xsi:type="gmfgen:GenStandardPreferencePage"
          iD="org.eclipse.epsilon.eugenia.examples.rcpapp.diagram.appearance"
          name="Appearance"
          kind="Appearance"/>
      <children
          xsi:type="gmfgen:GenStandardPreferencePage"
          iD="org.eclipse.epsilon.eugenia.examples.rcpapp.diagram.connections"
          name="Connections"
          kind="Connections"/>
      <children
          xsi:type="gmfgen:GenStandardPreferencePage"
          iD="org.eclipse.epsilon.eugenia.examples.rcpapp.diagram.printing"
          name="Printing"
          kind="Printing"/>
      <children
          xsi:type="gmfgen:GenStandardPreferencePage"
          iD="org.eclipse.epsilon.eugenia.examples.rcpapp.diagram.rulersAndGrid"
          name="Rulers And Grid"
          kind="RulersAndGrid"/>
    </preferencePages>
  </diagram>
  <plugin>
    <requiredPlugins>org.eclipse.gmf.tooling.runtime</requiredPlugins>
    <requiredPlugins>org.eclipse.draw2d</requiredPlugins>
  </plugin>
  <editor/>
  <diagramUpdater/>
  <propertySheet>
    <tabs
        xsi:type="gmfgen:GenStandardPropertyTab"
        iD="appearance"/>
    <tabs
        xsi:type="gmfgen:GenStandardPropertyTab"
        iD="diagram"/>
    <tabs
        xsi:type="gmfgen:GenCustomPropertyTab"
        iD="domain"
        label="Core">
      <filter
          xsi:type="gmfgen:TypeTabFilter">
        <types>org.eclipse.gmf.runtime.notation.View</types>
        <types>org.eclipse.gef.EditPart</types>
      </filter>
    </tabs>
  </propertySheet>
  <application>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="CLOSE"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="CLOSE_ALL"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="SAVE"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="SAVE_AS"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="SAVE_ALL"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="QUIT"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="UNDO"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="REDO"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="CUT"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="COPY"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="PASTE"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="DELETE"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="SELECT_ALL"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="OPEN_NEW_WINDOW"/>
    <sharedContributionItems
        xsi:type="gmfgen:GenActionFactoryContributionItem"
        name="PRINT"/>
    <mainMenu>
      <items
          xsi:type="gmfgen:GenMenuManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.M_FILE"
          name="&amp;File">
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.FILE_START"/>
        <items
            xsi:type="gmfgen:GenMenuManager"
            iD="&quot;new&quot;"
            name="&amp;New">
          <items
              xsi:type="gmfgen:GenGroupMarker"
              groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
        </items>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.0"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.1"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.2"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.3"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.4"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.5"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.FILE_END"/>
      </items>
      <items
          xsi:type="gmfgen:GenMenuManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.M_EDIT"
          name="&amp;Edit">
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.EDIT_START"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.6"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.7"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.UNDO_EXT"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.8"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.9"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.10"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.CUT_EXT"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.11"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.12"/>
        <items
            xsi:type="gmfgen:GenSeparator"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.ADD_EXT"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.EDIT_END"/>
        <items
            xsi:type="gmfgen:GenSeparator"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      </items>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      <items
          xsi:type="gmfgen:GenMenuManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.M_WINDOW"
          name="&amp;Window">
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.13"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      </items>
      <items
          xsi:type="gmfgen:GenMenuManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.M_HELP"
          name="&amp;Help">
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.HELP_START"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.HELP_END"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      </items>
    </mainMenu>
    <mainToolBar>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="&quot;group.file&quot;"/>
      <items
          xsi:type="gmfgen:GenToolBarManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.TOOLBAR_FILE">
        <items
            xsi:type="gmfgen:GenSeparator"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.NEW_GROUP"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.NEW_EXT"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.SAVE_GROUP"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.2"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.SAVE_EXT"/>
        <items
            xsi:type="gmfgen:GenSharedContributionItem"
            actualItem="//@application/@sharedContributionItems.14"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.PRINT_EXT"/>
        <items
            xsi:type="gmfgen:GenSeparator"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      </items>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="org.eclipse.ui.IWorkbenchActionConstants.MB_ADDITIONS"/>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="&quot;group.nav&quot;"/>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="org.eclipse.ui.IWorkbenchActionConstants.GROUP_EDITOR"/>
      <items
          xsi:type="gmfgen:GenGroupMarker"
          groupName="org.eclipse.ui.IWorkbenchActionConstants.GROUP_HELP"/>
      <items
          xsi:type="gmfgen:GenToolBarManager"
          iD="org.eclipse.ui.IWorkbenchActionConstants.TOOLBAR_HELP">
        <items
            xsi:type="gmfgen:GenSeparator"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.GROUP_HELP"/>
        <items
            xsi:type="gmfgen:GenGroupMarker"
            groupName="org.eclipse.ui.IWorkbenchActionConstants.GROUP_APP"/>
      </items>
    </mainToolBar>
  </application>
  <domainGenModel
      href="rcpapp.genmodel#/"/>
  <labelParsers
      extensibleViaService="true">
    <implementations
        xsi:type="gmfgen:PredefinedParser"
        uses="//@diagram/@topLevelNodes.0/@labels.0/@modelFacet"/>
  </labelParsers>
  <contextMenus
      context="//@diagram">
    <items
        xsi:type="gmfgen:LoadResourceAction"/>
  </contextMenus>
</gmfgen:GenEditorGenerator>
