# HG changeset patch # User Dirk Olmes # Date 1314420208 -7200 # Node ID babe144491623e5d62e3c45670e5cd30b68ffaae # Parent 92194216f70d4bd41e0311b2d557470a1b08befb the entries for the selected feeds had to be set onto the item delegate so had access to the selected feed entry. Keep the list in one place only (the model) and access it from the item delegate. diff -r 92194216f70d -r babe14449162 FeedEntryItemDelegate.py --- a/FeedEntryItemDelegate.py Fri Aug 26 06:14:42 2011 +0200 +++ b/FeedEntryItemDelegate.py Sat Aug 27 06:43:28 2011 +0200 @@ -5,10 +5,13 @@ class FeedEntryItemDelegate(QtGui.QStyledItemDelegate): def __init__(self): QtGui.QStyledItemDelegate.__init__(self, None) - + def paint(self, painter, style, index): + feedEntryTableModel = index.model() row = index.row() - entry = self.entries[row] + # this makes assumptions about the type and the properties of the model but there's no + # way to get to the feedEntry using proper Qt API + entry = feedEntryTableModel.feedEntries[row] if entry.read: style.font.setWeight(QFont.Normal) else: diff -r 92194216f70d -r babe14449162 MainWindow.py --- a/MainWindow.py Fri Aug 26 06:14:42 2011 +0200 +++ b/MainWindow.py Sat Aug 27 06:43:28 2011 +0200 @@ -62,7 +62,6 @@ def setupFeedTableModel(self): model = FeedEntryTableModel(self.feedEntries) self.ui.feedEntryList.setModel(model) - self.ui.feedEntryList.itemDelegate().entries = self.feedEntries def setupFeedTableHeaderWidths(self): width = self.ui.feedEntryList.width()