+ def insertChildren(self, position, count, columns):
+ if position < 0 or position > len(self.childItems):
+ return False
+
+ for row in range(count):
+ data = self.data(columns)
+ item = TreeItem(data, self)
+ self.childItems.insert(position, item)
+
+ return True
+
+ def insertColumns(self, position, columns):
+ if position < 0 or position > len(self.itemData):
+ return False
+
+ for column in range(columns):
+ self.itemData.insert(position, QVariant())
+
+ for child in self.childItems:
+ child.insertColumns(position, columns)
+
+ return True
+
+ def setData(self, column, value):
+ if column < 0 or column >= len(self.itemData):
+ return False
+
+ self.itemData[column] = value
+ return True
+