Fix: 删除图层/图元约束 #9
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
图层删除
当删除一个节点时,该节点一定满足且只满足以下条件中的一条:
其中,对于第1条,由于Leaf节点被删除只影响其父亲Folder的属性,所以显然在删除Leaf节点时是绝对安全的。
对于第2条,对于其父亲Folder,其被删除只影响其父亲Folder的属性,所以不会影响其父亲;对于其孩子,有可能存在以下情况:
对于第3条,必须首先手动解除其本身的引用,然后将转变为第2条。
图元删除
显然,无论是什么种类的图元,删除一个图元会影响到的元素只有引用它的图层,所以我们将SimpleElement与GroupElement合并成一种情况讨论。
当删除一个图元时,该图元一定满足且只满足以下条件中的一条:
对于第1条,删除绝对安全。
对于第2条,将引用关系手动解除后,删除安全。
待测试
关联关系解除后,图元删除的问题
引用图元的GraphicElement的所有关联LayerWrapper被删除后,GraphicElement无法被删除
步骤
创建一个组合图元GraphicElement
在创建一个Folder节点,在该节点下创建Leaf节点引用图元GraphicElement
删除 2 中创建的Folder节点
尝试删除组合图元GraphicElement,无法删除
结果图
右侧点击测试节点ABC无法选择删除