def paint(self, painter, option, index): painter.save() painter.setPen(QtGui.QPen(QtCore.Qt.NoPen)) if option.state & QtGui.QStyle.State_Selected: painter.setBrush( QtGui.QBrush(self.parent().palette().highlight().color())) else: painter.setBrush(QtGui.QBrush(QtCore.Qt.white)) painter.drawRect(option.rect) painter.setPen(QtGui.QPen(QtCore.Qt.black)) painter.drawText(option.rect, QtCore.Qt.AlignLeft | QtCore.Qt.AlignCenter, index.data()) painter.restore()
def paint(self, painter, option, index): if index.column() > 2: super(SpectralModelsTableDelegate, self).paint(painter, option, index) return None painter.save() # set background color painter.setPen(QtGui.QPen(QtCore.Qt.NoPen)) if option.state & QtGui.QStyle.State_Selected: painter.setBrush( QtGui.QBrush(self.parent().palette().highlight().color())) else: # Does this row have a conflict? conflicts = self.session._spectral_model_conflicts conflict_indices = np.hstack([sum([], conflicts)]) row = index.row() if row in conflict_indices: for i, conflict in enumerate(conflicts): if row in conflict: color = _COLORS[i % len(_COLORS)] break painter.setBrush(QtGui.QBrush(QtGui.QColor(color))) else: painter.setBrush(QtGui.QBrush(QtCore.Qt.white)) painter.drawRect(option.rect) # set text color painter.setPen(QtGui.QPen(QtCore.Qt.black)) painter.drawText(option.rect, QtCore.Qt.AlignLeft | QtCore.Qt.AlignCenter, index.data()) painter.restore()