java - 抽象图形编辑部分的单选和火选

标签 java eclipse-plugin eclipse-gef

我有一个 AbstractDecolatedTextEditor,它有一个包含 AbstractGraphicalEditPart 组件的选项卡。

我想要

1) 选择单个组件。如果我选择一个组件,则未选择其他组件

2)当我选择一个组件时,我想触发 Eclipse 的选择监听器。因为这个监听器会改变Eclipse的属性 View 。

我尝试了 2 号代码,但不起作用。

((IFigure) componentFigure).addMouseListener(new MouseAdapter() {
    @Override
    public void mousePressed(MouseEvent arg0) {
        ComponentEditPart.this.setSelected(SELECTED);
        fireSelectionChanged();
        super.mousePressed(arg0);
    }
}

最佳答案

GEF 中有一个选择监听器,但它位于 EditPartViewer 上。将 ISelectionChangedListener 添加到图形查看器。每个编辑部分都有一个方法#getViewer()(即AbstractGraphicalEditPart#getViewer())。

graphicalEditPart.getViewer().addSelectionChangedListener(new ISelectionChangedListener() {
public void selectionChanged(SelectionChangedEvent event) {
// TODO: implement it to handle selection change
}
}};

关于java - 抽象图形编辑部分的单选和火选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29167352/

相关文章:

java - 将arraylist写入数据库java

java - 如何为黑莓手机制作注销菜单按钮

java - 在 Spring 中使用哪种传播?

eclipse-plugin - Eclipse 中的插件配置

java - 如何将 JAR 添加到我正在开发的 Eclipse 插件中?

eclipse - 将 zest 库添加到 Eclipse 4 应用程序

java - lambda 表达式每次执行时都会在堆上创建一个对象吗?

eclipse-plugin - Eclipse 是否有类似 StyleCop 的插件?

java - 用于 Eclipse 的 JBPM 3 插件和用于 Eclipse 的 JPBM 4 插件中的弯曲点有什么区别?

java - 如何在使用 GEF 为 Eclipse 插件生成的图形中获取定向箭头(用于边)?