本文主要探究常见的场景中,plugin.xml文件中<actions>标签的配置
<actions>标签中,常见的子标签有以下几个:
1. <action>
此标签用来添加一个操作, 标签常用的字段有id,class,text,description, 是最基本的一个标签,其中,几个字段分别被用来指定不同的必要信心,具体如下:
id -> 操作的唯一标识
class -> 执行操作的实现类(该类需要继承AnAction类)
text -> 指定操作的名称
description -> 操作的描述
此标签需要与<group>或者<add-to-group>标签配合使用,实例如下:
<action id="hello-pan.Demo2Action" class="jin.panpan.action.Demo2Action" text="测试操作2" description="在工具栏中添加一个操作">
<add-to-group group-id="ToolsMenu" anchor="first"/>
</action>
实际效果如下:
2. <group>
此标签用来添加一个操作组,使用此标签时,需要指定<add-to-group>与<action>两个子标签,此标签有两个常用的关键字,text与description,具体用法与含义和<action>中一致,实例如下:
<group id="my.plugin.group" text="自定义插件" description="这是一个自定义插件的组">
<add-to-group group-id="MainMenu" anchor="last" />
<action id="hello-pan.DemoAction" class="jin.panpan.action.DemoAction" text="测试操作" description="这是一个操作的示例代码" />
<action id="jin-hello.FormAction" class="jin.panpan.action.FormAction" text="表单测试"/>
<action id="jin-hello.FrameAction" class="jin.panpan.action.FrameAction" text="测试直接弹出JFrame"/>
</group>
实际效果如下:
3. <add-to-group>
此标签很简单,就是用来指定操作要绑定的菜单位置, 有两个字段:
group-id -> 要绑定的菜单组ID
anchor -> 顺序位置 枚举值有:first last before after
relative-to-action -> 当anchor的值在before after其中一个时,需要此字段指定相对的一个菜单操作
4. <keyboard-shortcut>
此标签指定操作的快捷键, 此标签最好使用idea提供的创建操作页面自动生成, 手动生成时需要注意格式,主要的字段有:
keymap -> 对应设置中快捷键设置的具体位置
first-keystroke -> 第一个快捷键
second-keystroke -> 第二个快捷键