<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<!--
 Copyright (c) 2014, 2019 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 v2.0
 which accompanies this distribution, and is available at
 http://www.eclipse.org/legal/epl-v20.html
 
 Contributors:
    Grégoire Dupé (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
    Grégoire Dupé (Mia-Software) - Bug 507622 - [New Browser] The copy handler hides handlers of other parts
-->
<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.modisco.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.modisco.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.modisco.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>
            <and>
                <with variable="selection">
                   <iterate
                         ifEmpty="false"
                         operator="and">
                      <instanceof
                            value="org.eclipse.emf.ecore.EObject">
                      </instanceof>
                   </iterate>
                </with>
                <with variable="activePart">
                   <instanceof
                       value="org.eclipse.modisco.infra.browser.editor.ui.internal.editor.TreeEditor">
                   </instanceof>
                </with>
            </and>
         </activeWhen>
      </handler>
   </extension>
</plugin>
