ItEr16S11CUCreacionDeOrganizacionsDeTraballoItEr15S06: Fix bug drag treerow to treeroot

This commit is contained in:
Diego Pino Garcia 2009-07-08 17:49:31 +02:00 committed by Javier Moran Rua
parent 6f911ae510
commit 980877ea76
2 changed files with 19 additions and 4 deletions

View file

@ -100,13 +100,23 @@ public class OrderElementTreeController extends GenericForwardComposer {
public void move(Component dropedIn, Component dragged) {
snapshotOfOpenedNodes = TreeViewStateSnapshot.snapshotOpened(tree);
SimpleTreeNode fromNode, toNode;
Treerow from = (Treerow) dragged;
Treerow to = (Treerow) dropedIn;
SimpleTreeNode fromNode = (SimpleTreeNode) ((Treeitem) from.getParent())
fromNode = (SimpleTreeNode) ((Treeitem) from.getParent())
.getValue();
SimpleTreeNode toNode = (SimpleTreeNode) ((Treeitem) to.getParent())
if (dropedIn instanceof Tree) {
getOrderElementTreeModel().moveToRoot(fromNode);
}
if (dropedIn instanceof Treerow) {
Treerow to = (Treerow) dropedIn;
toNode = (SimpleTreeNode) ((Treeitem) to.getParent())
.getValue();
getOrderElementTreeModel().move(fromNode, toNode);
getOrderElementTreeModel().move(fromNode, toNode);
}
Util.reloadBindings(tree);
}

View file

@ -144,6 +144,11 @@ public class OrderElementTreeModel extends SimpleTreeModel {
reloadFromOrder();
}
public void moveToRoot(SimpleTreeNode toBeMoved) {
moveImpl(toBeMoved, getRootAsNode(), 0);
reloadFromOrder();
}
private void moveImpl(SimpleTreeNode toBeMoved, SimpleTreeNode destination,
int position) {
if (destination.getChildren().contains(toBeMoved)) {