15 from PyQt6.QtGui import QTextCursor |
15 from PyQt6.QtGui import QTextCursor |
16 from PyQt6.QtWidgets import QWidget, QDialogButtonBox |
16 from PyQt6.QtWidgets import QWidget, QDialogButtonBox |
17 |
17 |
18 from eric7.EricWidgets import EricMessageBox, EricFileDialog |
18 from eric7.EricWidgets import EricMessageBox, EricFileDialog |
19 from eric7.EricWidgets.EricApplication import ericApp |
19 from eric7.EricWidgets.EricApplication import ericApp |
|
20 from eric7.EricWidgets.EricTextEditSearchWidget import EricTextEditSearchWidget |
20 |
21 |
21 from .Ui_GitDiffDialog import Ui_GitDiffDialog |
22 from .Ui_GitDiffDialog import Ui_GitDiffDialog |
22 |
23 |
23 from .GitDiffHighlighter import GitDiffHighlighter |
24 from .GitDiffHighlighter import GitDiffHighlighter |
24 from .GitDiffGenerator import GitDiffGenerator |
25 from .GitDiffGenerator import GitDiffGenerator |
48 self.refreshButton.setToolTip(self.tr("Press to refresh the display")) |
49 self.refreshButton.setToolTip(self.tr("Press to refresh the display")) |
49 self.refreshButton.setEnabled(False) |
50 self.refreshButton.setEnabled(False) |
50 self.buttonBox.button(QDialogButtonBox.StandardButton.Save).setEnabled(False) |
51 self.buttonBox.button(QDialogButtonBox.StandardButton.Save).setEnabled(False) |
51 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setDefault(True) |
52 self.buttonBox.button(QDialogButtonBox.StandardButton.Close).setDefault(True) |
52 |
53 |
53 try: |
54 self.searchWidget = EricTextEditSearchWidget(self.contentsGroup) |
54 # insert the search widget if it is available |
55 self.searchWidget.setFocusPolicy(Qt.FocusPolicy.WheelFocus) |
55 from eric7.EricWidgets.EricTextEditSearchWidget import ( |
56 self.searchWidget.setObjectName("searchWidget") |
56 EricTextEditSearchWidget, |
57 self.contentsGroup.layout().insertWidget(1, self.searchWidget) |
57 ) |
58 self.searchWidget.attachTextEdit(self.contents) |
58 |
59 |
59 self.searchWidget = EricTextEditSearchWidget(self.contentsGroup) |
60 self.searchWidget2 = EricTextEditSearchWidget(self.contentsGroup) |
60 self.searchWidget.setFocusPolicy(Qt.FocusPolicy.WheelFocus) |
61 self.searchWidget2.setFocusPolicy(Qt.FocusPolicy.WheelFocus) |
61 self.searchWidget.setObjectName("searchWidget") |
62 self.searchWidget2.setObjectName("searchWidget2") |
62 self.contentsGroup.layout().insertWidget(1, self.searchWidget) |
63 self.contentsGroup.layout().addWidget(self.searchWidget2) |
63 self.searchWidget.attachTextEdit(self.contents) |
64 self.searchWidget2.attachTextEdit(self.contents2) |
64 |
65 |
65 self.searchWidget2 = EricTextEditSearchWidget(self.contentsGroup) |
66 self.setTabOrder(self.filesCombo, self.searchWidget) |
66 self.searchWidget2.setFocusPolicy(Qt.FocusPolicy.WheelFocus) |
67 self.setTabOrder(self.searchWidget, self.contents) |
67 self.searchWidget2.setObjectName("searchWidget2") |
68 self.setTabOrder(self.contents, self.contents2) |
68 self.contentsGroup.layout().addWidget(self.searchWidget2) |
69 self.setTabOrder(self.contents2, self.searchWidget2) |
69 self.searchWidget2.attachTextEdit(self.contents2) |
70 self.setTabOrder(self.searchWidget2, self.errors) |
70 |
|
71 self.setTabOrder(self.filesCombo, self.searchWidget) |
|
72 self.setTabOrder(self.searchWidget, self.contents) |
|
73 self.setTabOrder(self.contents, self.contents2) |
|
74 self.setTabOrder(self.contents2, self.searchWidget2) |
|
75 self.setTabOrder(self.searchWidget2, self.errors) |
|
76 except ImportError: |
|
77 # eric version without search widget |
|
78 self.searchWidget = None |
|
79 self.searchWidget2 = None |
|
80 |
71 |
81 self.vcs = vcs |
72 self.vcs = vcs |
82 |
73 |
83 font = Preferences.getEditorOtherFonts("MonospacedFont") |
74 font = Preferences.getEditorOtherFonts("MonospacedFont") |
84 self.contents.document().setDefaultFont(font) |
75 self.contents.document().setDefaultFont(font) |
148 self.errorGroup.hide() |
139 self.errorGroup.hide() |
149 |
140 |
150 self.contents.clear() |
141 self.contents.clear() |
151 self.contents2.clear() |
142 self.contents2.clear() |
152 self.contents2.setVisible(diffMode == "work2stage2repo") |
143 self.contents2.setVisible(diffMode == "work2stage2repo") |
153 if self.searchWidget2: |
144 self.searchWidget2.setVisible(diffMode == "work2stage2repo") |
154 self.searchWidget2.setVisible(diffMode == "work2stage2repo") |
|
155 |
145 |
156 self.filesCombo.clear() |
146 self.filesCombo.clear() |
157 |
147 |
158 with contextlib.suppress(AttributeError): |
148 with contextlib.suppress(AttributeError): |
159 self.highlighter.regenerateRules() |
149 self.highlighter.regenerateRules() |