<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.2"?>
<plugin>

   <!--=============================-->
   <!-- Refactoring Extension Point -->
   <!--=============================-->
   <extension-point id="refactorings" name="%extension-point.name" schema="schema/refactorings.exsd" />

   <!--===============-->
   <!-- Refactor Menu -->
   <!--===============-->
   <extension point="org.eclipse.core.expressions.definitions">
      <definition id="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource">
           <with variable="selection">
               <iterate operator="or" ifEmpty="false">
                 <or>
                   <adapt type="org.eclipse.core.resources.IResource">
                     <test
                        property="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
                        forcePluginActivation="true" />
                   </adapt>
                   <adapt type="org.eclipse.jface.text.ITextSelection">
                     <test
                        property="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
                        forcePluginActivation="true" />
                   </adapt>
                 </or>
               </iterate>
            </with>
      </definition>
   </extension>
   <extension point="org.eclipse.ui.menus">

      <!-- Refactor menu in the menu bar -->
      <!-- ============================= -->
      <!-- Always visible -->
      <menuContribution
            locationURI="menu:org.eclipse.ui.main.menu?before=navigate">
         <!-- Menu mimicks org.eclipse.jdt.ui's (as does CDT's Refactor menu)
              http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.ui/plugin.xml?view=markup -->
         <menu
               label="%menu.label"
               id="org.eclipse.jdt.ui.refactoring.menu">
            <!-- http://wiki.eclipse.org/Command_Core_Expressions -->
            <visibleWhen checkEnabled="false">
               <reference definitionId="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource" />
            </visibleWhen>
            <dynamic
                  class="org.eclipse.rephraserengine.ui.menus.RefactorMenu"
                  id="org.eclipse.rephraserengine.ui.menus.refactor">
            </dynamic>
         </menu>
      </menuContribution>

      <!-- Refactor sub-menu in popup menus -->
      <!--  (e.g., in the Navigator view)   -->
      <!-- ================================ -->
      <!-- Visible when at least one IResource is selected -->
      <menuContribution
            locationURI="popup:org.eclipse.ui.popup.any?after=group.reorganize">
         <menu
               label="%menu.label.0"
               id="org.eclipse.jdt.ui.refactoring.menu">
            <!-- http://wiki.eclipse.org/Command_Core_Expressions -->
            <visibleWhen checkEnabled="false">
               <reference definitionId="org.eclipse.rephraserengine.ui.refactoring.isRefactorableResource" />
            </visibleWhen>
            <dynamic
                  class="org.eclipse.rephraserengine.ui.menus.RefactorMenu"
                  id="org.eclipse.rephraserengine.ui.menus.refactor">
            </dynamic>
         </menu>
      </menuContribution>

   </extension>

   <!--=================-->
   <!-- Property Tester -->
   <!--=================-->
  <extension
        point="org.eclipse.core.expressions.propertyTesters">
      <propertyTester
           id="org.eclipse.rephraserengine.ui.refactoring.isRefactorable"
           class="org.eclipse.rephraserengine.internal.ui.menus.RefactorableResourcePropertyTester"
           namespace="org.eclipse.rephraserengine.ui.refactoring"
           properties="isRefactorable"
           type="java.lang.Object"/>
  </extension>

</plugin>
