前面的示例为指定的扩展点提供了向导。另一方面,也许更常见的情况是您想要通过已经定义的一些操作来启动您自己的插件的向导。(在工作台菜单添加项中,我们讨论了您可以将操作添加到工作台的方式。)
通过将向导放置在包含对话框中,向导就会显示在用户界面中。当添加至向导扩展时,就会为您处理此详细信息。当启动您自己的向导时,必须由您自己通过将向导放在 WizardDialog 中来显示它。
例如,通过创建向导对话框,并将它与 ReadmeCreationWizard 进行关联,就可以独立地启动 ReadmeCreationWizard。以下代码段说明如何通过一些操作代表完成此任务。(该方法假定我们知道工作台和选择。)
public void run(IAction action) {
// Create the wizard
ReadmeCreationWizard wizard = new ReadmeCreationWizard();
wizard.init(getWorkbench(), selection);
// Create the wizard dialog
WizardDialog dialog = new WizardDialog
(getWorkbench().getActiveWorkbenchWindow().getShell(),wizard);
// Open the wizard dialog
dialog.open();
}
如果需要在插件的用户界面中的任何其它地方嵌入向导,则接口 IWizardContainer 定义用于主管向导所必需的协议。