def row_item(display_value, item_values=None): """Generate a cell item for a given row.""" if not item_values: item_values = {} item = QtGui.QStandardItem() item.setData(display_value, Qt.DisplayRole) for role, value in item_values.items(): item.setData(value, role) return item
def standarditem_from_rowgroup(rowgroup): item = QtGui.QStandardItem(rowgroup.name) icon, _ = gui.attributeItem(rowgroup.var) item.setIcon(icon) item.setToolTip(guiutils.variable_tooltip(rowgroup.var)) item.setData(rowgroup, Qt.UserRole) item.setFlags(item.flags() & ~Qt.ItemIsEditable) children = [guiutils.standarditem_from(val) for val in rowgroup.values] item.appendRows(children) return item
def standarditem_from_columngroup(colgroup): item = QtGui.QStandardItem(colgroup.name) # item.setIcon(pkg_path('columnset.svg')) item.setToolTip("Split by column label: '{!s}'" .format(escape(colgroup.name))) item.setFlags(item.flags() & ~Qt.ItemIsEditable) item.setData(colgroup, Qt.UserRole) children = [guiutils.standarditem_from(val) for val in colgroup.values] item.appendRows(children) return item
def standarditem_from_var(var): item = QtGui.QStandardItem(var.name) _, icon = _gui.attributeItem(var) item.setIcon(icon) item.setToolTip(itemmodels.Variable)
def standarditem_from(obj): item = QtGui.QStandardItem(str(obj)) item.setData(obj, Qt.UserRole) item.setFlags(item.flags() & ~Qt.ItemIsEditable) return item