Я реализую простую деталь E4 с TreeViewer
, поддерживаемым TreeNode
s с различными типами значений Foo
и Bar
.
Теперь я хочу добавить IOpenListener
кTreeViewer
, который выполняет команду открытия:
treeViewer.addOpenListener(event -> {
...
Object selected value = ((TreeNode) event.getSelection()).getValue();
...
});
Теперь я могу получить команду из ECommandService
и выполнить ее с помощью EHandlerService
.
Однако я хочу другой обработчик для выполнения, в зависимости от , является ли выбранное значение равным Foo
или Bar
;хотя все обработчики соответствуют одной и той же логической команде («Открыть»), фактически выполняемый обработчик должен зависеть от выбора.
Возможно ли это?