Мне нужно скрыть пункты меню (Файл -> Выход), которые не имеют отношения к мне. Я мог бы сделать это, используя расширение org.eclipse.ui.activities. Следующий код прекрасно работает:
<activity
description="Capability to filter all menus not relevant to the product"
id="com.xxx.productspecific.filter.menus"
name="Common UI Filter for menus">
</activity>
<activityPatternBinding
activityId="com.xxx.productspecific.filter.menus"
isEqualityPattern="true"
pattern="org.eclipse.ui.file.exit">
</activityPatternBinding>`
Теперь мне нужно сделать эту работу на основе некоторых условий. У меня есть программный аргумент (или аргумент командной строки) "targetEnv = FDK". Меню должно быть скрыто только при наличии этого аргумента. Я попробовал приведенное ниже для того же, но пункты меню по-прежнему скрыты, независимо от того, что я предоставляю в аргументе.
<activity
description="Capability to filter all menus not relevant to the product"
id="com.xxx.productspecific.filter.menus"
name="Common UI Filter for menus">
<enabledWhen>
<with
variable="%targetEnv">
<equals
value="FDK">
</equals>
</with>
</enabledWhen>
Это правильный способ использования аргумента программы в плагине. xml?