<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
 Copyright (c) 2014, 2015 Mia-Software, and Soft-Maint.
 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:
    Gregoire Dupe (Mia-Software) - Bug 358914 - [Move to EMF Facet][Browser] Switch to EMF Facet
    Thomas Cicognani (Soft-Maint) - Bug 442019 - Toolbar actions disappear when focus is not on the browser
    Thomas Cicognani (Soft-Maint) - Bug 442257 - New toolbar actions to (des)activate customizations
    Thomas Cicognani (Soft-Maint) - Bug 442718 - Implement copy action in the new MoDisco Browser
    Thomas Cicognani (Soft-Maint) - Bug 442714 - New toolbar action to show/hide eContainer link
    Thomas Cicognani (Soft-Maint) - Bug 442800 - API to open new MoDisco Browser
    Thomas Cicognani (Soft-Maint) - Bug 470962 - Add shortcuts to activate customs
    Thomas Cicognani (Soft-Maint) - Bug 471597 - [New Browser] Add a customization to display subclasses from an EClass
    Thomas Cicognani (Soft-Maint) - Bug 472041 - [New Browser] Add a customization counting instances by EClass in the same Resource
-->
<plugin>
   <extension point="org.eclipse.ui.editors">
      <editor
            class="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor"
            default="false"
            id="org.eclipse.modisco.infra.browser.editor.ui.TreeEditor"
            name="%TreeResourceEditor">
         <contentTypeBinding
               contentTypeId="org.eclipse.emf.ecore.xmi">
         </contentTypeBinding>
      </editor>
   </extension>
   <extension
         point="org.eclipse.emf.facet.util.emf.core.modelViewer">
      <resourceViewer
            class="org.eclipse.modisco.infra.browser.editor.ui.internal.opener.ResourceBrowserOpener">
      </resourceViewer>
      <eObjectViewer
            class="org.eclipse.modisco.infra.browser.editor.ui.internal.opener.ResourceBrowserOpener">
      </eObjectViewer>
      <ePackageViewer
            class="org.eclipse.modisco.infra.browser.editor.ui.internal.opener.ResourceBrowserOpener">
      </ePackageViewer>
   </extension>
   <extension
         point="org.eclipse.ui.menus">
      <menuContribution
            allPopups="false"
            locationURI="toolbar:org.eclipse.ui.main.toolbar?after=additions">
         <toolbar
               id="org.eclipse.modisco.infra.browser.editor.ui.toolbar1"
               label="%modiscoBrowserToolbarLabel">
            <command
                  commandId="org.eclipse.emf.facet.efacet.ui.loadFacet"
                  id="org.eclipse.modisco.util.emffacet.menu.ui.loadFacet"
                  label="%LoadUnloadFacets"
                  style="pulldown">
               <visibleWhen
                     checkEnabled="true">
                  <with
                        variable="activeEditor">
                     <instanceof
                           value="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor">
                     </instanceof>
                  </with>
               </visibleWhen>
            </command>
            <command
                  commandId="org.eclipse.modisco.infra.browser.editor.ui.command.facetset.econtainer"
                  label="%ShowEContainerLabel"
                  style="toggle">
               <visibleWhen
                     checkEnabled="true">
                  <with
                        variable="activeEditor">
                     <instanceof
                           value="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor">
                     </instanceof>
                  </with>
               </visibleWhen>
            </command>
            <command
                  commandId="org.eclipse.emf.facet.ui.loadCustomization"
                  id="org.eclipse.modisco.util.emffacet.ui.menu.loadCustomization"
                  label="%LoadUnloadCustoms"
                  style="pulldown">
               <visibleWhen
                     checkEnabled="true">
                  <with
                        variable="activeEditor">
                     <instanceof
                           value="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor">
                     </instanceof>
                  </with>
               </visibleWhen>
            </command>
         </toolbar>
      </menuContribution>
      <menuContribution
            allPopups="true"
            locationURI="popup:org.eclipse.ui.popup.any">
         <command
               commandId="org.eclipse.ui.edit.copy"
               label="%CopyLabel"
               style="push">
            <visibleWhen
                  checkEnabled="false">
               <with
                     variable="activePart">
                  <instanceof
                        value="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor">
                  </instanceof>
               </with>
            </visibleWhen>
         </command>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="menu:org.eclipse.modisco.util.emffacet.ui.menu.loadCustomization">
         <dynamic
               class="org.eclipse.modisco.infra.browser.editor.ui.internal.handlers.LoadCustomShortcutsMenu"
               id="org.eclipse.modisco.util.emffacet.ui.menu.loadCustomization.dynamic">
         </dynamic>
      </menuContribution>
      <menuContribution
            allPopups="false"
            locationURI="menu:org.eclipse.modisco.util.emffacet.menu.ui.loadFacet">
         <dynamic
               class="org.eclipse.modisco.infra.browser.editor.ui.internal.handlers.LoadFacetSetShortcutsMenu"
               id="org.eclipse.modisco.util.emffacet.menu.ui.loadFacet.dynamic">
         </dynamic>
      </menuContribution>
   </extension>
   <extension
         point="org.eclipse.ui.handlers">
      <handler
            class="org.eclipse.modisco.infra.browser.editor.ui.internal.handlers.CopyHandler"
            commandId="org.eclipse.ui.edit.copy">
         <activeWhen>
            <with
                  variable="selection">
               <iterate
                     ifEmpty="false"
                     operator="and">
                  <instanceof
                        value="org.eclipse.emf.ecore.EObject">
                  </instanceof>
               </iterate>
            </with>
         </activeWhen>
      </handler>
   </extension>

</plugin>
