code: def setData(self, index, value, role=QtCore.Qt.EditRole):
          
          if not index.isValid():
              return False
          item = index.internalPointer()
          r = item.set_data(index.column(), value, role)
          if r:
              self.dataChanged.emit(index, index)
          return r
docs: Set the data of the given index to value
  
          :param index: the index to set
          :type index: :class:`QtCore.QModelIndex`
          :param value: the value to set
          :param role: the role, usually edit role
          :type role: :data:`QtCore.Qt.ItemDataRole`
          :returns: True, if successfull, False if unsuccessfull
          :rtype: :class:`bool`
          :raises: None