X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fnet%2Fpterodactylus%2Futil%2Fswing%2FSortableTreeNode.java;h=01cc3b153d37ef400b77518cbbfa6e209251cd02;hb=230cebfd3b10b2b134d7525786b9cef7884d8da6;hp=dbdeb6832713621d8b74dd4745e35460bb2e3232;hpb=dc77498d76f44c218603e026b825b389865bba73;p=jSite2.git diff --git a/src/net/pterodactylus/util/swing/SortableTreeNode.java b/src/net/pterodactylus/util/swing/SortableTreeNode.java index dbdeb68..01cc3b1 100644 --- a/src/net/pterodactylus/util/swing/SortableTreeNode.java +++ b/src/net/pterodactylus/util/swing/SortableTreeNode.java @@ -139,6 +139,13 @@ public class SortableTreeNode implements MutableTreeNode { return children.isEmpty(); } + /** + * {@inheritDoc} + */ + public Enumeration children() { + return Collections.enumeration(children); + } + // // ACTIONS // @@ -159,13 +166,14 @@ public class SortableTreeNode implements MutableTreeNode { */ public void insert(MutableTreeNode child, int index) { children.add(index, child); + child.setParent(this); } /** * {@inheritDoc} */ public void remove(int index) { - children.remove(index); + children.remove(index).setParent(null); } /** @@ -173,6 +181,7 @@ public class SortableTreeNode implements MutableTreeNode { */ public void remove(MutableTreeNode node) { children.remove(node); + node.setParent(null); } /** @@ -186,6 +195,16 @@ public class SortableTreeNode implements MutableTreeNode { } /** + * Removes all children of this node. + */ + public void removeAll() { + for (MutableTreeNode childNode: children) { + childNode.setParent(null); + } + children.clear(); + } + + /** * {@inheritDoc} */ public void setParent(MutableTreeNode newParent) { @@ -235,13 +254,6 @@ public class SortableTreeNode implements MutableTreeNode { /** * {@inheritDoc} */ - public Enumeration children() { - return Collections.enumeration(children); - } - - /** - * {@inheritDoc} - */ @Override public String toString() { return (userObject != null) ? userObject.toString() : null;