annotate PreferencesDialog.py @ 145:71c5dc02ff87

move the code from FeedList into the backend class
author Dirk Olmes <dirk@xanthippe.ping.de>
date Thu, 25 Aug 2011 05:39:03 +0200
parents e830fa1cc7a2
children e8bb107a74e1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
40
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
1
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
2 from PyQt4 import QtGui
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
3 from Ui_Preferences import Ui_Preferences
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
4
42
0c0d1760b737 Rename Preferences to PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 41
diff changeset
5 class PreferencesDialog(QtGui.QDialog):
120
e830fa1cc7a2 re-enabled PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 111
diff changeset
6 def __init__(self, backend=None):
40
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
7 QtGui.QWidget.__init__(self, None)
120
e830fa1cc7a2 re-enabled PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 111
diff changeset
8 self.backend = backend
e830fa1cc7a2 re-enabled PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 111
diff changeset
9 self.preferences = backend.preferences()
40
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
10 self.ui = Ui_Preferences()
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
11 self.ui.setupUi(self)
42
0c0d1760b737 Rename Preferences to PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 41
diff changeset
12 self.fillUi()
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
13
42
0c0d1760b737 Rename Preferences to PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 41
diff changeset
14 def fillUi(self):
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
15 self.fillMaximized()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
16 self.fillHideReadFeedEntries()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
17 self.fillShowOnlyUnreadFeeds()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
18 self.fillProxySettings()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
19 self.fillDaysToKeepFeedEntries()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
20
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
21 def fillMaximized(self):
43
12ed8b5fa08c first system preference: configure app to stat maximized.
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 42
diff changeset
22 maximized = self.preferences.startMaximized()
12ed8b5fa08c first system preference: configure app to stat maximized.
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 42
diff changeset
23 self.ui.startMaximized.setChecked(maximized)
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
24
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
25 def fillHideReadFeedEntries(self):
61
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
26 hideRead = self.preferences.hideReadFeedEntries()
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
27 self.ui.hideReadFeedEntries.setChecked(hideRead)
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
28
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
29 def fillShowOnlyUnreadFeeds(self):
72
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
30 showOnlyUnreadFeeds = self.preferences.showOnlyUnreadFeeds()
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
31 self.ui.showOnlyUnreadFeeds.setChecked(showOnlyUnreadFeeds)
40
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
32
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
33 def fillProxySettings(self):
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
34 if self.preferences.isProxyConfigured():
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
35 self.ui.proxyHost.setText(self.preferences.proxyHost())
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
36 self.ui.proxyPort.setText(str(self.preferences.proxyPort()))
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
37
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
38 def fillDaysToKeepFeedEntries(self):
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
39 days = self.preferences.daysToKeepFeedEntries()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
40 self.ui.daysToKeepFeedEntries.setText(str(days))
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
41
40
c858aab71e5b add preferences dialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents:
diff changeset
42 def startMaximizedChanged(self, change):
46
03358c113170 Better preferences handling: the GUI's responsibility is to convert the input from the event into a boolean value
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 44
diff changeset
43 if change:
03358c113170 Better preferences handling: the GUI's responsibility is to convert the input from the event into a boolean value
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 44
diff changeset
44 self.preferences.setStartMaximized(True)
03358c113170 Better preferences handling: the GUI's responsibility is to convert the input from the event into a boolean value
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 44
diff changeset
45 else:
03358c113170 Better preferences handling: the GUI's responsibility is to convert the input from the event into a boolean value
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 44
diff changeset
46 self.preferences.setStartMaximized(False)
41
9fa1e33b67da use Qt resources for window icons
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 40
diff changeset
47
61
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
48 def hideReadFeedEntriesChanged(self, change):
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
49 if change:
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
50 self.preferences.setHideReadFeedEntries(True)
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
51 else:
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
52 self.preferences.setHideReadFeedEntries(False)
db35ab7753f0 add a preference to hide read feed entries
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 46
diff changeset
53
72
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
54 def showOnlyFeedsWithUnreadEntries(self, change):
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
55 if change:
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
56 self.preferences.setShowOnlyUnreadFeeds(True)
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
57 else:
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
58 self.preferences.setShowOnlyUnreadFeeds(False)
e8c2730eb444 control the display of unread feeds/all feeds via Preferences
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 61
diff changeset
59
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
60 def storeProxySettings(self):
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
61 proxyHost = self.ui.proxyHost.text()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
62 if proxyHost.isEmpty():
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
63 proxyHost = None
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
64 self.preferences.setProxyHost(proxyHost)
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
65
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
66 proxyPort = self.ui.proxyPort.text()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
67 if proxyPort.isEmpty():
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
68 proxyPort = None
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
69 self.preferences.setProxyPort(proxyPort)
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
70
111
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
71 def daysToKeepFeedEntriesFinishedEditing(self):
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
72 text = self.ui.daysToKeepFeedEntries.text()
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
73 if not text.isEmpty():
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
74 text = str(text)
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
75 self.preferences.setDaysToKeepFeedEntries(text)
c17a224bc251 make the keep interval for feeds configurable via the GUI. Fix saving the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 88
diff changeset
76
41
9fa1e33b67da use Qt resources for window icons
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 40
diff changeset
77 def accept(self):
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
78 self.storeProxySettings()
120
e830fa1cc7a2 re-enabled PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 111
diff changeset
79 self.preferences.commit();
41
9fa1e33b67da use Qt resources for window icons
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 40
diff changeset
80 QtGui.QDialog.accept(self)
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
81
41
9fa1e33b67da use Qt resources for window icons
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 40
diff changeset
82 def reject(self):
120
e830fa1cc7a2 re-enabled PreferencesDialog
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 111
diff changeset
83 self.preferences.rollback()
41
9fa1e33b67da use Qt resources for window icons
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 40
diff changeset
84 QtGui.QDialog.reject(self)
88
48d1d7bba548 UI for setting the proxy settings
Dirk Olmes <dirk@xanthippe.ping.de>
parents: 72
diff changeset
85