5.1 概述
Common Wizard用于定制Navigator视图中的右向导,这些向导在单击鼠标右键的时候将出现,包括新建、导入、导出三种。CNF将这些向导的管理封装为Common Wizard,这样可以很方便的为不同的节点提供不同的向导,比如针对Java Project,新建向导菜单将于Non-Java Project区别。
5.2 扩展点
扩展点“org.eclipse.ui.navigator.navigatorContent/commonWizard”。它的使用非常简单:
首先要制定相关的Wizard,通过wizard ID关联,并确定Wizard的类型——新建、导入还是导出。向导则在其他的地方定义。
为了实现不同的节点的向导的区别,一般的Common Wizard还会使用<enablement>来指定向导启用的条件。在上述示例中,当节点模型可以与IFile、IFolder、IProject以及IWorkspaceRoot适配时,在新建菜单中添加向导“org.eclipse.ui.wizards.new.folder”,也就是新建文件夹向导。
5.3 Eclipse实现
继续看看EclipseNavigator视图中的新建文件夹向导,一下是其定义:
<commonWizard type="new" wizardId="org.eclipse.ui.wizards.new.folder"> <enablement> <or> <adapt type="org.eclipse.core.resources.IFile" /> <adapt type="org.eclipse.core.resources.IFolder" /> <adapt type="org.eclipse.core.resources.IProject" /> <adapt type="org.eclipse.core.resources.IWorkspaceRoot" /> </or> </enablement> </commonWizard>