<?xml version="1.0" encoding="UTF-8"?>
<plugin>

   <extension
         id="product"
         point="org.eclipse.core.runtime.products">
      <product
            name="org.eclipse.emf.ecp.e4.application"
            application="org.eclipse.e4.ui.workbench.swt.E4Application">
         <property
               name="clearPersistedState"
               value="true">
         </property>
         <property
               name="applicationCSS"
               value="platform:/plugin/org.eclipse.emf.ecp.application.e4/css/default.css">
         </property>
         <property
               name="appName"
               value="org.eclipse.emf.ecp.e4.application">
         </property>
      </product>
   </extension>
   <extension
         point="org.eclipse.core.expressions.definitions">
      <definition
            id="org.eclipse.emf.ecp.application.e4.isProjectSelected"><with
               variable="org.eclipse.ui.selection">
               <or>
                  <instanceof
                        value="org.eclipse.emf.ecp.core.ECPProject">
                  </instanceof>
                  <iterate
                        operator="and">
                     <instanceof
                           value="org.eclipse.emf.ecp.core.ECPProject">
                     </instanceof>
                  </iterate>
               </or>
         </with>
      </definition>
      <definition
            id="org.eclipse.emf.ecp.application.e4.isModelElementSelected">
         <with
               variable="org.eclipse.ui.selection">
               <or>
                  <instanceof
                        value="org.eclipse.emf.ecore.EObject">
                  </instanceof>
                  <iterate
                        operator="and">
                     <instanceof
                           value="org.eclipse.emf.ecore.EObject">
                     </instanceof>
                  </iterate>
               </or>
         </with>
      </definition>
      <definition
            id="org.eclipse.emf.ecp.application.e4.isSingleModelElementSelected">
         <with
               variable="org.eclipse.ui.selection">
               <instanceof
                     value="org.eclipse.emf.ecore.EObject">
               </instanceof>
         </with>
      </definition>
      <definition
            id="org.eclipse.emf.ecp.application.e4.isSingleProjectOrModelElementSelected">
         <with
               variable="org.eclipse.ui.selection">
               <or>
                   <instanceof
                         value="org.eclipse.emf.ecore.EObject">
                   </instanceof>
                   <instanceof
                         value="org.eclipse.emf.ecp.core.ECPProject">
                   </instanceof>
               </or>
         </with>
      </definition>
      <definition
            id="org.eclipse.emf.ecp.application.e4.isProjectClosed">
         <with
               variable="org.eclipse.ui.selection">
            <or>
               <and>
                  <instanceof
                        value="org.eclipse.emf.ecp.core.ECPProject">
                  </instanceof>
                  <test
                        property="org.eclipse.emf.ecp.core.project.closed"
                        value="true">
                  </test>
                  <test
                        args="org.eclipse.emf.ecp.ui.closable"
                        property="org.eclipse.emf.ecp.ui.e3.workbench.menu.enablement"
                        value="true">
                  </test>
               </and>
               <iterate
                     ifEmpty="false"
                     operator="and">
                  <instanceof
                        value="org.eclipse.emf.ecp.core.ECPProject">
                  </instanceof>
                  <test
                        property="org.eclipse.emf.ecp.core.project.closed"
                        value="true">
                  </test>
                  <test
                        args="org.eclipse.emf.ecp.ui.closable"
                        property="org.eclipse.emf.ecp.ui.e3.workbench.menu.enablement"
                        value="true">
                  </test>
               </iterate>
            </or>
         </with>
      </definition>
      <definition
            id="org.eclipse.emf.ecp.application.e4.isProjectOpened">
         <with
               variable="org.eclipse.ui.selection">
            <or>
               <and>
                  <instanceof
                        value="org.eclipse.emf.ecp.core.ECPProject">
                  </instanceof>
                  <test
                        property="org.eclipse.emf.ecp.core.project.open"
                        value="true">
                  </test>
                  <test
                        args="org.eclipse.emf.ecp.ui.closable"
                        property="org.eclipse.emf.ecp.ui.e3.workbench.menu.enablement"
                        value="true">
                  </test>
               </and>
               <iterate
                     ifEmpty="false"
                     operator="and">
                  <instanceof
                        value="org.eclipse.emf.ecp.core.ECPProject">
                  </instanceof>
                  <test
                        property="org.eclipse.emf.ecp.core.project.open"
                        value="true">
                  </test>
                  <test
                        args="org.eclipse.emf.ecp.ui.closable"
                        property="org.eclipse.emf.ecp.ui.e3.workbench.menu.enablement"
                        value="true">
                  </test>
               </iterate>
            </or>
         </with>
      </definition>
   </extension>
   <extension
         point="org.eclipse.emf.ecp.ui.modelElementOpener">
      <modelElementOpener
            class="org.eclipse.emf.ecp.application.e4.editor.E4ModelElementOpener">
         <staticTester
               modelElement="org.eclipse.emf.ecore.EObject"
               priority="2">
         </staticTester>
      </modelElementOpener>
   </extension>
</plugin>
