def setData(self, index, value, role):
"""Set the role data for the item at index to value."""
if not index.isValid():
return False
node = self.getNode(index)
column = index.column()
if role == Qt.DisplayRole or role == Qt.EditRole:
if column > 0 and not node.childCount():
try:
node.setItemData(column, float(value))
except ValueError:
return False
else:
node.setItemData(column, value)
elif role == Qt.CheckStateRole:
node.setCheckState(value)
if value == Qt.Checked:
self.nodeCheckStateChanged.emit(index)
self.dataChanged.emit(index, index)
return True
评论列表
文章目录