Чистое использование E4 activeWhen Expression

Я перевожу свой E3 в чистое приложение E4. Приложение E3 использовало выражение activeWhen-Core в сочетании с propertyTesters для включения / выключения ToolItems в реальном времени. Теперь в E4 поддерживается только выражение VisibleWhen Core Expression (верно?).

Буду ли я делать это с @CanExecute-Annotation сейчас или есть (скрытый) activeWhen Expression? И если да, могу ли я использовать уже существующие тестеры в этом случае, или было бы лучше использовать новый подход (как и индивидуальный тест для отдельных случаев)?

1 ответ

Решение

Нет активного выражения при e4.

Если вы определяете обработчик для команды в основной таблице обработчиков в Application.e4xmi, то он активен везде, и вам придется использовать его @CanExecute контролировать, если ToolItem/MenuItem включен.

Альтернативой является определение обработчика для команды в таблице обработчиков для детали (или окна). Тогда ToolItem/MenuItem будет активен, только если для активной части и ее обработчика определен обработчик @CanExecute возвращает истину.

Другие вопросы по тегам