问题描述
是否有可能在月食下禁用/不显示向导
例如:文件->新建-> WizardName
同样的方法:文件->新建->其他->选择向导->向导类别名称-> WizardName
我可以通过propertyTesters来使向导不显示在Project Explorer视图中。
但是我想禁用File-> New-> WizardName ...
下的向导我们如何做到这一点?
解决方法
我确实认为您可以使用“活动框架”隐藏向导。使用org.eclipse.ui.activities
扩展点,您可以定义可以共同显示或隐藏的一组UI贡献。也可以为单个UI贡献创建扩展,例如您的向导。
您只需使用扩展名定义一个activity
元素,即可为其指定一个id
和一个name
。您还可以在活动中附加一个enabledWhen
元素,以允许您使用任何核心表达式来控制其可见性,包括test
元素,该元素允许您合并属性测试器。
<activity
id="your.plugin.id.activities.controlwizardvisiblity"
name="Control My Wizard Visibility">
<enabledWhen>
<test
property="your.property.tester.info">
</test>
</enabledWhen>
</activity>
定义活动后,您可以使用activityPatternBinding
元素向其添加UI贡献。绑定引用上面创建的活动ID,然后以以下格式指定pattern
属性:
your.plugin.id/your.contribution.id
pattern
可以是匹配许多UI贡献的正则表达式,或者如果您设置isEqualityPattern="false"
,则pattern
可以直接指定单个插件ID /贡献ID组合。在您的情况下,这可能就是您想要做的,而且看起来像这样。
<activityPatternBinding
activityId="your.plugin.id.activities.controlwizardvisiblity"
isEqualityPattern="false"
pattern="your.plugin.id/your.wizard.id">
</activityPatternBinding>