Eclipse RCP: команда visibleWhen для динамического списка перспектив

Я знаю, что могу сделать команду видимой в меню для определенной точки зрения, указав элемент visibleWhen в XML плагина:

<visibleWhen checkEnabled="false">
    <with variable="activeWorkbenchWindow.activePerspective">
        <equals value="myperspective"/>
    </with>
</visibleWhen>

Но как сделать команду видимой для списка перспектив? Кроме того, можно ли использовать регулярные выражения или подстановочные знаки для сопоставления группы перспектив, которые могут добавляться динамически?

В качестве альтернативы, как я могу использовать элемент visibleWhen, чтобы скрыть команду для определенной перспективы?


person Terry    schedule 24.10.2014    source источник
comment
Любая ссылка? Как вы можете связать это в модели приложения? Благодарю. !   -  person Campa    schedule 06.09.2017


Ответы (1)


Вы можете использовать элемент <or>:

<with variable="activeWorkbenchWindow.activePerspective">
  <or>
    <equals value="myperspective"/>
    <equals value="myperspective2"/>
    .... more
  </or>
</with>

Также есть <not>, который можно использовать для исключения чего-либо.

Нет совпадений с регулярными выражениями или подстановочными знаками. Возможно, вы могли бы написать тестер свойств, используя org.eclipse.core.expressions.propertyTesters для сопоставления.

person greg-449    schedule 24.10.2014
comment
Очень просто! Я только что попробовал использовать элемент <not> с элементом <or> со списком перспектив - похоже, это не работает. Имеет ли это? Думаю, для этого мне нужно написать тестер свойств? - person Terry; 24.10.2014