diff MainWindowController.py @ 19:6f7003fc6e6d

display the summary of the selected feed entry
author Dirk Olmes <dirk@xanthippe.ping.de>
date Wed, 28 Apr 2010 04:00:30 +0200
parents 35225588b895
children c8bb3cee7935
line wrap: on
line diff
--- a/MainWindowController.py	Wed Apr 28 03:46:47 2010 +0200
+++ b/MainWindowController.py	Wed Apr 28 04:00:30 2010 +0200
@@ -2,7 +2,7 @@
 from Feed import Feed
 from FeedEntry import FeedEntry
 from PyQt4 import QtCore, QtGui
-from PyQt4.QtCore import QAbstractListModel, QModelIndex, QVariant, Qt
+from PyQt4.QtCore import QAbstractListModel, QModelIndex, QVariant, Qt, QUrl
 from Ui_MainWindow import Ui_MainWindow
 
 class MainWindowController(QtGui.QMainWindow):
@@ -24,13 +24,19 @@
         self.connect(self.ui.feedList, QtCore.SIGNAL("clicked(QModelIndex)"), self.feedSelected)
         
     def setupFeedEntryList(self):
-        pass
+        self.connect(self.ui.feedEntryList, QtCore.SIGNAL("clicked(QModelIndex)"), self.feedEntrySelected)
         
     def feedSelected(self, index):
-        feed = self.allFeeds[index.row()]
-        model = DisplayModel(self, feed.entries, FeedEntry.userPresentableString)
+        self.selectedFeed = self.allFeeds[index.row()]
+        model = DisplayModel(self, self.selectedFeed.entries, FeedEntry.userPresentableString)
         self.ui.feedEntryList.setModel(model)
         self.ui.feedEntryList.update()
+        
+    def feedEntrySelected(self, index):
+        row = index.row()
+        entry = self.selectedFeed.entries[row]
+        baseUrl = QUrl(entry.link) # TODO this is the wrong base url, figure out the correct one
+        self.ui.webView.setHtml(entry.summary, baseUrl)
 
 class DisplayModel(QAbstractListModel):
     def __init__(self, parent=None, list=None, displayFunction=None, **args):