Sat, 05 Jul 2014 12:13:23 +0200
Finished renaming eric5 for PyQt5 to eric6.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
3160
209a07d7e401
Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2893
diff
changeset
|
3 | # Copyright (c) 2004 - 2014 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the QRegExp wizard dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
3145
a9de05d4a22f
# __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
3056
diff
changeset
|
10 | from __future__ import unicode_literals |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2407
diff
changeset
|
11 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | |
3656
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
14 | from PyQt5.QtCore import QFileInfo, QRegExp, Qt, pyqtSlot, qVersion |
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
15 | from PyQt5.QtGui import QClipboard, QTextCursor |
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
16 | from PyQt5.QtWidgets import QWidget, QDialog, QApplication, QDialogButtonBox, \ |
441956d8fce5
Started porting eric5 to PyQt5.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
17 | QVBoxLayout, QTableWidgetItem |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
19 | from E5Gui import E5MessageBox, E5FileDialog |
2101
5bac7dee9e1a
Introduced the E5MainWindow class allowing to set a style for all the main windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1818
diff
changeset
|
20 | from E5Gui.E5MainWindow import E5MainWindow |
536
6d8d39753c82
Started replaceing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
465
diff
changeset
|
21 | |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
22 | from .Ui_QRegExpWizardDialog import Ui_QRegExpWizardWidget |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | import UI.PixmapCache |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | import Utilities |
2101
5bac7dee9e1a
Introduced the E5MainWindow class allowing to set a style for all the main windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1818
diff
changeset
|
27 | import Preferences |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
29 | |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
30 | class QRegExpWizardWidget(QWidget, Ui_QRegExpWizardWidget): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | Class implementing the QRegExp wizard dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
34 | def __init__(self, parent=None, fromEric=True): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | @param parent parent widget (QWidget) |
3670
f0cb7579c0b4
Finished renaming eric5 for PyQt5 to eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
39 | @param fromEric flag indicating a call from within eric6 |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | """ |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2407
diff
changeset
|
41 | super(QRegExpWizardWidget, self).__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | self.setupUi(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | # initialize icons of the tool buttons |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
45 | # regexp tool buttons |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | self.charButton.setIcon(UI.PixmapCache.getIcon("characters.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | self.anycharButton.setIcon(UI.PixmapCache.getIcon("anychar.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | self.repeatButton.setIcon(UI.PixmapCache.getIcon("repeat.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | self.nonGroupButton.setIcon(UI.PixmapCache.getIcon("nongroup.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | self.groupButton.setIcon(UI.PixmapCache.getIcon("group.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.altnButton.setIcon(UI.PixmapCache.getIcon("altn.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.beglineButton.setIcon(UI.PixmapCache.getIcon("begline.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.endlineButton.setIcon(UI.PixmapCache.getIcon("endline.png")) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
54 | self.wordboundButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
55 | UI.PixmapCache.getIcon("wordboundary.png")) |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
56 | self.nonwordboundButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
57 | UI.PixmapCache.getIcon("nonwordboundary.png")) |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
58 | self.poslookaheadButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
59 | UI.PixmapCache.getIcon("poslookahead.png")) |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
60 | self.neglookaheadButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
61 | UI.PixmapCache.getIcon("neglookahead.png")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | self.undoButton.setIcon(UI.PixmapCache.getIcon("editUndo.png")) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | self.redoButton.setIcon(UI.PixmapCache.getIcon("editRedo.png")) |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
64 | # wildcard tool buttons |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
65 | self.wildcardCharButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
66 | UI.PixmapCache.getIcon("characters.png")) |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
67 | self.wildcardAnycharButton.setIcon( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
68 | UI.PixmapCache.getIcon("anychar.png")) |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
69 | self.wildcardRepeatButton.setIcon(UI.PixmapCache.getIcon("repeat.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
70 | # W3C tool buttons |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
71 | self.w3cCharButton.setIcon(UI.PixmapCache.getIcon("characters.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
72 | self.w3cAnycharButton.setIcon(UI.PixmapCache.getIcon("anychar.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
73 | self.w3cRepeatButton.setIcon(UI.PixmapCache.getIcon("repeat.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
74 | self.w3cGroupButton.setIcon(UI.PixmapCache.getIcon("group.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
75 | self.w3cAltnButton.setIcon(UI.PixmapCache.getIcon("altn.png")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
76 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
77 | # initialize the syntax pattern combo |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
78 | self.syntaxCombo.addItem("RegExp", QRegExp.RegExp) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
79 | self.syntaxCombo.addItem("RegExp2", QRegExp.RegExp2) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
80 | self.syntaxCombo.addItem("Wildcard", QRegExp.Wildcard) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
81 | self.syntaxCombo.addItem("Unix Wildcard", QRegExp.WildcardUnix) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
82 | self.syntaxCombo.addItem("Fixed String", QRegExp.FixedString) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
83 | self.syntaxCombo.addItem("W3C XML Schema 1.1", QRegExp.W3CXmlSchema11) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
84 | if qVersion() >= "5.0.0": |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
85 | self.syntaxCombo.setCurrentIndex(1) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
87 | self.saveButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
88 | self.tr("Save"), QDialogButtonBox.ActionRole) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
89 | self.saveButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
90 | self.tr("Save the regular expression to a file")) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
91 | self.loadButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
92 | self.tr("Load"), QDialogButtonBox.ActionRole) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
93 | self.loadButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
94 | self.tr("Load a regular expression from a file")) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
95 | self.validateButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
96 | self.tr("Validate"), QDialogButtonBox.ActionRole) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
97 | self.validateButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
98 | self.tr("Validate the regular expression")) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
99 | self.executeButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
100 | self.tr("Execute"), QDialogButtonBox.ActionRole) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
101 | self.executeButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
102 | self.tr("Execute the regular expression")) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
103 | self.nextButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
104 | self.tr("Next match"), QDialogButtonBox.ActionRole) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
553
diff
changeset
|
105 | self.nextButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
106 | self.tr("Show the next match of the regular expression")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | self.nextButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | if fromEric: |
2752
5d556f9040e3
Fixed an issue with the py regexp dialog and the QRegExp dialog. They showed too many buttons when called as a stand-alone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2407
diff
changeset
|
110 | self.buttonBox.setStandardButtons( |
5d556f9040e3
Fixed an issue with the py regexp dialog and the QRegExp dialog. They showed too many buttons when called as a stand-alone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2407
diff
changeset
|
111 | QDialogButtonBox.Cancel | QDialogButtonBox.Ok) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | self.copyButton = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | else: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
114 | self.copyButton = self.buttonBox.addButton( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
115 | self.tr("Copy"), QDialogButtonBox.ActionRole) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
553
diff
changeset
|
116 | self.copyButton.setToolTip( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
117 | self.tr("Copy the regular expression to the clipboard")) |
2752
5d556f9040e3
Fixed an issue with the py regexp dialog and the QRegExp dialog. They showed too many buttons when called as a stand-alone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2407
diff
changeset
|
118 | self.buttonBox.setStandardButtons(QDialogButtonBox.Close) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | self.variableLabel.hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | self.variableLineEdit.hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | self.variableLine.hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
122 | self.regexpLineEdit.setFocus() |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
123 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
124 | @pyqtSlot(int) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
125 | def on_syntaxCombo_currentIndexChanged(self, index): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
126 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
127 | Private slot handling the selection of a pattern syntax. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
128 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
129 | @param index index of the selected entry (integer) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
130 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
131 | syntax = self.syntaxCombo.itemData(index) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
132 | self.regexpButtonsFrame.setVisible(syntax in [ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
133 | QRegExp.RegExp, QRegExp.RegExp2]) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
134 | self.regexpButtonsFrame.setEnabled(syntax in [ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
135 | QRegExp.RegExp, QRegExp.RegExp2]) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
136 | self.wildcardButtonsFrame.setVisible(syntax in [ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
137 | QRegExp.Wildcard, QRegExp.WildcardUnix]) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
138 | self.wildcardButtonsFrame.setEnabled(syntax in [ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
139 | QRegExp.Wildcard, QRegExp.WildcardUnix]) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
140 | self.w3cButtonsFrame.setVisible(syntax in [QRegExp.W3CXmlSchema11]) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
141 | self.w3cButtonsFrame.setEnabled(syntax in [QRegExp.W3CXmlSchema11]) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
143 | def __insertString(self, s, steps=0): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | Private method to insert a string into line edit and move cursor. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | @param s string to be inserted into the regexp line edit |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
149 | @param steps number of characters to move the cursor (integer). |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
150 | Negative steps moves cursor back, positives forward. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
152 | self.regexpLineEdit.insert(s) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
153 | self.regexpLineEdit.cursorForward(False, steps) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | def on_anycharButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | Private slot to handle the any character toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | self.__insertString(".") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
161 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | def on_nonGroupButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | Private slot to handle the non group toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
166 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
167 | self.__insertString("(?:)", -1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
169 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
170 | def on_groupButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | Private slot to handle the group toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | self.__insertString("()", -1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
177 | def on_altnButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | Private slot to handle the alternatives toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
180 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | self.__insertString("(|)", -2) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
182 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | def on_beglineButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
185 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | Private slot to handle the begin line toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
187 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | self.__insertString("^") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | def on_endlineButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | Private slot to handle the end line toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | self.__insertString("$") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | def on_wordboundButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | Private slot to handle the word boundary toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | self.__insertString("\\b") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
204 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | def on_nonwordboundButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | Private slot to handle the non word boundary toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
209 | self.__insertString("\\B") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
211 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | def on_poslookaheadButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | Private slot to handle the positive lookahead toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | self.__insertString("(?=)", -1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | def on_neglookaheadButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | Private slot to handle the negative lookahead toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | self.__insertString("(?!)", -1) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | def on_repeatButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | Private slot to handle the repeat toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | """ |
2407
b98cc8ee1142
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
230 | from .QRegExpWizardRepeatDialog import QRegExpWizardRepeatDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | dlg = QRegExpWizardRepeatDialog(self) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | if dlg.exec_() == QDialog.Accepted: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | self.__insertString(dlg.getRepeat()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | def on_charButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | Private slot to handle the characters toolbutton. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | """ |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
240 | from .QRegExpWizardCharactersDialog import \ |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
241 | QRegExpWizardCharactersDialog |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
242 | dlg = QRegExpWizardCharactersDialog( |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
243 | mode=QRegExpWizardCharactersDialog.RegExpMode, parent=self) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
244 | if dlg.exec_() == QDialog.Accepted: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
245 | self.__insertString(dlg.getCharacters()) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
246 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
247 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
248 | def on_wildcardCharButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
249 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
250 | Private slot to handle the wildcard characters toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
251 | """ |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
252 | from .QRegExpWizardCharactersDialog import \ |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
253 | QRegExpWizardCharactersDialog |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
254 | dlg = QRegExpWizardCharactersDialog( |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
255 | mode=QRegExpWizardCharactersDialog.WildcardMode, parent=self) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | if dlg.exec_() == QDialog.Accepted: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | self.__insertString(dlg.getCharacters()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
259 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
260 | def on_wildcardAnycharButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
261 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
262 | Private slot to handle the wildcard any character toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
263 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
264 | self.__insertString("?") |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
265 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
266 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
267 | def on_wildcardRepeatButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
268 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
269 | Private slot to handle the wildcard multiple characters toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
270 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
271 | self.__insertString("*") |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
272 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
273 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
274 | def on_w3cCharButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
275 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
276 | Private slot to handle the wildcard characters toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
277 | """ |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
278 | from .QRegExpWizardCharactersDialog import \ |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
279 | QRegExpWizardCharactersDialog |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
280 | dlg = QRegExpWizardCharactersDialog( |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
281 | mode=QRegExpWizardCharactersDialog.W3CMode, parent=self) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
282 | if dlg.exec_() == QDialog.Accepted: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
283 | self.__insertString(dlg.getCharacters()) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
284 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
285 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
286 | def on_w3cAnycharButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
287 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
288 | Private slot to handle the W3C any character toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
289 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
290 | self.__insertString(".") |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
291 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
292 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
293 | def on_w3cRepeatButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
294 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
295 | Private slot to handle the W3C repeat toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
296 | """ |
2407
b98cc8ee1142
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
297 | from .QRegExpWizardRepeatDialog import QRegExpWizardRepeatDialog |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
298 | dlg = QRegExpWizardRepeatDialog(self) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
299 | if dlg.exec_() == QDialog.Accepted: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
300 | self.__insertString(dlg.getRepeat()) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
301 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
302 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
303 | def on_w3cGroupButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
304 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
305 | Private slot to handle the W3C group toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
306 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
307 | self.__insertString("()", -1) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
308 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
309 | @pyqtSlot() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
310 | def on_w3cAltnButton_clicked(self): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
311 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
312 | Private slot to handle the alternatives toolbutton. |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
313 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
314 | self.__insertString("(|)", -2) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
315 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | def on_buttonBox_clicked(self, button): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | Private slot called by a button of the button box clicked. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | @param button button that was clicked (QAbstractButton) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | if button == self.validateButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | self.on_validateButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | elif button == self.executeButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | self.on_executeButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
326 | elif button == self.saveButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
327 | self.on_saveButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | elif button == self.loadButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | self.on_loadButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
330 | elif button == self.nextButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | self.on_nextButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | elif self.copyButton and button == self.copyButton: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | self.on_copyButton_clicked() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
334 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
335 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
336 | def on_saveButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
337 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
338 | Private slot to save the regexp to a file. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
339 | """ |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
340 | fname, selectedFilter = E5FileDialog.getSaveFileNameAndFilter( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
341 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
342 | self.tr("Save regular expression"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
343 | "", |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
344 | self.tr("RegExp Files (*.rx);;All Files (*)"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
345 | None, |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
346 | E5FileDialog.Options(E5FileDialog.DontConfirmOverwrite)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | if fname: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
348 | ext = QFileInfo(fname).suffix() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | if not ext: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | ex = selectedFilter.split("(*")[1].split(")")[0] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
351 | if ex: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
352 | fname += ex |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
353 | if QFileInfo(fname).exists(): |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
354 | res = E5MessageBox.yesNo( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
355 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
356 | self.tr("Save regular expression"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
357 | self.tr("<p>The file <b>{0}</b> already exists." |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
358 | " Overwrite it?</p>").format(fname), |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
359 | icon=E5MessageBox.Warning) |
546
c3e7bf5648be
Continued replacing QMessageBox.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
539
diff
changeset
|
360 | if not res: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
363 | syntax = self.syntaxCombo.itemData(self.syntaxCombo.currentIndex()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | try: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
365 | f = open( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
366 | Utilities.toNativeSeparators(fname), "w", encoding="utf-8") |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
367 | f.write("syntax={0}\n".format(syntax)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | f.write(self.regexpLineEdit.text()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | f.close() |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
370 | except IOError as err: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
371 | E5MessageBox.information( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
372 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
373 | self.tr("Save regular expression"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
374 | self.tr("""<p>The regular expression could not""" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
375 | """ be saved.</p><p>Reason: {0}</p>""") |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
376 | .format(str(err))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | def on_loadButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | Private slot to load a regexp from a file. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | """ |
882
34b86be88bf0
Redid the native file dialog code to be future proof.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
880
diff
changeset
|
383 | fname = E5FileDialog.getOpenFileName( |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
385 | self.tr("Load regular expression"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | "", |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
387 | self.tr("RegExp Files (*.rx);;All Files (*)")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | if fname: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | try: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
390 | f = open( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
391 | Utilities.toNativeSeparators(fname), "r", encoding="utf-8") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
392 | regexp = f.read() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
393 | f.close() |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
394 | if regexp.startswith("syntax="): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
395 | lines = regexp.splitlines() |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
396 | syntax = int(lines[0].replace("syntax=", "")) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
397 | index = self.syntaxCombo.findData(syntax) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
398 | self.syntaxCombo.setCurrentIndex(index) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
399 | regexp = lines[1] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | self.regexpLineEdit.setText(regexp) |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
401 | except IOError as err: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
402 | E5MessageBox.information( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
403 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
404 | self.tr("Save regular expression"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
405 | self.tr("""<p>The regular expression could not""" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
406 | """ be saved.</p><p>Reason: {0}</p>""") |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
407 | .format(str(err))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
408 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | def on_copyButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
412 | Private slot to copy the regexp string into the clipboard. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
413 | |
3670
f0cb7579c0b4
Finished renaming eric5 for PyQt5 to eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
414 | This slot is only available, if not called from within eric6. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
415 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
416 | escaped = self.regexpLineEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | if escaped: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | escaped = escaped.replace("\\", "\\\\") |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | cb = QApplication.clipboard() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | cb.setText(escaped, QClipboard.Clipboard) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | if cb.supportsSelection(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
422 | cb.setText(escaped, QClipboard.Selection) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
425 | def on_validateButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
427 | Private slot to validate the entered regexp. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
428 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
429 | regex = self.regexpLineEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
430 | if regex: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
431 | re = QRegExp(regex) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
432 | if self.caseSensitiveCheckBox.isChecked(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | re.setCaseSensitivity(Qt.CaseSensitive) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
434 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
435 | re.setCaseSensitivity(Qt.CaseInsensitive) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
436 | re.setMinimal(self.minimalCheckBox.isChecked()) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
437 | re.setPatternSyntax( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
438 | self.syntaxCombo.itemData(self.syntaxCombo.currentIndex())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
439 | if re.isValid(): |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
440 | E5MessageBox.information( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
441 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
442 | self.tr("Validation"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
443 | self.tr("""The regular expression is valid.""")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
444 | else: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
445 | E5MessageBox.critical( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
446 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
447 | self.tr("Error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
448 | self.tr("""Invalid regular expression: {0}""") |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
449 | .format(re.errorString())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
450 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
451 | else: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
452 | E5MessageBox.critical( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
453 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
454 | self.tr("Error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
455 | self.tr("""A regular expression must be given.""")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
457 | @pyqtSlot() |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
458 | def on_executeButton_clicked(self, startpos=0): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
459 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | Private slot to execute the entered regexp on the test text. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
462 | This slot will execute the entered regexp on the entered test |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
463 | data and will display the result in the table part of the dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
464 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
465 | @param startpos starting position for the regexp matching |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
466 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | regex = self.regexpLineEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
468 | text = self.textTextEdit.toPlainText() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | if regex and text: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
470 | re = QRegExp(regex) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
471 | if self.caseSensitiveCheckBox.isChecked(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
472 | re.setCaseSensitivity(Qt.CaseSensitive) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
473 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | re.setCaseSensitivity(Qt.CaseInsensitive) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
475 | re.setMinimal(self.minimalCheckBox.isChecked()) |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
476 | syntax = self.syntaxCombo.itemData(self.syntaxCombo.currentIndex()) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
477 | wildcard = syntax in [QRegExp.Wildcard, QRegExp.WildcardUnix] |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
478 | re.setPatternSyntax(syntax) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
479 | if not re.isValid(): |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
480 | E5MessageBox.critical( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
481 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
482 | self.tr("Error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
483 | self.tr("""Invalid regular expression: {0}""") |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
484 | .format(re.errorString())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
485 | return |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
486 | offset = re.indexIn(text, startpos) |
2104
671c38b34bef
Fixed an issue with the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2101
diff
changeset
|
487 | captures = re.captureCount() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
488 | row = 0 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
489 | OFFSET = 5 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
490 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | self.resultTable.setColumnCount(0) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | self.resultTable.setColumnCount(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
493 | self.resultTable.setRowCount(0) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
494 | self.resultTable.setRowCount(OFFSET) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
495 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
496 | row, 0, QTableWidgetItem(self.tr("Regexp"))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | self.resultTable.setItem(row, 1, QTableWidgetItem(regex)) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
498 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
499 | if offset != -1: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
500 | self.lastMatchEnd = offset + re.matchedLength() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
501 | self.nextButton.setEnabled(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | row += 1 |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
503 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
504 | row, 0, QTableWidgetItem(self.tr("Offset"))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
505 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
506 | row, 1, QTableWidgetItem("{0:d}".format(offset))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
507 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
508 | if not wildcard: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
509 | row += 1 |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
510 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
511 | row, 0, QTableWidgetItem(self.tr("Captures"))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
512 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
513 | row, 1, QTableWidgetItem("{0:d}".format(captures))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
514 | row += 1 |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
515 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
516 | row, 1, QTableWidgetItem(self.tr("Text"))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
517 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
518 | row, 2, QTableWidgetItem(self.tr("Characters"))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
519 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
520 | row += 1 |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
521 | self.resultTable.setItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
522 | row, 0, QTableWidgetItem(self.tr("Match"))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
523 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
524 | row, 1, QTableWidgetItem(re.cap(0))) |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
525 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
526 | row, 2, |
425
ca5e65413fc5
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
527 | QTableWidgetItem("{0:d}".format(re.matchedLength()))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
528 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
529 | if not wildcard: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
530 | for i in range(1, captures + 1): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
531 | if len(re.cap(i)) > 0: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
532 | row += 1 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
533 | self.resultTable.insertRow(row) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
534 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
535 | row, 0, |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
536 | QTableWidgetItem( |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
537 | self.tr("Capture #{0}").format(i))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
538 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
539 | row, 1, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
540 | QTableWidgetItem(re.cap(i))) |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
541 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
542 | row, 2, |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
543 | QTableWidgetItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
544 | "{0:d}".format(len(re.cap(i))))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
545 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
546 | self.resultTable.setRowCount(3) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
547 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
548 | # highlight the matched text |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
549 | tc = self.textTextEdit.textCursor() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
550 | tc.setPosition(offset) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
551 | tc.setPosition(self.lastMatchEnd, QTextCursor.KeepAnchor) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
552 | self.textTextEdit.setTextCursor(tc) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
553 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
554 | self.nextButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
555 | self.resultTable.setRowCount(2) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
556 | row += 1 |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
557 | if startpos > 0: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
558 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
559 | row, 0, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
560 | QTableWidgetItem(self.tr("No more matches"))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
561 | else: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
562 | self.resultTable.setItem( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
563 | row, 0, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
564 | QTableWidgetItem(self.tr("No matches"))) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
565 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
566 | # remove the highlight |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
567 | tc = self.textTextEdit.textCursor() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
568 | tc.setPosition(0) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
569 | self.textTextEdit.setTextCursor(tc) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
570 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
571 | self.resultTable.resizeColumnsToContents() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
572 | self.resultTable.resizeRowsToContents() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
573 | self.resultTable.verticalHeader().hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
574 | self.resultTable.horizontalHeader().hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
575 | else: |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
576 | E5MessageBox.critical( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
577 | self, |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
578 | self.tr("Error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
579 | self.tr("""A regular expression and a text must""" |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3189
diff
changeset
|
580 | """ be given.""")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
581 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
582 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
583 | def on_nextButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
584 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
585 | Private slot to find the next match. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
586 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
587 | self.on_executeButton_clicked(self.lastMatchEnd) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
588 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
589 | def on_regexpLineEdit_textChanged(self, txt): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
590 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
591 | Private slot called when the regexp changes. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
592 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
593 | @param txt the new text of the line edit (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
594 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
595 | self.nextButton.setEnabled(False) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
596 | |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
597 | def __getPatternSyntaxCode(self, syntaxValue): |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
598 | """ |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
599 | Private method to convert a pattern syntax value into a |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
600 | pattern syntax string. |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
601 | |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
602 | @param syntaxValue pattern syntax value (integer) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
603 | @return pattern syntax string (string) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
604 | """ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
605 | syntax = "QRegExp." |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
606 | if syntaxValue == QRegExp.RegExp: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
607 | syntax += "RegExp" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
608 | elif syntaxValue == QRegExp.RegExp2: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
609 | syntax += "RegExp2" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
610 | elif syntaxValue == QRegExp.Wildcard: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
611 | syntax += "Wildcard" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
612 | elif syntaxValue == QRegExp.WildcardUnix: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
613 | syntax += "WildcardUnix" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
614 | elif syntaxValue == QRegExp.FixedString: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
615 | syntax += "FixedString" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
616 | elif syntaxValue == QRegExp.W3CXmlSchema11: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
617 | syntax += "W3CXmlSchema11" |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
618 | return syntax |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
619 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
620 | def getCode(self, indLevel, indString): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
621 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
622 | Public method to get the source code. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
623 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
624 | @param indLevel indentation level (int) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
625 | @param indString string used for indentation (space or tab) (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
626 | @return generated code (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
627 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
628 | # calculate the indentation string |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
629 | istring = indLevel * indString |
446
69aac6eeba9b
Changed the wizards code generation to eliminate not needed backslashes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
425
diff
changeset
|
630 | estring = os.linesep + indLevel * indString |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
631 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
632 | # now generate the code |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
633 | reVar = self.variableLineEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
634 | if not reVar: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
635 | reVar = "regexp" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
636 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
637 | regexp = self.regexpLineEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
638 | |
425
ca5e65413fc5
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
639 | code = '{0} = QRegExp(r"""{1}"""){2}'.format( |
ca5e65413fc5
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
640 | reVar, regexp.replace('"', '\\"'), os.linesep) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
641 | if not self.caseSensitiveCheckBox.isChecked(): |
425
ca5e65413fc5
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
642 | code += '{0}{1}.setCaseSensitivity(Qt.CaseInsensitive){2}'.format( |
ca5e65413fc5
Did some more string format conversions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
96
diff
changeset
|
643 | istring, reVar, os.linesep) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
644 | if self.minimalCheckBox.isChecked(): |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
645 | code += '{0}{1}.setMinimal(True){2}'.format( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
646 | istring, reVar, os.linesep) |
1818
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
647 | syntax = self.syntaxCombo.itemData(self.syntaxCombo.currentIndex()) |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
648 | needPatternSyntax = True |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
649 | if qVersion() < "5.0.0" and syntax == QRegExp.RegExp or \ |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
650 | qVersion() >= "5.0.0" and syntax == QRegExp.RegExp2: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
651 | # default value selected |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
652 | needPatternSyntax = False |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
653 | if needPatternSyntax: |
a5e4cb4bed43
Added support for the various pattern syntaxes to the QRegExp wizard.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
654 | code += '{0}{1}.setPatternSyntax({2}){3}'.format( |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
655 | istring, reVar, self.__getPatternSyntaxCode(syntax), |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
656 | estring) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
657 | return code |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
658 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
659 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
660 | class QRegExpWizardDialog(QDialog): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
661 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
662 | Class for the dialog variant. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
663 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
664 | def __init__(self, parent=None, fromEric=True): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
665 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
666 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
667 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
668 | @param parent parent widget (QWidget) |
3670
f0cb7579c0b4
Finished renaming eric5 for PyQt5 to eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3656
diff
changeset
|
669 | @param fromEric flag indicating a call from within eric6 |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
670 | """ |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2407
diff
changeset
|
671 | super(QRegExpWizardDialog, self).__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
672 | self.setModal(fromEric) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
673 | self.setSizeGripEnabled(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
674 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
675 | self.__layout = QVBoxLayout(self) |
2824
858412c29c34
Replaced the obsoleted method setMargin() with setContentsMargins().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2752
diff
changeset
|
676 | self.__layout.setContentsMargins(0, 0, 0, 0) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
677 | self.setLayout(self.__layout) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
678 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
679 | self.cw = QRegExpWizardWidget(self, fromEric) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
680 | size = self.cw.size() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
681 | self.__layout.addWidget(self.cw) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
682 | self.resize(size) |
3189
9a21c547de5f
Fixed issues showing the correct window title for some dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
683 | self.setWindowTitle(self.cw.windowTitle()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
684 | |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
685 | self.cw.buttonBox.accepted.connect(self.accept) |
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
686 | self.cw.buttonBox.rejected.connect(self.reject) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
687 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
688 | def getCode(self, indLevel, indString): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
689 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
690 | Public method to get the source code. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
691 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
692 | @param indLevel indentation level (int) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
693 | @param indString string used for indentation (space or tab) (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
694 | @return generated code (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
695 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
696 | return self.cw.getCode(indLevel, indString) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
697 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
698 | |
2101
5bac7dee9e1a
Introduced the E5MainWindow class allowing to set a style for all the main windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1818
diff
changeset
|
699 | class QRegExpWizardWindow(E5MainWindow): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
700 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
701 | Main window class for the standalone dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
702 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
703 | def __init__(self, parent=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
704 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
705 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
706 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
707 | @param parent reference to the parent widget (QWidget) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
708 | """ |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2407
diff
changeset
|
709 | super(QRegExpWizardWindow, self).__init__(parent) |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
710 | self.cw = QRegExpWizardWidget(self, fromEric=False) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
711 | size = self.cw.size() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
712 | self.setCentralWidget(self.cw) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
713 | self.resize(size) |
3189
9a21c547de5f
Fixed issues showing the correct window title for some dialogs.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
714 | self.setWindowTitle(self.cw.windowTitle()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
715 | |
2893
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
716 | self.setStyle( |
150de635fa29
Some changes to code generation wizards.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2824
diff
changeset
|
717 | Preferences.getUI("Style"), Preferences.getUI("StyleSheet")) |
2101
5bac7dee9e1a
Introduced the E5MainWindow class allowing to set a style for all the main windows.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1818
diff
changeset
|
718 | |
3345
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
719 | self.cw.buttonBox.accepted.connect(self.close) |
071afe8be2a1
Changed signal/slot usage to not use constructs like 'triggered[()].connect(...)' anymore.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
720 | self.cw.buttonBox.rejected.connect(self.close) |