5 |
5 |
6 """ |
6 """ |
7 Module implementing a dialog to show the output of the git diff command |
7 Module implementing a dialog to show the output of the git diff command |
8 process. |
8 process. |
9 """ |
9 """ |
|
10 |
|
11 import contextlib |
10 |
12 |
11 from PyQt5.QtCore import pyqtSlot, QFileInfo, Qt |
13 from PyQt5.QtCore import pyqtSlot, QFileInfo, Qt |
12 from PyQt5.QtGui import QTextCursor |
14 from PyQt5.QtGui import QTextCursor |
13 from PyQt5.QtWidgets import QWidget, QDialogButtonBox |
15 from PyQt5.QtWidgets import QWidget, QDialogButtonBox |
14 |
16 |
34 Constructor |
36 Constructor |
35 |
37 |
36 @param vcs reference to the vcs object |
38 @param vcs reference to the vcs object |
37 @param parent parent widget (QWidget) |
39 @param parent parent widget (QWidget) |
38 """ |
40 """ |
39 super(GitDiffDialog, self).__init__(parent) |
41 super().__init__(parent) |
40 self.setupUi(self) |
42 self.setupUi(self) |
41 |
43 |
42 self.refreshButton = self.buttonBox.addButton( |
44 self.refreshButton = self.buttonBox.addButton( |
43 self.tr("Refresh"), QDialogButtonBox.ButtonRole.ActionRole) |
45 self.tr("Refresh"), QDialogButtonBox.ButtonRole.ActionRole) |
44 self.refreshButton.setToolTip( |
46 self.refreshButton.setToolTip( |
142 if self.searchWidget2: |
144 if self.searchWidget2: |
143 self.searchWidget2.setVisible(diffMode == "work2stage2repo") |
145 self.searchWidget2.setVisible(diffMode == "work2stage2repo") |
144 |
146 |
145 self.filesCombo.clear() |
147 self.filesCombo.clear() |
146 |
148 |
147 try: |
149 with contextlib.suppress(AttributeError): |
148 self.highlighter.regenerateRules() |
150 self.highlighter.regenerateRules() |
149 self.highlighter2.regenerateRules() |
151 self.highlighter2.regenerateRules() |
150 except AttributeError: |
|
151 # backward compatibility |
|
152 pass |
|
153 |
152 |
154 if diffMode in ["work2repo", "work2stage", "stage2repo", |
153 if diffMode in ["work2repo", "work2stage", "stage2repo", |
155 "work2stage2repo"]: |
154 "work2stage2repo"]: |
156 self.contentsGroup.setTitle( |
155 self.contentsGroup.setTitle( |
157 self.tr("Difference ({0})") |
156 self.tr("Difference ({0})") |