Helpviewer/HelpWindow.py

changeset 668
b0061a6f7484
parent 653
0540f3c52b46
child 679
b427350a9d97
equal deleted inserted replaced
666:fdd568d3533d 668:b0061a6f7484
39 from .Network.NetworkAccessManager import NetworkAccessManager 39 from .Network.NetworkAccessManager import NetworkAccessManager
40 from .AdBlock.AdBlockManager import AdBlockManager 40 from .AdBlock.AdBlockManager import AdBlockManager
41 from .OfflineStorage.OfflineStorageConfigDialog import OfflineStorageConfigDialog 41 from .OfflineStorage.OfflineStorageConfigDialog import OfflineStorageConfigDialog
42 from .UserAgent.UserAgentMenu import UserAgentMenu 42 from .UserAgent.UserAgentMenu import UserAgentMenu
43 from .HelpTabWidget import HelpTabWidget 43 from .HelpTabWidget import HelpTabWidget
44 from .Download.DownloadManager import DownloadManager
44 45
45 from E5Gui.E5Action import E5Action 46 from E5Gui.E5Action import E5Action
46 from E5Gui import E5MessageBox 47 from E5Gui import E5MessageBox
47 48
48 from E5Network.E5NetworkMonitor import E5NetworkMonitor 49 from E5Network.E5NetworkMonitor import E5NetworkMonitor
77 _helpEngine = None 78 _helpEngine = None
78 _bookmarksManager = None 79 _bookmarksManager = None
79 _historyManager = None 80 _historyManager = None
80 _passwordManager = None 81 _passwordManager = None
81 _adblockManager = None 82 _adblockManager = None
83 _downloadManager = None
82 84
83 def __init__(self, home, path, parent, name, fromEric = False, 85 def __init__(self, home, path, parent, name, fromEric = False,
84 initShortcutsOnly = False, searchWord = None): 86 initShortcutsOnly = False, searchWord = None):
85 """ 87 """
86 Constructor 88 Constructor
1073 )) 1075 ))
1074 if not self.initShortcutsOnly: 1076 if not self.initShortcutsOnly:
1075 self.toolsMonitorAct.triggered[()].connect(self.__showNetworkMonitor) 1077 self.toolsMonitorAct.triggered[()].connect(self.__showNetworkMonitor)
1076 self.__actions.append(self.toolsMonitorAct) 1078 self.__actions.append(self.toolsMonitorAct)
1077 1079
1080 self.showDownloadManagerAct = E5Action(self.trUtf8('Downloads'),
1081 self.trUtf8('Downloads'),
1082 0, 0, self, 'help_show_downloads')
1083 self.showDownloadManagerAct.setStatusTip(self.trUtf8(
1084 'Shows the downloads window'))
1085 self.showDownloadManagerAct.setWhatsThis(self.trUtf8(
1086 """<b>Downloads</b>"""
1087 """<p>Shows the downloads window.</p>"""
1088 ))
1089 if not self.initShortcutsOnly:
1090 self.showDownloadManagerAct.triggered[()].connect(self.__showDownloadsWindow)
1091 self.__actions.append(self.showDownloadManagerAct)
1092
1078 self.backAct.setEnabled(False) 1093 self.backAct.setEnabled(False)
1079 self.forwardAct.setEnabled(False) 1094 self.forwardAct.setEnabled(False)
1080 1095
1081 # now read the keyboard shortcuts for the actions 1096 # now read the keyboard shortcuts for the actions
1082 Shortcuts.readShortcuts(helpViewer = self) 1097 Shortcuts.readShortcuts(helpViewer = self)
1201 menu.setTearOffEnabled(True) 1216 menu.setTearOffEnabled(True)
1202 menu.addAction(self.toolsMonitorAct) 1217 menu.addAction(self.toolsMonitorAct)
1203 1218
1204 menu = mb.addMenu(self.trUtf8("&Window")) 1219 menu = mb.addMenu(self.trUtf8("&Window"))
1205 menu.setTearOffEnabled(True) 1220 menu.setTearOffEnabled(True)
1221 menu.addAction(self.showDownloadManagerAct)
1222 menu.addSeparator()
1206 menu.addAction(self.showTocAct) 1223 menu.addAction(self.showTocAct)
1207 menu.addAction(self.showIndexAct) 1224 menu.addAction(self.showIndexAct)
1208 menu.addAction(self.showSearchAct) 1225 menu.addAction(self.showSearchAct)
1209 1226
1210 mb.addSeparator() 1227 mb.addSeparator()
1580 saved and all window references have been deleted. 1597 saved and all window references have been deleted.
1581 """ 1598 """
1582 if not self.tabWidget.shallShutDown(): 1599 if not self.tabWidget.shallShutDown():
1583 e.ignore() 1600 e.ignore()
1584 return 1601 return
1602
1603 if not self.downloadManager().allowQuit():
1604 e.ignore()
1605 return
1606
1607 self.downloadManager().shutdown()
1585 1608
1586 self.__closeNetworkMonitor() 1609 self.__closeNetworkMonitor()
1587 1610
1588 self.cookieJar().close() 1611 self.cookieJar().close()
1589 1612
2186 """ 2209 """
2187 Private slot to clear the private data. 2210 Private slot to clear the private data.
2188 """ 2211 """
2189 dlg = HelpClearPrivateDataDialog(self) 2212 dlg = HelpClearPrivateDataDialog(self)
2190 if dlg.exec_() == QDialog.Accepted: 2213 if dlg.exec_() == QDialog.Accepted:
2191 history, searches, favicons, cache, cookies, passwords, databases = \ 2214 # browsing history, search history, favicons, disk cache, cookies,
2215 # passwords, web databases, downloads
2216 history, searches, favicons, cache, cookies,
2217 passwords, databases, downloads = \
2192 dlg.getData() 2218 dlg.getData()
2193 # browsing history, search history, favicons, disk cache, cookies,
2194 # passwords, web databases
2195 if history: 2219 if history:
2196 self.historyManager().clear() 2220 self.historyManager().clear()
2197 if searches: 2221 if searches:
2198 self.searchEdit.clear() 2222 self.searchEdit.clear()
2223 if downloads:
2224 self.downloadManager().cleanup()
2225 self.downloadManager().hide()
2199 if favicons: 2226 if favicons:
2200 self.__clearIconsDatabase() 2227 self.__clearIconsDatabase()
2201 if cache: 2228 if cache:
2202 try: 2229 try:
2203 self.networkAccessManager().cache().clear() 2230 self.networkAccessManager().cache().clear()
2252 Private slot to show the network monitor dialog. 2279 Private slot to show the network monitor dialog.
2253 """ 2280 """
2254 monitor = E5NetworkMonitor.instance(self.networkAccessManager()) 2281 monitor = E5NetworkMonitor.instance(self.networkAccessManager())
2255 monitor.show() 2282 monitor.show()
2256 2283
2284 def __showDownloadsWindow(self):
2285 """
2286 Private slot to show the downloads dialog.
2287 """
2288 self.downloadManager().show()
2289
2257 def __closeNetworkMonitor(self): 2290 def __closeNetworkMonitor(self):
2258 """ 2291 """
2259 Private slot to close the network monitor dialog. 2292 Private slot to close the network monitor dialog.
2260 """ 2293 """
2261 E5NetworkMonitor.closeMonitor() 2294 E5NetworkMonitor.closeMonitor()
2373 if cls._adblockManager is None: 2406 if cls._adblockManager is None:
2374 cls._adblockManager = AdBlockManager() 2407 cls._adblockManager = AdBlockManager()
2375 2408
2376 return cls._adblockManager 2409 return cls._adblockManager
2377 2410
2411 @classmethod
2412 def downloadManager(cls):
2413 """
2414 Class method to get a reference to the download manager.
2415
2416 @return reference to the password manager (DownloadManager)
2417 """
2418 if cls._downloadManager is None:
2419 cls._downloadManager = DownloadManager()
2420
2421 return cls._downloadManager
2422
2378 def openSearchManager(self): 2423 def openSearchManager(self):
2379 """ 2424 """
2380 Public method to get a reference to the opensearch manager object. 2425 Public method to get a reference to the opensearch manager object.
2381 2426
2382 @return reference to the opensearch manager object (OpenSearchManager) 2427 @return reference to the opensearch manager object (OpenSearchManager)

eric ide

mercurial