eric7/EricWidgets/EricTextEditSearchWidget.py

Sun, 26 Dec 2021 17:40:29 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sun, 26 Dec 2021 17:40:29 +0100
branch
eric7
changeset 8857
8191d15b8974
parent 8739
55e07d9608f0
child 8858
a70a980e7d4f
permissions
-rw-r--r--

Added some style sheet and color related TODO markers.

4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
7923
91e843545d9a Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7780
diff changeset
3 # Copyright (c) 2012 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing a horizontal search widget for QTextEdit.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
8268
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
10 import enum
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
11
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
12 from PyQt6.QtCore import pyqtSlot, pyqtSignal, Qt, QMetaObject, QSize
8318
962bce857696 Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8312
diff changeset
13 from PyQt6.QtGui import QPalette, QBrush, QColor, QTextDocument, QTextCursor
962bce857696 Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8312
diff changeset
14 from PyQt6.QtWidgets import (
7252
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
15 QWidget, QVBoxLayout, QHBoxLayout, QLabel, QComboBox, QCheckBox,
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
16 QToolButton, QSizePolicy
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
17 )
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 import UI.PixmapCache
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
22 class EricTextEditType(enum.Enum):
8268
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
23 """
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
24 Class defining the supported text edit types.
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
25 """
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
26 UNKNOWN = 0
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
27 QTEXTEDIT = 1
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
28 QTEXTBROWSER = 2
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
29 QWEBENGINEVIEW = 3
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
30
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
31
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
32 class EricTextEditSearchWidget(QWidget):
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 Class implementing a horizontal search widget for QTextEdit.
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
35
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
36 @signal closePressed() emitted to indicate the closing of the widget via
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
37 the close button
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 """
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
39 closePressed = pyqtSignal()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
40
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
41 def __init__(self, parent=None, widthForHeight=True, enableClose=False):
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 Constructor
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
45 @param parent reference to the parent widget
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
46 @type QWidget
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
47 @param widthForHeight flag indicating to prefer width for height.
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
48 If this parameter is False, some widgets are shown in a third
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
49 line.
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
50 @type bool
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
51 @param enableClose flag indicating to show a close button
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
52 @type bool
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 """
8218
7c09585bd960 Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8143
diff changeset
54 super().__init__(parent)
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
55 self.__setupUi(widthForHeight, enableClose)
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 self.__textedit = None
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
58 self.__texteditType = EricTextEditType.UNKNOWN
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
59 self.__findBackwards = False
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60
8857
8191d15b8974 Added some style sheet and color related TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8739
diff changeset
61 # TODO: change to use style sheets
8191d15b8974 Added some style sheet and color related TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8739
diff changeset
62 # get style sheet or create one from palette
7252
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
63 self.__defaultBaseColor = (
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
64 self.findtextCombo.lineEdit().palette().color(
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
65 QPalette.ColorRole.Base)
7252
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
66 )
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
67 self.__defaultTextColor = (
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
68 self.findtextCombo.lineEdit().palette().color(
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
69 QPalette.ColorRole.Text)
7252
c5e3705073eb Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7229
diff changeset
70 )
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
71
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 self.findHistory = []
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 self.findtextCombo.setCompleter(None)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 self.findtextCombo.lineEdit().returnPressed.connect(
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 self.__findByReturnPressed)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 self.__setSearchButtons(False)
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
79 self.infoLabel.hide()
4586
9221c0c5c66f Fixed a forgotten focus proxy for the E5TextEditSearchWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4039
diff changeset
80
9221c0c5c66f Fixed a forgotten focus proxy for the E5TextEditSearchWidget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4039
diff changeset
81 self.setFocusProxy(self.findtextCombo)
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
83 def __setupUi(self, widthForHeight, enableClose):
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
84 """
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
85 Private method to generate the UI.
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
86
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
87 @param widthForHeight flag indicating to prefer width for height
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
88 @type bool
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
89 @param enableClose flag indicating to show a close button
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
90 @type bool
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
91 """
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
92 self.setObjectName("EricTextEditSearchWidget")
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
93
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
94 self.verticalLayout = QVBoxLayout(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
95 self.verticalLayout.setObjectName("verticalLayout")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
96 self.verticalLayout.setContentsMargins(0, 0, 0, 0)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
97
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
98 # row 1 of widgets
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
99 self.horizontalLayout1 = QHBoxLayout()
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
100 self.horizontalLayout1.setObjectName("horizontalLayout1")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
101
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
102 if enableClose:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
103 self.closeButton = QToolButton(self)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
104 self.closeButton.setIcon(UI.PixmapCache.getIcon("close"))
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
105 self.closeButton.clicked.connect(self.__closeButtonClicked)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
106 self.horizontalLayout1.addWidget(self.closeButton)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
107 else:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
108 self.closeButton = None
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
109
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
110 self.label = QLabel(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
111 self.label.setObjectName("label")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
112 self.label.setText(self.tr("Find:"))
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
113 self.horizontalLayout1.addWidget(self.label)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
114
8350
74a3b2a6a944 Removed all references to E5ComboBox and most references to E5LineEdit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8324
diff changeset
115 self.findtextCombo = QComboBox(self)
74a3b2a6a944 Removed all references to E5ComboBox and most references to E5LineEdit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8324
diff changeset
116 self.findtextCombo.setEditable(True)
74a3b2a6a944 Removed all references to E5ComboBox and most references to E5LineEdit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8324
diff changeset
117 self.findtextCombo.lineEdit().setClearButtonEnabled(True)
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
118 sizePolicy = QSizePolicy(QSizePolicy.Policy.Expanding,
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
119 QSizePolicy.Policy.Fixed)
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
120 sizePolicy.setHorizontalStretch(0)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
121 sizePolicy.setVerticalStretch(0)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
122 sizePolicy.setHeightForWidth(
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
123 self.findtextCombo.sizePolicy().hasHeightForWidth())
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
124 self.findtextCombo.setSizePolicy(sizePolicy)
6635
00d9efb7afc6 E5TextEditSearchWidget: made the minimum size smaller in order to allow better resizability for small screens.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6501
diff changeset
125 self.findtextCombo.setMinimumSize(QSize(100, 0))
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
126 self.findtextCombo.setEditable(True)
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
127 self.findtextCombo.setInsertPolicy(QComboBox.InsertPolicy.InsertAtTop)
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
128 self.findtextCombo.setDuplicatesEnabled(False)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
129 self.findtextCombo.setObjectName("findtextCombo")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
130 self.horizontalLayout1.addWidget(self.findtextCombo)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
131
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
132 # row 2 (maybe) of widgets
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
133 self.horizontalLayout2 = QHBoxLayout()
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
134 self.horizontalLayout2.setObjectName("horizontalLayout2")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
135
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
136 self.caseCheckBox = QCheckBox(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
137 self.caseCheckBox.setObjectName("caseCheckBox")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
138 self.caseCheckBox.setText(self.tr("Match case"))
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
139 self.horizontalLayout2.addWidget(self.caseCheckBox)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
140
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
141 self.wordCheckBox = QCheckBox(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
142 self.wordCheckBox.setObjectName("wordCheckBox")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
143 self.wordCheckBox.setText(self.tr("Whole word"))
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
144 self.horizontalLayout2.addWidget(self.wordCheckBox)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
145
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
146 # layout for the navigation buttons
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
147 self.horizontalLayout3 = QHBoxLayout()
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
148 self.horizontalLayout3.setSpacing(0)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
149 self.horizontalLayout3.setObjectName("horizontalLayout3")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
150
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
151 self.findPrevButton = QToolButton(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
152 self.findPrevButton.setObjectName("findPrevButton")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
153 self.findPrevButton.setToolTip(self.tr(
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
154 "Press to find the previous occurrence"))
7533
88261c96484b Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7360
diff changeset
155 self.findPrevButton.setIcon(UI.PixmapCache.getIcon("1leftarrow"))
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
156 self.horizontalLayout3.addWidget(self.findPrevButton)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
157
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
158 self.findNextButton = QToolButton(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
159 self.findNextButton.setObjectName("findNextButton")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
160 self.findNextButton.setToolTip(self.tr(
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
161 "Press to find the next occurrence"))
7533
88261c96484b Removed the '.png' extension from all call to get an icon or a pixmap from the PixmapCache because this is not needed anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7360
diff changeset
162 self.findNextButton.setIcon(UI.PixmapCache.getIcon("1rightarrow"))
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
163 self.horizontalLayout3.addWidget(self.findNextButton)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
164
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
165 self.horizontalLayout2.addLayout(self.horizontalLayout3)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
166
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
167 # info label (in row 2 or 3)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
168 self.infoLabel = QLabel(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
169 self.infoLabel.setText("")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
170 self.infoLabel.setObjectName("infoLabel")
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
171
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
172 # place everything together
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
173 self.verticalLayout.addLayout(self.horizontalLayout1)
6499
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
174 self.__addWidthForHeightLayout(widthForHeight)
5959
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
175 self.verticalLayout.addWidget(self.infoLabel)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
176
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
177 QMetaObject.connectSlotsByName(self)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
178
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
179 self.setTabOrder(self.findtextCombo, self.caseCheckBox)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
180 self.setTabOrder(self.caseCheckBox, self.wordCheckBox)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
181 self.setTabOrder(self.wordCheckBox, self.findPrevButton)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
182 self.setTabOrder(self.findPrevButton, self.findNextButton)
4c716b02e10d Changed the search widget used in the documentation viewer (and other places) to allow to save width but make it higher.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5924
diff changeset
183
6499
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
184 def setWidthForHeight(self, widthForHeight):
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
185 """
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
186 Public method to set the 'width for height'.
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
187
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
188 @param widthForHeight flag indicating to prefer width
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
189 @type bool
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
190 """
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
191 if self.__widthForHeight:
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
192 self.horizontalLayout1.takeAt(self.__widthForHeightLayoutIndex)
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
193 else:
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
194 self.verticalLayout.takeAt(self.__widthForHeightLayoutIndex)
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
195 self.__addWidthForHeightLayout(widthForHeight)
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
196
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
197 def __addWidthForHeightLayout(self, widthForHeight):
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
198 """
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
199 Private method to set the middle part of the layout.
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
200
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
201 @param widthForHeight flag indicating to prefer width
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
202 @type bool
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
203 """
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
204 if widthForHeight:
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
205 self.horizontalLayout1.addLayout(self.horizontalLayout2)
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
206 self.__widthForHeightLayoutIndex = 2
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
207 else:
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
208 self.verticalLayout.insertLayout(1, self.horizontalLayout2)
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
209 self.__widthForHeightLayoutIndex = 1
6501
d564cd2c9a2d E5TextEditSearchWidget: fixed an issue introduced in the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6499
diff changeset
210
d564cd2c9a2d E5TextEditSearchWidget: fixed an issue introduced in the last change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6499
diff changeset
211 self.__widthForHeight = widthForHeight
6499
dcff57f91861 E5TextEditSearchWidget: added method to modify the layout strategy.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 6048
diff changeset
212
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
213 def attachTextEdit(self, textedit, editType=EricTextEditType.QTEXTEDIT):
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
214 """
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
215 Public method to attach a QTextEdit or QWebEngineView widget.
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
216
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
217 @param textedit reference to the edit widget to be attached
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
218 @type QTextEdit, QTextBrowser or QWebEngineView
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
219 @param editType type of the attached edit widget
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
220 @type EricTextEditType
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
221 """
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
222 if self.__textedit is not None:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
223 self.detachTextEdit()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
224
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
225 self.__textedit = textedit
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
226 self.__texteditType = editType
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
227
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
228 self.wordCheckBox.setVisible(editType in (
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
229 EricTextEditType.QTEXTEDIT, EricTextEditType.QTEXTBROWSER
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
230 ))
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
231 self.infoLabel.setVisible(editType == EricTextEditType.QWEBENGINEVIEW)
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
232 if editType == EricTextEditType.QWEBENGINEVIEW:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
233 self.__textedit.page().findTextFinished.connect(
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
234 self.__findTextFinished)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
235
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
236 def detachTextEdit(self):
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
237 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
238 Public method to detach the current text edit.
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
239 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
240 if self.__texteditType == EricTextEditType.QWEBENGINEVIEW:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
241 self.__textedit.page().findTextFinished.disconnect(
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
242 self.__findTextFinished)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
243
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
244 self.__textedit = None
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
245 self.__texteditType = EricTextEditType.UNKNOWN
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
246
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
247 @pyqtSlot()
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
248 def activate(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
249 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
250 Public slot to activate the widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
251 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
252 self.show()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
253 self.findtextCombo.setFocus(
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
254 Qt.FocusReason.ActiveWindowFocusReason)
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
255 self.findtextCombo.lineEdit().selectAll()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
256
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
257 @pyqtSlot()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
258 def deactivate(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
259 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
260 Public slot to deactivate the widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
261 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
262 if self.__textedit:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
263 self.__textedit.setFocus(Qt.FocusReason.ActiveWindowFocusReason)
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
264 if self.closeButton is not None:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
265 self.hide()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
266 self.closePressed.emit()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
267
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
268 @pyqtSlot()
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
269 def __closeButtonClicked(self):
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
270 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
271 Private slot to close the widget.
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
272
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
273 Note: The widget is just hidden.
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
274 """
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
275 self.deactivate()
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
276
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
277 def keyPressEvent(self, event):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
278 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
279 Protected slot to handle key press events.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
280
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
281 @param event reference to the key press event
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
282 @type QKeyEvent
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
283 """
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
284 if self.__textedit:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
285 key = event.key()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
286 modifiers = event.modifiers()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
287
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
288 if key == Qt.Key.Key_Escape:
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
289 self.deactivate()
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
290 event.accept()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
291
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
292 elif key == Qt.Key.Key_F3:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
293 if modifiers == Qt.KeyboardModifier.NoModifier:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
294 # search forward
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
295 self.on_findNextButton_clicked()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
296 event.accept()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
297 elif modifiers == Qt.KeyboardModifier.ShiftModifier:
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
298 # search backward
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
299 self.on_findPrevButton_clicked()
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
300 event.accept()
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
301
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
302 @pyqtSlot(str)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
303 def on_findtextCombo_editTextChanged(self, txt):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
305 Private slot to enable/disable the find buttons.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
306
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
307 @param txt text of the combobox
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
308 @type str
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
309 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
310 self.__setSearchButtons(txt != "")
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
311
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
312 if self.__texteditType == EricTextEditType.QWEBENGINEVIEW:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
313 self.infoLabel.clear()
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
314 else:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
315 self.infoLabel.hide()
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
316 self.__setFindtextComboBackground(False)
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
317
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
318 def __setSearchButtons(self, enabled):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
319 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
320 Private slot to set the state of the search buttons.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
321
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
322 @param enabled flag indicating the state
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
323 @type bool
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
324 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
325 self.findPrevButton.setEnabled(enabled)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
326 self.findNextButton.setEnabled(enabled)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
327
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
328 def __findByReturnPressed(self):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
329 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
330 Private slot to handle the returnPressed signal of the findtext
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
331 combobox.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
332 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
333 self.__find(self.__findBackwards)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
334
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
335 @pyqtSlot()
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
336 def on_findPrevButton_clicked(self):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
337 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
338 Private slot to find the previous occurrence.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
339 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
340 self.__find(True)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
341
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
342 @pyqtSlot()
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
343 def on_findNextButton_clicked(self):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
344 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
345 Private slot to find the next occurrence.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
346 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
347 self.__find(False)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
348
8702
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
349 @pyqtSlot()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
350 def findPrev(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
351 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
352 Public slot to find the previous occurrence of the current search term.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
353 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
354 self.on_findPrevButton_clicked()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
355
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
356 @pyqtSlot()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
357 def findNext(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
358 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
359 Public slot to find the next occurrence of the current search term.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
360 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
361 self.on_findNextButton_clicked()
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8690
diff changeset
362
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
363 def __find(self, backwards):
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
364 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
365 Private method to search the associated text edit.
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
366
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
367 @param backwards flag indicating a backwards search
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
368 @type bool
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
369 """
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
370 if not self.__textedit:
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
371 return
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
372
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
373 self.infoLabel.clear()
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
374 if self.__texteditType != EricTextEditType.QWEBENGINEVIEW:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
375 self.infoLabel.hide()
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
376 self.__setFindtextComboBackground(False)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
377
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
378 txt = self.findtextCombo.currentText()
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
379 if not txt:
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
380 return
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
381 self.__findBackwards = backwards
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
382
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
383 # This moves any previous occurrence of this statement to the head
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
384 # of the list and updates the combobox
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
385 if txt in self.findHistory:
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
386 self.findHistory.remove(txt)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
387 self.findHistory.insert(0, txt)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
388 self.findtextCombo.clear()
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
389 self.findtextCombo.addItems(self.findHistory)
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
390
8268
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
391 if self.__texteditType in (
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
392 EricTextEditType.QTEXTBROWSER, EricTextEditType.QTEXTEDIT
8268
6b8128e0c9d1 Modernized some code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8257
diff changeset
393 ):
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
394 self.__findPrevNextQTextEdit(backwards)
8356
68ec9c3d4de5 Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8350
diff changeset
395 elif self.__texteditType == EricTextEditType.QWEBENGINEVIEW:
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
396 self.__findPrevNextQWebEngineView(backwards)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
397
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
398 def __findPrevNextQTextEdit(self, backwards):
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
399 """
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
400 Private method to to search the associated edit widget of
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
401 type QTextEdit.
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
402
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
403 @param backwards flag indicating a backwards search
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
404 @type bool
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
405 """
8257
28146736bbfc Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8218
diff changeset
406 flags = (
8324
83084f088655 Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
407 QTextDocument.FindFlag.FindBackward
8257
28146736bbfc Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8218
diff changeset
408 if backwards else
8324
83084f088655 Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
409 QTextDocument.FindFlag(0)
8257
28146736bbfc Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8218
diff changeset
410 )
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
411 if self.caseCheckBox.isChecked():
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
412 flags |= QTextDocument.FindFlag.FindCaseSensitively
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
413 if self.wordCheckBox.isChecked():
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
414 flags |= QTextDocument.FindFlag.FindWholeWords
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
415
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
416 ok = self.__textedit.find(self.findtextCombo.currentText(), flags)
4039
661167a99aef Added the capability to search in the output to the Diff dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
417 if not ok:
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
418 # wrap around once
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
419 cursor = self.__textedit.textCursor()
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
420 if backwards:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
421 moveOp = QTextCursor.MoveOperation.End
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
422 # move to end of document
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
423 else:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
424 moveOp = QTextCursor.MoveOperation.Start
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
425 # move to start of document
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
426 cursor.movePosition(moveOp)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
427 self.__textedit.setTextCursor(cursor)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
428 ok = self.__textedit.find(self.findtextCombo.currentText(), flags)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
429
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
430 if not ok:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
431 self.infoLabel.setText(
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
432 self.tr("'{0}' was not found.").format(
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
433 self.findtextCombo.currentText())
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
434 )
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
435 self.infoLabel.show()
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
436 self.__setFindtextComboBackground(True)
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
437
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
438 def __findPrevNextQWebEngineView(self, backwards):
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
439 """
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
440 Private method to to search the associated edit widget of
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
441 type QWebEngineView.
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
442
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
443 @param backwards flag indicating a backwards search
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
444 @type bool
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
445 """
8553
10d31e5ce9e5 First batch of changes for QtWebEngine as of Qt 6.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8358
diff changeset
446 from PyQt6.QtWebEngineCore import QWebEnginePage
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
447
8324
83084f088655 Continued porting eric to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
448 findFlags = QWebEnginePage.FindFlag(0)
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
449 if self.caseCheckBox.isChecked():
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
450 findFlags |= QWebEnginePage.FindFlag.FindCaseSensitively
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
451 if backwards:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
452 findFlags |= QWebEnginePage.FindFlag.FindBackward
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
453 self.__textedit.findText(self.findtextCombo.currentText(), findFlags)
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
454
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
455 def __setFindtextComboBackground(self, error):
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
456 """
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
457 Private slot to change the findtext combo background to indicate
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
458 errors.
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
459
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
460 @param error flag indicating an error condition
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
461 @type bool
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
462 """
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
463 le = self.findtextCombo.lineEdit()
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
464 p = le.palette()
8857
8191d15b8974 Added some style sheet and color related TODO markers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8739
diff changeset
465 # TODO: change to use style sheets
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
466 if error:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
467 p.setBrush(QPalette.ColorRole.Base, QBrush(QColor("#FF6666")))
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
468 p.setBrush(QPalette.ColorRole.Text, QBrush(QColor("#000000")))
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
469 else:
8143
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
470 p.setBrush(QPalette.ColorRole.Base, self.__defaultBaseColor)
2c730d5fd177 Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
471 p.setBrush(QPalette.ColorRole.Text, self.__defaultTextColor)
5913
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
472 le.setPalette(p)
7ab2293917f8 Changed the rich text display of the document viewer to use a QWebEngineView or QWebView based widget.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 5389
diff changeset
473 le.update()
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
474
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
475 def __findTextFinished(self, result):
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
476 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
477 Private slot handling the findTextFinished signal of the web page.
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
478
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
479 @param result reference to the QWebEngineFindTextResult object of the
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
480 last search
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
481 @type QWebEngineFindTextResult
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
482 """
8706
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
483 if result.numberOfMatches() == 0:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
484 self.infoLabel.setText(
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
485 self.tr("'{0}' was not found.").format(
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
486 self.findtextCombo.currentText())
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
487 )
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
488 self.__setFindtextComboBackground(True)
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
489 else:
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
490 self.infoLabel.setText(self.tr("Match {0} of {1}").format(
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
491 result.activeMatch(), result.numberOfMatches())
16b25e115ac0 EricTextEditSearchWidget: improved the info label handling for QWebEngineView based browsers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8702
diff changeset
492 )
8690
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
493
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
494 def showInfo(self, info):
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
495 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
496 Public method to show some information in the info label.
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
497
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
498 @param info informational text to be shown
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
499 @type str
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
500 """
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
501 self.infoLabel.setText(info)
25f68ec4181a Improved the eric search widget for QTextEdit, QTextBrowser and QWebEngineView.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8553
diff changeset
502 self.infoLabel.show()

eric ide

mercurial