13 from PyQt4.QtGui import QAbstractProxyModel, QSortFilterProxyModel, QMenu |
13 from PyQt4.QtGui import QAbstractProxyModel, QSortFilterProxyModel, QMenu |
14 |
14 |
15 from E5Gui.E5ModelMenu import E5ModelMenu |
15 from E5Gui.E5ModelMenu import E5ModelMenu |
16 from E5Gui import E5MessageBox |
16 from E5Gui import E5MessageBox |
17 |
17 |
18 import Helpviewer.HelpWindow |
|
19 |
|
20 from .HistoryModel import HistoryModel |
18 from .HistoryModel import HistoryModel |
21 from .HistoryDialog import HistoryDialog |
|
22 from .HistoryFilterModel import HistoryFilterModel |
|
23 |
19 |
24 import UI.PixmapCache |
20 import UI.PixmapCache |
25 |
21 |
26 |
22 |
27 class HistoryMenuModel(QAbstractProxyModel): |
23 class HistoryMenuModel(QAbstractProxyModel): |
224 |
220 |
225 @param left index of left item (QModelIndex) |
221 @param left index of left item (QModelIndex) |
226 @param right index of right item (QModelIndex) |
222 @param right index of right item (QModelIndex) |
227 @return true, if left is less than right (boolean) |
223 @return true, if left is less than right (boolean) |
228 """ |
224 """ |
|
225 from .HistoryFilterModel import HistoryFilterModel |
229 frequency_L = \ |
226 frequency_L = \ |
230 self.sourceModel().data(left, HistoryFilterModel.FrequencyRole) |
227 self.sourceModel().data(left, HistoryFilterModel.FrequencyRole) |
231 dateTime_L = \ |
228 dateTime_L = \ |
232 self.sourceModel().data(left, HistoryModel.DateTimeRole) |
229 self.sourceModel().data(left, HistoryModel.DateTimeRole) |
233 frequency_R = \ |
230 frequency_R = \ |
300 Public method to add any actions before the tree. |
297 Public method to add any actions before the tree. |
301 |
298 |
302 @return flag indicating if any actions were added (boolean) |
299 @return flag indicating if any actions were added (boolean) |
303 """ |
300 """ |
304 if self.__historyManager is None: |
301 if self.__historyManager is None: |
|
302 import Helpviewer.HelpWindow |
305 self.__historyManager = Helpviewer.HelpWindow.HelpWindow.historyManager() |
303 self.__historyManager = Helpviewer.HelpWindow.HelpWindow.historyManager() |
306 self.__historyMenuModel = \ |
304 self.__historyMenuModel = \ |
307 HistoryMenuModel(self.__historyManager.historyTreeModel(), self) |
305 HistoryMenuModel(self.__historyManager.historyTreeModel(), self) |
308 self.setModel(self.__historyMenuModel) |
306 self.setModel(self.__historyMenuModel) |
309 |
307 |
353 |
351 |
354 def __showHistoryDialog(self): |
352 def __showHistoryDialog(self): |
355 """ |
353 """ |
356 Private slot to show the history dialog. |
354 Private slot to show the history dialog. |
357 """ |
355 """ |
|
356 from .HistoryDialog import HistoryDialog |
358 dlg = HistoryDialog(self) |
357 dlg = HistoryDialog(self) |
359 dlg.setAttribute(Qt.WA_DeleteOnClose) |
358 dlg.setAttribute(Qt.WA_DeleteOnClose) |
360 dlg.newUrl.connect(self.newUrl) |
359 dlg.newUrl.connect(self.newUrl) |
361 dlg.openUrl.connect(self.openUrl) |
360 dlg.openUrl.connect(self.openUrl) |
362 dlg.show() |
361 dlg.show() |
376 Private slot to populate the closed tabs menu. |
375 Private slot to populate the closed tabs menu. |
377 """ |
376 """ |
378 fm = self.__closedTabsMenu.fontMetrics() |
377 fm = self.__closedTabsMenu.fontMetrics() |
379 maxWidth = fm.width('m') * 40 |
378 maxWidth = fm.width('m') * 40 |
380 |
379 |
|
380 import Helpviewer.HelpWindow |
381 self.__closedTabsMenu.clear() |
381 self.__closedTabsMenu.clear() |
382 index = 0 |
382 index = 0 |
383 for tab in self.__tabWidget.closedTabsManager().allClosedTabs(): |
383 for tab in self.__tabWidget.closedTabsManager().allClosedTabs(): |
384 title = fm.elidedText(tab.title, Qt.ElideRight, maxWidth) |
384 title = fm.elidedText(tab.title, Qt.ElideRight, maxWidth) |
385 self.__closedTabsMenu.addAction( |
385 self.__closedTabsMenu.addAction( |
447 Public method to add any actions before the tree. |
447 Public method to add any actions before the tree. |
448 |
448 |
449 @return flag indicating if any actions were added (boolean) |
449 @return flag indicating if any actions were added (boolean) |
450 """ |
450 """ |
451 if self.__historyMenuModel is None: |
451 if self.__historyMenuModel is None: |
|
452 import Helpviewer.HelpWindow |
452 historyManager = Helpviewer.HelpWindow.HelpWindow.historyManager() |
453 historyManager = Helpviewer.HelpWindow.HelpWindow.historyManager() |
453 self.__historyMenuModel = \ |
454 self.__historyMenuModel = \ |
454 HistoryMostVisitedMenuModel(historyManager.historyFilterModel(), self) |
455 HistoryMostVisitedMenuModel(historyManager.historyFilterModel(), self) |
455 self.setModel(self.__historyMenuModel) |
456 self.setModel(self.__historyMenuModel) |
456 self.__historyMenuModel.sort(0) |
457 self.__historyMenuModel.sort(0) |