예제 #1
0
    def updatePaths(self, gui):
        model = gui.liststore
        if self.oldDnNodes:
	    oldData = LTEStatusData()
            oldData.setTopNodes(self.oldTopNodes)
            gui.getModel().setData(oldData)

            self.orderedOldDNs.reverse()
            for oldDN in self.orderedOldDNs:
                if not self.newDnNodes.get(oldDN):
                    model.row_deleted(self.getPathByNode(self.oldDnNodes.get(oldDN)))
        
	    model.setData(gui.getData())
            for newDN in self.orderedNewDNs:
                if not self.oldDnNodes.get(newDN):
                    path = self.getPathByNode(self.newDnNodes[newDN])
                    model.row_inserted(path, model.get_iter(path))
                else:
                    self.newDnNodes.get(newDN).setCheckboxValue(self.oldDnNodes.get(newDN).getCheckboxValue())
예제 #2
0
    def updatePaths(self, gui):
        model = gui.getModel()
        
        if self.oldDnNodes:
            oldData = LTEStatusData()
            oldData.setTopNodes(self.oldTopNodes)
            gui.getModel().setData(oldData)
 
	    #Updates the deleted paths
            self.orderedOldDNs.reverse()
            for oldDN in self.orderedOldDNs:
                if not self.newDnNodes.get(oldDN):
                    node = self.oldDnNodes[oldDN]
                    model.row_deleted(self.getPathByNode(node))
#                    print "------ delete path = ",self.getPathByNode(self.oldDnNodes[oldDN])," dn = ",oldDN
                    oldParent = node.getParent()
                    if oldParent:
			oldParent.getChildren().remove(node)
                        oldNodeParentPath = self.getPathByNode(self.oldDnNodes.get(oldParent.getDN()))
                        model.row_has_child_toggled(oldNodeParentPath
                                                      ,model.get_iter(oldNodeParentPath))
		    else:
                        self.oldTopNodes.remove(node)

	    self.updateIndexForTopNodes()
            self.reorderRowsForOldModel()	

            #Update the insert paths
	    model.setData(gui.getData())
            for newDN in self.orderedNewDNs:
                if not self.oldDnNodes.get(newDN):
#                    self.updateInsertPaths(self.newDnNodes[newDN], model)
                    newNode = self.newDnNodes[newDN]
                    path = self.getPathByNode(newNode)
                    model.row_inserted(path, model.get_iter(path))
#                    print"+++++++++ insert path = ",path," dn = ",newDN
                else:
                    self.newDnNodes[newDN].setCheckboxValue(self.oldDnNodes[newDN].getCheckboxValue())