From fe6ac49591e10e43ac1c3ce5b9c9759ecc694a4e Mon Sep 17 00:00:00 2001 From: DrFrasierCrane Date: Sun, 16 Dec 2007 12:37:56 +0100 Subject: [PATCH] Fixed dropping nodes into other nodes, added some debug logging. --- straw/model/__init__.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/straw/model/__init__.py b/straw/model/__init__.py index bbaa5c9..d76cd4a 100644 --- a/straw/model/__init__.py +++ b/straw/model/__init__.py @@ -75,18 +75,19 @@ class Node(GObject): self.emit("parent-changed", old_value) def add_child(self, node, norder = None, allow_append = True): + debug("adding %d to %d with node.norder = %d, norder = %s" % (node.id, self.id, node.norder, str(norder))) if allow_append: - if not norder or norder >= len(self.children): + if norder == None or norder >= len(self.children): norder = len(self.children) else: if node.parent == self: if norder > len(self.children): norder = len(self.children)#raise AttributeError - if not norder: + if norder == None: norder = len(self.children) - 1 else: - if not norder: + if norder == None: norder = len(self.children) elif norder > len(self.children): norder = len(self.children) @@ -94,19 +95,21 @@ class Node(GObject): if norder < len(self.children): for child in self.children[norder:]: child.props.norder += 1 + + debug("calculated norder = %d" % (norder)) node.props.norder = norder self.append_child(node) def append_child(self, node): - debug("appending %d to %d" % (node.id, self.id)) + debug("appending %d to %d with norder = %d" % (node.id, self.id, node.norder)) insort(self.children, node) node.connect("unread-count-changed", self.on_unread_count_changed) self.props.unread_count += node.unread_count def remove_child(self, node): - debug("removing %d from %d" % (node.id, self.id)) + debug("removing %d from %d with norder = %d" % (node.id, self.id, node.norder)) for child in self.children[(node.norder + 1):]: child.props.norder -= 1 -- 2.11.4.GIT