eclipse插件开发之:org.eclipse.ui.popupMenus 多级子菜单

一年前的计划是开发一套MDD工具,简化研发工作,统一规范、提供代码质量。

我理解的mdd包含四大部分:

    一是建模(数据模型、对象模型)

    二是一套万能生成器(freemarker)

    三是公司版专用eclipse

    四是高质量代码模版(长期积累的过程)

    1、4这两个步骤是基础但是要见效快还是靠2和3。欢迎大家提出意见
废话少说,上代码

   <!--项目右键菜单-->
   
<extension point="org.eclipse.ui.popupMenus">
  
      
<objectContribution objectClass="org.eclipse.jdt.internal.core.JavaProject" id="cn.net.comsys.mdd.frame.porjectMenu">
      
           
<menu id="ucittools" label="UCIT Tools">
            
<separator name="dir1"> </separator>
         
</menu>
         
<menu id="IS" label="IS Tools" path="ucittools/dir1">

            
<separator name="ISTOOLS"> </separator>
         
</menu>
         
<menu id="UT" label="UT Tools" path="ucittools/dir1">
            
<separator name="UTTOOLS"> </separator>
         
</menu>
      
         
<action
               
enablesFor="1"
               label
="add IS Module"
               icon
="icons/sample.gif"
               class
="cn.net.comsys.mdd.frame.is.actions.ISProjectAddModule"
               id
="addISModule"
               menubarPath
="ucittools/IS/ISTOOLS">

         
</action>
         
<action
               
enablesFor="1"
               label
="add UT Module"
               icon
="icons/sample.gif"
               class
="cn.net.comsys.mdd.frame.ut.actions.UTProjectAddModule"
               id
="addUTModule"
               menubarPath
="ucittools/UT/UTTOOLS">

         
</action>
      
</objectContribution>
    
</extension>


 java代码:

package cn.net.comsys.mdd.frame.ut.actions;

import org.eclipse.jface.action.IAction;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.ui.IObjectActionDelegate;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.IWorkbenchWindow;

/**
 * 
@author JiF
 * 
@version 创建时间:2011-5-17 下午05:41:40
 * E-Mail:liaojifeng@163.com
 * 类说明:
 *
 *
 *
 
*/
public class UTProjectAddModule implements IObjectActionDelegate {
    
private IWorkbenchWindow window;

    @Override
    
public void setActivePart(IAction arg0, IWorkbenchPart arg1) {
        
// TODO Auto-generated method stub

    }

    @Override
    
public void run(IAction arg0) {
        
// TODO Auto-generated method stub
        System.out.println("UT框架,run mouse client……");
    }

    @Override
    
public void selectionChanged(IAction arg0, ISelection arg1) {
        
// TODO Auto-generated method stub

    }


}
原文地址:https://www.cnblogs.com/jifeng/p/2134335.html