您好,是否可以在 eclipse 下禁用/不显示向导

Hi, is it possible to disable / not show a wizard under eclipse

是否可以在 eclipse 下禁用/不显示向导

例如:文件 -> 新建 -> WizardName
同样的方法:文件 -> 新建 -> 其他 -> Select 向导 -> 向导类别名称 -> WizardName

我可以通过 propertyTesters 使向导不显示在 Project Explorer 视图中。

但我想在文件 -> 新建 -> WizardName 下禁用向导...

我们如何做到这一点?

我认为您可以使用活动框架隐藏您的向导。 org.eclipse.ui.activities 扩展点允许您定义一组可以集中显示或隐藏的 UI 贡献。也可以为单个 UI 贡献创建扩展,就像您的向导一样。

您只需使用扩展定义一个 activity 元素,给它一个 id 和一个 name。您还可以将 enabledWhen 元素附加到 activity,允许您使用任何核心表达式控制其可见性,包括允许您合并 属性 测试器的 test 元素.

<activity
    id="your.plugin.id.activities.controlwizardvisiblity"
    name="Control My Wizard Visibility">
    <enabledWhen>
        <test
              property="your.property.tester.info">
        </test>
     </enabledWhen>
</activity>

定义 activity 后,您可以使用 activityPatternBinding 元素将 UI 贡献附加到它。该绑定引用上面创建的 activity id,然后指定一个 pattern 属性,格式为:

your.plugin.id/your.contribution.id

pattern可以是匹配多个UI贡献的正则表达式,或者如果设置isEqualityPattern="false"pattern可以直接指定单个插件id/contribution id组合。在你的情况下,这可能就是你想要做的,它看起来像这样。

<activityPatternBinding
    activityId="your.plugin.id.activities.controlwizardvisiblity"
    isEqualityPattern="false"
    pattern="your.plugin.id/your.wizard.id">
</activityPatternBinding>