<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
/**
 * <copyright>
 *
 * Copyright (c) 2005,2011 IBM Corporation and others.
 * All rights reserved.   This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *   IBM - Initial API and implementation
 *   Kenn Hussey - 332962
 *
 * </copyright>
 *
 * $Id: plugin.xml,v 1.1 2011/03/04 22:18:25 ewillink Exp $
 */
-->
<plugin>

     <extension point="org.eclipse.ui.editorActions"> 
      <editorContribution
            id="org.eclipse.ocl.examples.xtext.console.ecoreEditorContribution"
            targetID="org.eclipse.emf.ecore.presentation.EcoreEditorID">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowEcoreConsoleDelegate"
               menubarPath="org.eclipse.emf.ecoreMenuID/additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowEcoreConsoleAction"/>
      </editorContribution> 
      <editorContribution
            id="org.eclipse.ocl.examples.xtext.console.ecoreReflectiveEditorContribution"
            targetID="org.eclipse.emf.ecore.presentation.ReflectiveEditorID">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowEcoreConsoleDelegate"
               menubarPath="org.eclipse.emf.ecoreMenuID/additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowEcoreReflectiveConsoleAction"/>
      </editorContribution> 
      <editorContribution
            id="org.eclipse.ocl.examples.xtext.console.umlEditorContribution"
            targetID="org.eclipse.uml2.uml.editor.presentation.UMLEditorID">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowUMLConsoleDelegate"
               menubarPath="org.eclipse.uml2.umlMenuID/additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowUMLConsoleAction"/>
      </editorContribution> 
   </extension> 
   
   <extension
         point="org.eclipse.ui.popupMenus">
      <viewerContribution
            targetID="org.eclipse.emf.examples.extlibrary.presentation.EXTLibraryEditorID"
            id="org.eclipse.ocl.examples.extlibraryViewerContribution">
        <menu
               label="%_UI_OCLMenu_label"
               path="additions"
               id="org.eclipse.oclEngineMenuID">
            <separator name="additions"/>
         </menu>
         <action
               label="%_UI_ShowConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowConsoleDelegate"
               menubarPath="org.eclipse.oclEngineMenuID/additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowConsoleAction"/>
      </viewerContribution>
      <viewerContribution
            targetID="org.eclipse.emf.ecore.presentation.EcoreEditorID"
            id="org.eclipse.ocl.examples.ecoreViewerContribution">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowEcoreConsoleDelegate"
               menubarPath="additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowEcoreConsoleAction"/>
      </viewerContribution>
      <viewerContribution
            targetID="org.eclipse.emf.ecore.presentation.ReflectiveEditorID"
            id="org.eclipse.ocl.examples.ecoreReflectiveViewerContribution">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowEcoreConsoleDelegate"
               menubarPath="additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowEcoreReflectiveConsoleAction"/>
      </viewerContribution>
      <viewerContribution
            targetID="org.eclipse.uml2.uml.editor.presentation.UMLEditorID"
            id="org.eclipse.ocl.examples.umlViewerContribution">
         <action
               label="%_UI_ShowOCLConsole_label"
               class="org.eclipse.ocl.examples.xtext.console.actions.ShowUMLConsoleDelegate"
               menubarPath="additions"
               icon="$nl$/icons/elcl16/oclconsole_co.gif"
               id="org.eclipse.ocl.examples.xtext.console.ShowUMLConsoleAction"/>
      </viewerContribution>
   </extension>
   
   <extension point="org.eclipse.ui.console.consoleFactories">
      <consoleFactory
            label="%_UI_ConsoleFactory_label"
            class="org.eclipse.ocl.examples.xtext.console.OCLConsoleFactory"
            icon="$nl$/icons/elcl16/oclconsole_co.gif">
      </consoleFactory>
   </extension>

  <!--extension point = "org.eclipse.emf.edit.ui.queryDelegateTextViewerFactories">
     <factory
           uri = "http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"
           class = "org.eclipse.ocl.examples.xtext.console.delegate.OCLQueryDelegateTextViewerFactory" />
  </extension-->
  
  <extension point="org.eclipse.ui.contexts">
    <context
          id="org.eclipse.ocl.examples.xtext.console.xtext.embededxtextEditor.context"
          name="Embedded Essential OCL Xtext Editor"
          parentId="org.eclipse.ui.contexts.window">
    </context>
  </extension>
</plugin>
