Helpviewer/HelpWindow.py

changeset 1626
a77c8ea8582c
parent 1620
8172cc5d4dda
child 1645
73904ca06d2d
equal deleted inserted replaced
1625:4f03e45703e9 1626:a77c8ea8582c
49 from .HelpTabWidget import HelpTabWidget 49 from .HelpTabWidget import HelpTabWidget
50 from .Download.DownloadManager import DownloadManager 50 from .Download.DownloadManager import DownloadManager
51 from .VirusTotalApi import VirusTotalAPI 51 from .VirusTotalApi import VirusTotalAPI
52 from .Feeds.FeedsManager import FeedsManager 52 from .Feeds.FeedsManager import FeedsManager
53 from .SiteInfo.SiteInfoDialog import SiteInfoDialog 53 from .SiteInfo.SiteInfoDialog import SiteInfoDialog
54 from .Sync.SyncManager import SyncManager
54 55
55 from E5Gui.E5Action import E5Action 56 from E5Gui.E5Action import E5Action
56 from E5Gui import E5MessageBox, E5FileDialog 57 from E5Gui import E5MessageBox, E5FileDialog
57 58
58 from E5Network.E5NetworkMonitor import E5NetworkMonitor 59 from E5Network.E5NetworkMonitor import E5NetworkMonitor
92 _passwordManager = None 93 _passwordManager = None
93 _adblockManager = None 94 _adblockManager = None
94 _downloadManager = None 95 _downloadManager = None
95 _feedsManager = None 96 _feedsManager = None
96 _userAgentsManager = None 97 _userAgentsManager = None
98 _syncManager = None
97 99
98 def __init__(self, home, path, parent, name, fromEric=False, 100 def __init__(self, home, path, parent, name, fromEric=False,
99 initShortcutsOnly=False, searchWord=None): 101 initShortcutsOnly=False, searchWord=None):
100 """ 102 """
101 Constructor 103 Constructor
195 self.__initMenus() 197 self.__initMenus()
196 self.__initToolbars() 198 self.__initToolbars()
197 199
198 self.historyManager() 200 self.historyManager()
199 201
202 self.syncManager()
203
200 self.tabWidget.newBrowser(home) 204 self.tabWidget.newBrowser(home)
201 self.tabWidget.currentBrowser().setFocus() 205 self.tabWidget.currentBrowser().setFocus()
202 206
203 self.__class__.helpwindows.append(self) 207 self.__class__.helpwindows.append(self)
204 208
1213 if not self.initShortcutsOnly: 1217 if not self.initShortcutsOnly:
1214 self.userAgentManagerAct.triggered[()].connect( 1218 self.userAgentManagerAct.triggered[()].connect(
1215 self.__showUserAgentsDialog) 1219 self.__showUserAgentsDialog)
1216 self.__actions.append(self.userAgentManagerAct) 1220 self.__actions.append(self.userAgentManagerAct)
1217 1221
1222 self.synchronizationAct = E5Action(self.trUtf8('Synchronize data'),
1223 UI.PixmapCache.getIcon("sync.png"),
1224 self.trUtf8('&Synchronize Data...'),
1225 0, 0, self, 'help_synchronize_data')
1226 self.synchronizationAct.setStatusTip(self.trUtf8(
1227 'Shows a dialog to synchronize data via the network'))
1228 self.synchronizationAct.setWhatsThis(self.trUtf8(
1229 """<b>Synchronize Data...</b>"""
1230 """<p>This shows a dialog to synchronize data via the network.</p>"""
1231 ))
1232 if not self.initShortcutsOnly:
1233 self.synchronizationAct.triggered[()].connect(
1234 self.__showSyncDialog)
1235 self.__actions.append(self.synchronizationAct)
1236
1218 self.backAct.setEnabled(False) 1237 self.backAct.setEnabled(False)
1219 self.forwardAct.setEnabled(False) 1238 self.forwardAct.setEnabled(False)
1220 1239
1221 # now read the keyboard shortcuts for the actions 1240 # now read the keyboard shortcuts for the actions
1222 Shortcuts.readShortcuts(helpViewer=self) 1241 Shortcuts.readShortcuts(helpViewer=self)
1344 menu = mb.addMenu(self.trUtf8("&Tools")) 1363 menu = mb.addMenu(self.trUtf8("&Tools"))
1345 menu.setTearOffEnabled(True) 1364 menu.setTearOffEnabled(True)
1346 menu.addAction(self.feedsManagerAct) 1365 menu.addAction(self.feedsManagerAct)
1347 menu.addAction(self.siteInfoAct) 1366 menu.addAction(self.siteInfoAct)
1348 menu.addSeparator() 1367 menu.addSeparator()
1368 menu.addAction(self.synchronizationAct)
1369 menu.addSeparator()
1349 menu.addAction(self.toolsMonitorAct) 1370 menu.addAction(self.toolsMonitorAct)
1350 1371
1351 menu = mb.addMenu(self.trUtf8("&Window")) 1372 menu = mb.addMenu(self.trUtf8("&Window"))
1352 menu.setTearOffEnabled(True) 1373 menu.setTearOffEnabled(True)
1353 menu.addAction(self.showDownloadManagerAct) 1374 menu.addAction(self.showDownloadManagerAct)
1430 toolstb = self.addToolBar(self.trUtf8("Tools")) 1451 toolstb = self.addToolBar(self.trUtf8("Tools"))
1431 toolstb.setObjectName("ToolsToolBar") 1452 toolstb.setObjectName("ToolsToolBar")
1432 toolstb.setIconSize(UI.Config.ToolBarIconSize) 1453 toolstb.setIconSize(UI.Config.ToolBarIconSize)
1433 toolstb.addAction(self.feedsManagerAct) 1454 toolstb.addAction(self.feedsManagerAct)
1434 toolstb.addAction(self.siteInfoAct) 1455 toolstb.addAction(self.siteInfoAct)
1456 toolstb.addSeparator()
1457 toolstb.addAction(self.synchronizationAct)
1435 1458
1436 helptb = self.addToolBar(self.trUtf8("Help")) 1459 helptb = self.addToolBar(self.trUtf8("Help"))
1437 helptb.setObjectName("HelpToolBar") 1460 helptb.setObjectName("HelpToolBar")
1438 helptb.setIconSize(UI.Config.ToolBarIconSize) 1461 helptb.setIconSize(UI.Config.ToolBarIconSize)
1439 helptb.addAction(self.whatsThisAct) 1462 helptb.addAction(self.whatsThisAct)
1857 1880
1858 self.adblockManager().close() 1881 self.adblockManager().close()
1859 1882
1860 self.userAgentsManager().close() 1883 self.userAgentsManager().close()
1861 1884
1885 self.syncManager().close()
1886
1862 self.searchEdit.openSearchManager().close() 1887 self.searchEdit.openSearchManager().close()
1863 1888
1864 self.__searchEngine.cancelIndexing() 1889 self.__searchEngine.cancelIndexing()
1865 self.__searchEngine.cancelSearching() 1890 self.__searchEngine.cancelSearching()
1866 1891
2892 from .UserAgent.UserAgentsDialog import UserAgentsDialog 2917 from .UserAgent.UserAgentsDialog import UserAgentsDialog
2893 2918
2894 dlg = UserAgentsDialog(self) 2919 dlg = UserAgentsDialog(self)
2895 dlg.exec_() 2920 dlg.exec_()
2896 2921
2922 @classmethod
2923 def syncManager(cls):
2924 """
2925 Class method to get a reference to the data synchronization manager.
2926
2927 @return reference to the data synchronization manager (SyncManager)
2928 """
2929 if cls._syncManager is None:
2930 cls._syncManager = SyncManager()
2931
2932 return cls._syncManager
2933
2934 def __showSyncDialog(self):
2935 """
2936 Private slot to show the synchronization dialog.
2937 """
2938 self.syncManager().showSyncDialog()
2939
2897 ########################################################################### 2940 ###########################################################################
2898 ## Interface to VirusTotal below ## 2941 ## Interface to VirusTotal below ##
2899 ########################################################################### 2942 ###########################################################################
2900 2943
2901 def __virusTotalSearchChanged(self, txt): 2944 def __virusTotalSearchChanged(self, txt):

eric ide

mercurial