IDEA插件开发基础
由于简易ORM的需要,
想要做一些代码自动生成功能(通过右键菜单辅助) 半自动编写代码,故考虑需要开发IDE插件(我司现使用IDEA)
1.例子代码
http://confluence.jetbrains.com/display/IDEADEV/Getting+Started+with+Plugin+Development
此Plugin只包含一个Action 对于简单的插件 这部分内容应当够了
2.定位到当前选中的文件
public void actionPerformed(AnActionEvent e) 
此方法的e对象
使用(VirtualFile[]) e.getData(DataKeys.VIRTUAL_FILE_ARRAY);
获得当前在编辑器中选中的所有文件
3. 把功能加入到 右键菜单 或其他菜单中去
主要是配置Action的group实现
即plugin.xml中配置
可配置的group可在 插件SDK的 IdeActions类中看到 
 <add-to-group group-id="MainMenu" anchor="last"  />
另外新建一个Action时的向导窗口也可以看到  
MainMenu就是IDEA主菜单 而EditPopUpMenu则是右键弹出菜单
这部分没看到明确的文档指示其结构 不过一般放在右键菜单里面已经不错了

IDEA插件开发基础的更多相关文章
- jquery插件开发基础入门
		
jquery插件开发基础入门 入门 编写一个jquery插件开始于给jquery.fn加入新的功能属性,此处添加的对象属性的名称就是你的插件名称 jQuery.fn,myPlugin = functi ...
 - Visual Studio插件开发基础
		
Visual Studio插件主要有两种:Add-in 和 VSX(Visual Studio eXtensibility) 两者区别可参考这篇文章:Visual Studio Extensions ...
 - Typecho 插件开发基础
		
<?php /** * 标题 插件说明 * * @package 添加标题 * @author Fan * @version 1.0.0 * @link http://cnblogs.com/f ...
 - JavaScript学习笔记(四)——jQuery插件开发与发布
		
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
 - JavaScript学习总结(四)——jQuery插件开发与发布
		
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
 - (地址)eclipse插件开发攻略的访问地址
		
园子地址: http://www.cnblogs.com/liuzhuo/category/257208.html 关键字: Eclipse插件开发彻底攻略 eclipse插件开发基础篇之
 - Android Studio 插件开发详解三:翻译插件实战
		
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78113868 本文出自[赵彦军的博客] 一:概述 如果不了解插件开发基础的同学可以 ...
 - JavaScript学习总结(五)——jQuery插件开发与发布
		
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
 - Android中插件开发篇总结和概述
		
刚刚终于写完了插件开发的最后一篇文章,下面就来总结一下,关于Android中插件篇从去年的11月份就开始规划了,主要从三个方面去解读Android中插件开发原理.说白了,插件开发的原理就是:动态加载技 ...
 
随机推荐
- MSSQLSERVER数据库- 判断全局临时表是否存在
			
写一下今天遇到的一个问题. 今天因为一些作用域的问题,我使用了全局临时表,然后我在存储过程里使用了这么一段语句,想判断全局临时表是否存在,如果不存在,则将他DROP掉. 可是这段语句没用. if ex ...
 - java 实现视频转换通用工具类:视频相互转换-总方法及Mencoder(二)
			
1.自动判断格式并调用相应的转换工具,默认方法 /** * 自动判断格式并调用相应的转换工具,默认方法 * @param srcVideoPath * @param tarVideoPath * @r ...
 - SQL rank() 用法
			
WITH vep AS ( SELECT package.OrderCode , RANK() OVER ( PARTITION BY package.OrderCode ORDER BY packa ...
 - BS和CS对比
			
BS和CS对比 牛腩新闻发布系统已经开始了不短的时间了,CS的项目也算是接触了下,接下来对比下CS和BS CS和BS是什么? C/S结构即Client/Server(客户机/服务器)结构,是大家熟知的 ...
 - Yum出错Error: Cannot find a valid baseurl for repo: base(转)
			
centos yum 错误 Error: Cannot find a valid baseurl for repo: base 装了个CentOS 6.x,使用yum时出现了下面的错误提示.Loade ...
 - requestFocusFromTouch   , requestFocus
			
/*if(userNameEditText.isInTouchMode()){ userNameEditText.requestFocusFromTouch(); }else{ userNameEdi ...
 - 数据库Mysql性能优化
			
http://www.cnblogs.com/itxiongwei/p/5533995.html
 - 有关Color和Drawable你所不知道的那些内容
			
Android开发中,我们经常会用到Color或Drawable,有时他们是可以混用的,有时却有严格的区别. Drawable 体系结构 Drawable是可绘制物件的一般抽象.与View不同,Dra ...
 - Android_listView_exc
			
listView布局: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" ...
 - spring mvc 3.1的自动注入参数遇到的问题
			
在网上下载了xheditor作为页面的编辑器,编辑内容后post到后台保存,后台方法用spring mvc的自动注入的方式接收参数. 这种方式在各个浏览器下运行良好,但是在ie11下发现,从word. ...