Я добавил «Демо» в качестве своего настраиваемого всплывающего меню в представлении eclipse и использовал для этого «вклад зрителя». Моя видимость всплывающего меню только для типа объекта «x», тогда как я могу получить значение объекта «x» в моем классе действий?
Предполагая, что представление определяет поставщика выбора, вы можете получить активный выбор с помощью
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
ISelection selection = page.getSelection();
if (selection instanceof IStructuredSelection) {
Object selected = ((IStructuredSelection)selection).getFirstElement();
... cast selected to your object type
}
Также метод selectionChanged
вашего IViewActionDelegate
будет вызываться для каждого изменения выбора.
Спасибо за ваш ценный ответ
Точка расширения
org.eclipse.ui.popupMenus
давно устарела. Новый код должен использоватьorg.eclipse.ui.menus
.