eric7/HelpViewer/OpenPagesWidget.py

Mon, 03 Jan 2022 17:57:07 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 03 Jan 2022 17:57:07 +0100
branch
eric7
changeset 8898
cf11386c25ec
parent 8895
d66181594630
permissions
-rw-r--r--

Redefined the inheritance of OpenPagesWidget (removed the obsolete layout).

8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
8881
54e42bc2437a Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8741
diff changeset
3 # Copyright (c) 2021 - 2022 Detlev Offenbach <detlev@die-offenbachs.de>
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a widget showing the list of open pages.
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
10 from PyQt6.QtCore import pyqtSlot, pyqtSignal, Qt, QPoint
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
11 from PyQt6.QtGui import QGuiApplication, QClipboard
8898
cf11386c25ec Redefined the inheritance of OpenPagesWidget (removed the obsolete layout).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8895
diff changeset
12 from PyQt6.QtWidgets import QListWidget, QAbstractItemView, QMenu
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
14 import UI.PixmapCache
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
15
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
17 class OpenPagesWidget(QListWidget):
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 Class implementing a widget showing the list of open pages.
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
20
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
21 @signal currentPageChanged(index) emitted to signal a change of the current
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
22 page index
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
24 currentPageChanged = pyqtSignal(int)
8680
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
25
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 def __init__(self, stack, parent=None):
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 Constructor
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 @param stack reference to the stack widget containing the open
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 help pages
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 @type QStackedWidget
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 @param parent reference to the parent widget (defaults to None)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 @type QWidget (optional)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 super().__init__(parent)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.setObjectName("OpenPagesWidget")
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
39 self.__helpViewer = parent
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
40
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
41 self.setAlternatingRowColors(True)
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
42 self.setSelectionMode(
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
43 QAbstractItemView.SelectionMode.SingleSelection)
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
44 self.setContextMenuPolicy(
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
45 Qt.ContextMenuPolicy.CustomContextMenu)
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
46 self.currentRowChanged.connect(
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 self.__currentRowChanged)
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
48 self.customContextMenuRequested.connect(
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
49 self.__showContextMenu)
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 self.__stack = stack
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 self.__stack.currentChanged.connect(self.__currentPageChanged)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
54 self.__initContextMenu()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
55
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
56 self.__defaultFont = self.font()
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
57 self.__boldFont = self.font()
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 self.__boldFont.setBold(True)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
60 def __initContextMenu(self):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
61 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
62 Private method to initialize the context menu.
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
63 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
64 self.__menu = QMenu(self)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
65 self.__menu.addAction(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
66 UI.PixmapCache.getIcon("tabClose"),
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
67 self.tr('Close'), self.__contextMenuClose)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
68 self.closeOthersMenuAct = self.__menu.addAction(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
69 UI.PixmapCache.getIcon("tabCloseOther"),
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
70 self.tr("Close Others"),
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
71 self.__contextMenuCloseOthers)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
72 self.__menu.addAction(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
73 self.tr('Close All'), self.__contextMenuCloseAll)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
74 self.__menu.addSeparator()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
75 self.__copyUrlAct = self.__menu.addAction(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
76 self.tr("Copy URL to Clipboard"),
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
77 self.__contextMenuCopyUrlToClipboard)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
78
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
79 @pyqtSlot(QPoint)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
80 def __showContextMenu(self, point):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
81 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
82 Private slot to handle the customContextMenuRequested signal of
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
83 the viewlist.
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
84
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
85 @param point position to open the menu at
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
86 @type QPoint
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
87 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
88 itm = self.itemAt(point)
8685
b0669ce1066d Continued implementing the embedded help viewer widget. Added the help index and help search widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8683
diff changeset
89 self.__copyUrlAct.setEnabled(bool(itm) and itm.text() != "about:blank")
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
90 self.closeOthersMenuAct.setEnabled(self.count() > 1)
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
91 self.__menu.popup(self.mapToGlobal(point))
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
92
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 @pyqtSlot(int)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94 def __currentPageChanged(self, index):
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 Private slot to handle a change of the shown page.
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 @param index index of the current page
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 @type int
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
101 for row in range(self.count()):
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
102 itm = self.item(row)
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 itm.setFont(
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 self.__boldFont if row == index else self.__defaultFont
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 )
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 @pyqtSlot(int)
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 def __currentRowChanged(self, row):
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 Private slot handling a change of the current row.
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 @param row current row
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 @type int
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 self.__stack.setCurrentIndex(row)
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
116 self.currentPageChanged.emit(row)
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
118 def addPage(self, viewer, background=False):
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 """
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 Public method to add a viewer page to our list.
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121
8680
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
122 @param viewer reference to the viewer object
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
123 @type HelpViewerImpl
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
124 @param background flag indicating to not change the current page
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
125 (defaults to False)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
126 @type bool (optional)
8679
fd172973428e Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
128 self.addItem(viewer.pageTitle())
8680
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
129 viewer.titleChanged.connect(
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
130 lambda: self.__viewerTitleChanged(viewer))
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
131
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
132 if not background:
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
133 self.setCurrentRow(
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
134 self.count() - 1)
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
135 if self.count() == 1:
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
136 self.__currentPageChanged(0)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
137
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
138 def insertPage(self, index, viewer, background=False):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
139 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
140 Public method to insert a viewer page into our list.
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
141
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
142 @param index index to insert at
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
143 @type int
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
144 @param viewer reference to the viewer object
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
145 @type HelpViewerImpl
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
146 @param background flag indicating to not change the current page
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
147 (defaults to False)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
148 @type bool (optional)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
149 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
150 currentRow = self.currentRow()
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
151 self.insertItem(index, viewer.pageTitle())
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
152 viewer.titleChanged.connect(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
153 lambda: self.__viewerTitleChanged(viewer))
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
154
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
155 if not background:
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
156 self.setCurrentRow(index)
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
157 else:
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
158 self.setCurrentRow(currentRow)
8680
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
159
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
160 def __viewerTitleChanged(self, viewer):
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
161 """
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
162 Private method to handle the change of a viewer title.
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
163
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
164 @param viewer reference to the viewer that change title
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
165 @type HelpViewerImpl
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
166 """
85503ff2fce9 Continued implementing the embedded help viewer widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8679
diff changeset
167 index = self.__stack.indexOf(viewer)
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
168 itm = self.item(index)
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
169 itm.setText(viewer.pageTitle())
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
170 self.currentPageChanged.emit(index)
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
171
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
172 #######################################################################
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
173 ## Context menu action methods
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
174 #######################################################################
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
175
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
176 @pyqtSlot()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
177 def __contextMenuClose(self):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
178 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
179 Private slot to close a page via the context menu.
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
180 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
181 self.closeCurrentPage()
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
182
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
183 @pyqtSlot()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
184 def __contextMenuCloseOthers(self):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
185 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
186 Private slot to close all other pages via the context menu.
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
187 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
188 self.closeOtherPages()
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
189
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
190 @pyqtSlot()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
191 def __contextMenuCloseAll(self):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
192 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
193 Private slot to close all pages via the context menu.
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
194 """
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
195 self.closeAllPages()
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
196
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
197 @pyqtSlot()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
198 def __contextMenuCopyUrlToClipboard(self):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
199 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
200 Private slot to copy the URL to the clipboard.
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
201 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
202 row = self.currentRow()
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
203 viewer = self.__stack.widget(row)
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
204 url = viewer.link()
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
205 if url.isValid():
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
206 urlStr = url.toString()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
207
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
208 # copy the URL to both clipboard areas
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
209 QGuiApplication.clipboard().setText(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
210 urlStr, QClipboard.Mode.Clipboard)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
211 QGuiApplication.clipboard().setText(
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
212 urlStr, QClipboard.Mode.Selection)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
213
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
214 def __removeViewer(self, row):
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
215 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
216 Private method to remove a viewer page.
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
217
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
218 @param row row associated with the viewer
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
219 @type int
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
220 """
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
221 viewer = self.__stack.widget(row)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
222 self.__stack.removeWidget(viewer)
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
223 viewer.deleteLater()
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
224
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
225 itm = self.takeItem(row)
8683
e8a907801549 Continued implementing the embedded help viewer widget. Added the QtHelp Table of Contents widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8680
diff changeset
226 del itm
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
227
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
228 #######################################################################
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
229 ## Slots for external access below
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
230 #######################################################################
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
231
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
232 @pyqtSlot()
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
233 def closeCurrentPage(self):
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
234 """
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
235 Public slot to close the current page.
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
236 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
237 row = self.currentRow()
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
238 self.__removeViewer(row)
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
239
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
240 if self.count() == 0:
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
241 self.__helpViewer.addPage()
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
242
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
243 @pyqtSlot()
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
244 def closeOtherPages(self):
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
245 """
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
246 Public slot to close all other pages.
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
247 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
248 currentRow = self.currentRow()
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
249 for row in range(self.count() - 1, -1, -1):
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
250 if row != currentRow:
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
251 self.__removeViewer(row)
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
252
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
253 @pyqtSlot()
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
254 def closeAllPages(self):
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
255 """
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
256 Public slot to close all pages.
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
257 """
8895
d66181594630 Redefined the inheritance of OpenPagesWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8881
diff changeset
258 while self.count() != 0:
8696
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
259 self.__removeViewer(0)
7e88f292b1b1 Continued implementing the embedded help viewer widget. Added context menus to the help viewer variants.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8691
diff changeset
260 self.__helpViewer.addPage()

eric ide

mercurial