view DisplayModel.py @ 72:e8c2730eb444

control the display of unread feeds/all feeds via Preferences
author Dirk Olmes <dirk@xanthippe.ping.de>
date Wed, 11 Aug 2010 03:23:02 +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()