def index(self, in_row, in_column, in_parent=None): if not in_parent or not in_parent.isValid(): parent = self._root else: parent = in_parent.internalPointer() if not QAbstractItemModel.hasIndex(self, in_row, in_column, in_parent): return QModelIndex() child = parent.child(in_row) if child: return QAbstractItemModel.createIndex(self, in_row, in_column, child) else: return QModelIndex()
def parent(self, in_index): if in_index.isValid(): p = in_index.internalPointer().parent() if p: return QAbstractItemModel.createIndex(self, p.row(), 0, p) return QModelIndex()