-     '''The StandardAssetItem represents a row/column cell in the Qt model. 
-     ''' 
-     SUPPORTED_ROLES = [ Qt.EditRole, Qt.DisplayRole, Qt.CheckStateRole ] 
-   
-     def __init__(self, mydata): 
-   
-         self._mydata = mydata 
-         if type(mydata) == types.BooleanType: 
-             checkstate = Qt.Unchecked 
-             if mydata == True: 
-                 checkstate = Qt.Checked 
-   
-             self.setCheckState(checkstate) 
-             self.setCheckable(True) 
-             self.setEditable(False) 
-   
-         elif type(mydata) == types.StringType: 
-             self.setText(mydata) 
-   
-         else: 
-             self.setEditable(False) 
-   
-     def setData(self, variant, role): 
-         if role not in self.SUPPORTED_ROLES: 
-   
-         value = None 
-         if role in [ Qt.EditRole, Qt.DisplayRole ]: 
-             value = variant.toPyObject() 
-             if-  type (- value ) ==-  PyQt4. QtCore- . QString:
 
-                  # convert it to a std string. 
-                  value = str(value) 
-         elif role == Qt.CheckStateRole: 
-             checkstate, okay = variant.toInt() 
-             value = checkstate == Qt.Checked 
-   
-         if self._mydata != value: 
-             self._mydata = value 
-             # and tell the world the value changed 
-   
        class StandardAssetItem(QtGui.QStandardItem):
    '''The StandardAssetItem represents a row/column cell in the Qt model.
    '''
    SUPPORTED_ROLES = [ Qt.EditRole, Qt.DisplayRole, Qt.CheckStateRole ]
    def __init__(self, mydata):
        QtGui.QStandardItem.__init__(self)
        self._mydata = mydata
        if type(mydata) == types.BooleanType:
            checkstate = Qt.Unchecked
            if mydata == True:
                checkstate = Qt.Checked
            self.setCheckState(checkstate)
            self.setCheckable(True)
            self.setEditable(False)
        elif type(mydata) == types.StringType:
            self.setText(mydata)
        else:
            self.setEditable(False)
    def setData(self, variant, role):
        if role not in self.SUPPORTED_ROLES:
            return QtGui.QStandardItem.setData(self, variant, role)
        value = None
        if role in [ Qt.EditRole, Qt.DisplayRole ]:
            value = variant.toPyObject()
            if type(value) == PyQt4.QtCore.QString:
                 # convert it to a std string.
                 value = str(value)
        elif role == Qt.CheckStateRole:
            checkstate, okay = variant.toInt()
            value = checkstate == Qt.Checked
        if self._mydata != value:
            self._mydata = value
            # and tell the world the value changed
        QtGui.QStandardItem.setData(self, variant, role)
To copy to clipboard, switch view to plain text mode 
  
Bookmarks