随着加载项管理器加载项,您可以进行额外的自定义,以前需要手动编辑原始 XML。 此加载项还使您可以自动访问所有加载项的自定义元数据属性。
自定义菜单项
您可以通过右键单击树中的顶级项目来更改主菜单(默认为加载项)。 您还可以更改菜单项以插入到同一菜单中。 如果您正在使用现有的主菜单项(如分析),并且希望将菜单项放置在特定位置(例如在 X 拟合 Y 之后),这将很有用。

将主菜单更改为内置菜单
- 右键单击菜单项树中的顶部项目,然后选择“更改主菜单”。
- 在“更改主菜单”窗口中,从组合框中选择您希望放置菜单项的菜单。

- 如果“Insert After”属性中已经设置了值(并且之前的菜单是自定义菜单),系统会提示您将该属性更改为新值。 您在此处选择的项目将决定您的自定义菜单在主菜单栏中的放置位置。

如果没有提示您输入“插入之后”值,您可以右键单击菜单项树中的顶部项目并选择“更改插入之后”以更新此值。
- 重建您的加载项并安装。 您的加载项菜单项现在将出现在选定的主菜单中,在指定的菜单项之后,如下所示。

将主菜单更改为自定义菜单
- 右键单击菜单项树中的顶部项目,然后选择“更改主菜单”。
- 在“更改主菜单”窗口中,从组合框中选择“自定义”,然后在文本编辑框中键入所需菜单的名称,如下所示。

- 如果“Insert After”属性中已经设置了值(并且之前的菜单是内置菜单),系统会提示您将该属性更改为新值。 您在此处选择的项目将决定您的自定义菜单在主菜单栏中的放置位置。
如果没有提示您输入“插入之后”值,您可以右键单击菜单项树中的顶部项目并选择“更改插入之后”以更新此值。
- 重建您的加载项并安装。 您的加载项菜单项现在将出现在您的自定义主菜单中,在指定的主菜单之后,如下所示。

在单个加载项中使用多个主菜单
使用插件管理器,您现在可以创建一个插件,在多个不同的主菜单中创建多个菜单项。 如果您正在创建执行适合不同区域的多个任务的加载项,这可能很有用。 例如,数据表实用程序加载项可能会调用具有 Tables、Rows 和/或 Cols 菜单的菜单项。
- 要向加载项添加其他主菜单,请单击“菜单项”选项卡上“菜单项树”旁边的红色三角形菜单,然后选择“添加顶级主菜单”。

接下来,选择您希望新菜单表示的主菜单,如以上部分所示。 下面,我添加了两个额外的主菜单。
- 添加所有所需的主菜单及其包含的菜单项后,构建加载项并在多个主菜单中查看三个菜单项。

菜单项的内置 JMP 图标
就像您可以在 Add-In Builder 中执行的操作一样,在 Add-In Manager 中,您可以为菜单项指定自定义图标文件。 但是,在加载项管理器中,您还可以选择显示在菜单项旁边的内置图标。
- 在“菜单项”选项卡上,选择一个命令并单击“图标”部分中的“选择”按钮。
- 选择您要使用的图标,然后单击确定。

- 您将在菜单项树中看到图标的预览。

- 构建和安装加载项后,您将在菜单项旁边看到内置图标。

如果您想在加载项中使用这些图标中的任何一个,请查看我的内置 JMP 图标加入。
自定义元数据
自定义元数据可以以关联数组的形式包含在您的加载项中。 关联数组将被写入加载项顶级文件夹中的“customMetadata.jsl”文件。 查看脚本索引(帮助 > 脚本索引)以获取使用示例。
包含的元数据
下面是由加载项管理器自动管理的所有键/值对的列表。 不要在您自己的自定义元数据中使用任何这些键。
钥匙
|
价值
|
数据类型
|
插件版本
|
%版本
|
数字
|
建造日期
|
%构建日期
|
数字
|
ID
|
%ID
|
特点
|
部署的插件文件名
|
仓库表文件名.jmp
|
特点
|
部署的AddinsLoc
|
/path/to/addin/depot/table
|
特点
|
姓名
|
%姓名
|
特点
|
状态
|
“DEV”或“TEST”或“PROD”
|
特点
|
添加新的自定义元数据
可以通过单击“自定义元数据”选项卡(在“常规信息”选项卡中)表格旁边的绿色加号图标来添加自定义元数据。
在加载项中使用自定义元数据
下面是一个示例“customMetadata.jsl”脚本,带有一个名为“author”的自定义元数据键。
Associative Array(
List(
List( "addinVersion", 2 ),
List( "author", "Justin Chilton" ),
List( "buildDate", 3594195289 ),
List( "deployedAddinsFilename", "publishedAddins.jsl" ),
List( "deployedAddinsLoc", "\\server\share\Add-In Depot\Meta\" ),
List( "id", "com.jmp.juchil.myjmpaddin" ),
List( "name", "My JMP Add-In" ),
List( "state", "DEV" )
)
)
可以使用以下包含语句将关联数组导入您的加载项(在将“com.jmp.myaddin”替换为加载项的 ID 之后)。
aa = Include( "$ADDIN_HOME(com.jmp.myaddin)\customMetadata.jsl" );
导入关联数组后,可以使用以下语法来引用值:
aa["author"]
这篇博文是三部分系列的第三部分,介绍如何定义和构建加载项,向用户部署加载项,并在加载项管理器中提供高级自定义。我希望你能找到我的加载项管理器插件有用!