view DisplayModel.py @ 85:479e8c06de49

look at the bozo value of the result to determine if something went wrong with the HTTP call
author Dirk Olmes <dirk@xanthippe.ping.de>
date Thu, 09 Sep 2010 16:36:29 +0200
parents c8bb3cee7935
children 04a730f9d07d
line wrap: on
line source


from PyQt4.QtCore import QAbstractListModel, QModelIndex, QVariant, Qt

class DisplayModel(QAbstractListModel):
    def __init__(self, parent=None, list=None, displayFunction=None, **args):
        QAbstractListModel.__init__(self, parent, *args)
        self.list = list
        self.displayFunction = displayFunction
                
    def rowCount(self, parent=QModelIndex()):
        return len(self.list)
    
    def data(self, index, role): 
        if index.isValid() and role == Qt.DisplayRole:
            row = index.row()
            object = self.list[row]
            displayString = self.displayFunction(object)
            return QVariant(displayString)
        else: 
            return QVariant()