zoukankan      html  css  js  c++  java
  • eclipse default handler IHandler interface “the chosen operation is not enabled”

    NOTE: These two methods:

    Tip: Subclass AbstractHandler rather than implementing IHandler. but you can use it to the below section you need to set:

    IHandler the chosen operation is not enabled

    NOT USE popupMenus instead of Menus

    isEnabled: should be set to true

    isHandled:should be set to true

    import org.eclipse.core.commands.AbstractHandler;
    import org.eclipse.core.commands.ExecutionEvent;
    import org.eclipse.core.commands.ExecutionException;
    import org.eclipse.core.commands.IHandler;
    import org.eclipse.core.commands.IHandlerListener;
    import org.eclipse.jface.dialogs.MessageDialog;
    import org.eclipse.swt.widgets.MessageBox;
    import org.eclipse.ui.IWorkbenchWindow;
    import org.eclipse.ui.handlers.HandlerUtil;
    
    
    public class MyHandler implements IHandler {
    
        private FontChanger font=FontChanger.getInstance();
        @Override
        public Object execute(ExecutionEvent event) throws ExecutionException {
            // TODO Auto-generated method stub
            
            IWorkbenchWindow window = HandlerUtil.getActiveWorkbenchWindowChecked(event);
            MessageDialog.openInformation(
                    window.getShell(),
                    "Demo",
                    "Hello, Eclipse world");
            font.decreaseSize();
            return null;
        }
        @Override
        public void addHandlerListener(IHandlerListener handlerListener) {
            // TODO Auto-generated method stub
            
        }
        @Override
        public void dispose() {
            // TODO Auto-generated method stub
            
        }
        @Override
        public boolean isEnabled() {
            // TODO Auto-generated method stub
            return true;
        }
        @Override
        public boolean isHandled() {
            // TODO Auto-generated method stub
            return true;
        }
        @Override
        public void removeHandlerListener(IHandlerListener handlerListener) {
            // TODO Auto-generated method stub
            
        }
    
        
    }

    menu :

    http://stackoverflow.com/questions/1342532/how-to-add-items-in-popup-menu

    add it as a menu or menu item

    Eclipse base location uri for menus

    Since they are impossible to find on the net here is the list of all base location uri's in eclipse that are used in the org.eclipse.ui.menus extension point:
    menu:org.eclipse.ui.main.menu // the top-level menu
    popup:org.eclipse.ui.popup.any // all pop-up menus
    toolbar:org.eclipse.ui.main.toolbar // the top-level tool bar
    toolbar:org.eclipse.ui.trim.command1 // the top left trim (main toolbar area)
    toolbar:org.eclipse.ui.trim.command2 // the top right trim (perspective switcher area)
    toolbar:org.eclipse.ui.trim.vertical1 // the left vertical trim
    toolbar:org.eclipse.ui.trim.vertical2 // the right vertical trim
    toolbar:org.eclipse.ui.trim.status // the status line trim
    to access the menu/toolbar/popup of a part (view or editor):
    menu:partid //the part's chevron menu
    toolbar:partid //the part's toolbar (cannot contain other toolbars)
    popup:partid //the part's popup menu (register the context menu in createPartControl first)

     

     

    eclipse plugin menu gray out

    check the handler class is correct set ,or not implement

  • 相关阅读:
    2018-10-20-WPF-通过位处理合并图片
    2019-2-11-WPF-获取应用的所有窗口
    2019-2-11-WPF-获取应用的所有窗口
    2018-8-10-WPF-如何在绑定失败异常
    2018-8-10-WPF-如何在绑定失败异常
    类和对象
    类和对象
    什么是可串行化MVCC
    LeetCode-环形链表|+环形链表||
    用js仿探探拖拽卡片的效果、飞卡片的效果,感觉挺酷,最后有美女看哦!
  • 原文地址:https://www.cnblogs.com/alterhu/p/3996200.html
Copyright © 2011-2022 走看看