Tue, 18 Oct 2022 16:06:21 +0200
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
8881
54e42bc2437a
Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8629
diff
changeset
|
3 | # Copyright (c) 2011 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog to enter data for signing a revision. |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
10 | from PyQt6.QtCore import pyqtSlot |
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
11 | from PyQt6.QtWidgets import QDialog, QDialogButtonBox |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
13 | from eric7.EricWidgets.EricApplication import ericApp |
8629
1b58dc890b87
Extended the Quick Commit (and other commit alike dialogs) to respect the project spell check language settings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
14 | |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | from .Ui_HgGpgSignDialog import Ui_HgGpgSignDialog |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | class HgGpgSignDialog(QDialog, Ui_HgGpgSignDialog): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | Class implementing a dialog to enter data for signing a revision. |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
22 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
23 | def __init__(self, tagsList, branchesList, bookmarksList=None, parent=None): |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | Constructor |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
26 | |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
27 | @param tagsList list of tags |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
28 | @type list of str |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
29 | @param branchesList list of branches |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
30 | @type list of str |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
31 | @param bookmarksList list of bookmarks |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
32 | @type list of str |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
33 | @param parent parent widget |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
34 | @type QWidget |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
36 | super().__init__(parent) |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | self.setupUi(self) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
38 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
39 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(False) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
40 | |
8629
1b58dc890b87
Extended the Quick Commit (and other commit alike dialogs) to respect the project spell check language settings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
41 | project = ericApp().getObject("Project") |
1b58dc890b87
Extended the Quick Commit (and other commit alike dialogs) to respect the project spell check language settings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
42 | pwl, pel = project.getProjectDictionaries() |
1b58dc890b87
Extended the Quick Commit (and other commit alike dialogs) to respect the project spell check language settings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8318
diff
changeset
|
43 | language = project.getProjectSpellLanguage() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
44 | self.messageEdit.setLanguageWithPWL(language, pwl or None, pel or None) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
45 | |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | self.tagCombo.addItems(sorted(tagsList)) |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | self.branchCombo.addItems(["default"] + sorted(branchesList)) |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | if bookmarksList is not None: |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | self.bookmarkCombo.addItems(sorted(bookmarksList)) |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | else: |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.bookmarkButton.setHidden(True) |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.bookmarkCombo.setHidden(True) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
53 | |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
54 | # connect various radio buttons and input fields |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
55 | self.idButton.toggled.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
56 | self.tagButton.toggled.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
57 | self.branchButton.toggled.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
58 | self.bookmarkButton.toggled.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
59 | self.expressionButton.toggled.connect(self.__updateOK) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
60 | |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
61 | self.idEdit.textChanged.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
62 | self.expressionEdit.textChanged.connect(self.__updateOK) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
63 | |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
64 | self.tagCombo.editTextChanged.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
65 | self.branchCombo.editTextChanged.connect(self.__updateOK) |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
66 | self.bookmarkCombo.editTextChanged.connect(self.__updateOK) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
67 | |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
68 | @pyqtSlot() |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | def __updateOK(self): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71 | Private slot to update the OK button. |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
72 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | enabled = True |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74 | if self.idButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
75 | enabled = enabled and self.idEdit.text() != "" |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76 | elif self.tagButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | enabled = enabled and self.tagCombo.currentText() != "" |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | elif self.branchButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | enabled = enabled and self.branchCombo.currentText() != "" |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | elif self.bookmarkButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81 | enabled = enabled and self.bookmarkCombo.currentText() != "" |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
82 | elif self.expressionButton.isChecked(): |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
83 | enabled = enabled and bool(self.expressionEdit.text()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
84 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
85 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(enabled) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
86 | |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87 | def getData(self): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
89 | Public method to retrieve the entered data. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
90 | |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
91 | @return tuple giving the revision, a flag indicating not to commit |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
92 | the signature, a commit message, an ID of the key to be used, |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | a flag indicating a local signature and a flag indicating a forced |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
94 | signature |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
95 | @rtype tuple of (str, bool, str, str, bool, bool) |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | """ |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | if self.numberButton.isChecked(): |
5476
fb81a812ed9c
Fixed a bug in the Mercurial GPG sign dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
98 | rev = str(self.numberSpinBox.value()) |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | elif self.idButton.isChecked(): |
5476
fb81a812ed9c
Fixed a bug in the Mercurial GPG sign dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
100 | rev = self.idEdit.text() |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | elif self.tagButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | rev = self.tagCombo.currentText() |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | elif self.branchButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
104 | rev = self.branchCombo.currentText() |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | elif self.bookmarkButton.isChecked(): |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | rev = self.bookmarkCombo.currentText() |
9025
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
107 | elif self.expressionButton.isChecked(): |
9fe8cfa14542
Mercurial Interface
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
108 | rev = self.expressionEdit.text() |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
109 | else: |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | rev = "" |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
111 | |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | return ( |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | rev, |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | self.nocommitCheckBox.isChecked(), |
1112
8a7d1b9d18db
Improved code quality by getting rid of star imports. That way pyflakes can do its job. A few bugs fixed found by flakes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1075
diff
changeset
|
115 | self.messageEdit.toPlainText(), |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
116 | self.keyEdit.text(), |
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
117 | self.localCheckBox.isChecked(), |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
118 | self.forceCheckBox.isChecked(), |
1075
75bfe8bd4243
Added support for the Mercurial gpg extension.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
119 | ) |