很多插件都需要提供用户配置参数的入口,这里以free-mybatis-plugin
插件为例,我们想要用户配置方法匹配模版,例如dao层中insert
,add
等关键字开头的方法在mapper中生成insert
语句。
创建GUI配置窗口
IDEA中可以直接创建一个GUI窗口:
弹出创建窗口:
名字自定,layout默认使用GridLayoutManager即可。
然后就可以拖拽编辑UI界面了。
第一次用会觉得超级难用!在排版的时候,如果想新加一行或者一列,拖拽组件到原来行的边缘,释放后会自动新增加一行。
给需要取值的组件填写filed name
属性,这样在生成的类中会包含对应的成员变量:
添加配置项
创建完GUI窗口后,需要在IDEA配置窗口中添加入口,那就需要实现SearchableConfigurable
接口,并注册到plugin.xml
中。
之后在plugin.xml
中注册:
这样就可以在IDEA setting窗口中见到我们的配置项了:
持久化配置
上面我们说了如何让用户修改插件配置,那当IDEA重启时,我们想让配置持久化到文件中,可以实现PersistentStateComponent
接口:
其中@State
注解指明了xml中根元素的名字和xml文件名称。
配置文件储存位置:/Library/Caches/IntelliJIdea2018.2/plugins-sandbox/config/options/mybatis.xml
即在沙箱目录下的/config/options/mybatis.xml
中。
当然,如果插件正式发布安装后,会保存到正式库目录中。