嗨,是否有可能在Eclipse下禁用/不显示向导

问题描述

是否有可能在月食下禁用/不显示向导

例如:文件->新建-> 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>