ILOG DiagramEditor的一个Bug

ILOG很强大,不过我最近发觉它的DiagramEditor有一个Bug。正常状态前面添加的节点始终位于后面添加的节点之上,这当然没问题。但在选择编辑状态下当前选择的节点应该位于其它节点的上面,不然当前节点有可能会被遮挡,不方便查看编辑。ILOG安装目录下的所有与DiagramEditor相关的实例都存在这个问题,可能官方不把这视为一个Bug吧。

要修正这个问题方法很简单,看下面的示例代码:

public class DiagramEditorEx extends DiagramEditor
{
    public function DiagramEditorEx()
    {
      addEventListener(DiagramEditorEvent.EDITOR_SELECTION_CHANGED, editorMoveHandler); 
    }

    protected function editorMoveHandler(event:DiagramEditorEvent):void
    {
      event.target.bringToFront();  
    }
}

我们扩展了DiagramEditor类,然后只需在处理editorSelectionChange事件的侦听器函数中调用DiagramEditor实例的bringToFront()方法就行了。

发表评论