8 """ |
8 """ |
9 |
9 |
10 import os |
10 import os |
11 |
11 |
12 from PyQt5.QtCore import pyqtSlot, Qt, QPoint |
12 from PyQt5.QtCore import pyqtSlot, Qt, QPoint |
13 from PyQt5.QtGui import QCursor |
|
14 from PyQt5.QtWidgets import ( |
13 from PyQt5.QtWidgets import ( |
15 QWidget, QDialogButtonBox, QTreeWidgetItem, QAbstractButton, QMenu, |
14 QWidget, QDialogButtonBox, QTreeWidgetItem, QAbstractButton, QMenu, |
16 QHeaderView, QApplication |
15 QHeaderView, QApplication |
17 ) |
16 ) |
|
17 |
|
18 from E5Gui.E5OverrideCursor import E5OverrideCursor |
18 |
19 |
19 from .Ui_HgShelveBrowserDialog import Ui_HgShelveBrowserDialog |
20 from .Ui_HgShelveBrowserDialog import Ui_HgShelveBrowserDialog |
20 |
21 |
21 |
22 |
22 class HgShelveBrowserDialog(QWidget, Ui_HgShelveBrowserDialog): |
23 class HgShelveBrowserDialog(QWidget, Ui_HgShelveBrowserDialog): |
127 self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False) |
128 self.buttonBox.button(QDialogButtonBox.Close).setEnabled(False) |
128 self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True) |
129 self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(True) |
129 self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True) |
130 self.buttonBox.button(QDialogButtonBox.Cancel).setDefault(True) |
130 QApplication.processEvents() |
131 QApplication.processEvents() |
131 |
132 |
132 QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) |
|
133 QApplication.processEvents() |
|
134 |
|
135 self.buf = [] |
133 self.buf = [] |
136 self.errors.clear() |
134 self.errors.clear() |
137 self.intercept = False |
135 self.intercept = False |
138 |
136 |
139 args = self.vcs.initCommand("shelve") |
137 args = self.vcs.initCommand("shelve") |
140 args.append("--list") |
138 args.append("--list") |
141 args.append("--stat") |
139 args.append("--stat") |
142 |
140 |
143 out, err = self.__hgClient.runcommand(args) |
141 with E5OverrideCursor(): |
144 self.buf = out.splitlines(True) |
142 out, err = self.__hgClient.runcommand(args) |
145 if err: |
143 self.buf = out.splitlines(True) |
146 self.__showError(err) |
144 if err: |
147 self.__processBuffer() |
145 self.__showError(err) |
|
146 self.__processBuffer() |
148 self.__finish() |
147 self.__finish() |
149 |
148 |
150 def start(self, projectDir): |
149 def start(self, projectDir): |
151 """ |
150 """ |
152 Public slot to start the hg shelve command. |
151 Public slot to start the hg shelve command. |
175 def __finish(self): |
174 def __finish(self): |
176 """ |
175 """ |
177 Private slot called when the process finished or the user pressed |
176 Private slot called when the process finished or the user pressed |
178 the button. |
177 the button. |
179 """ |
178 """ |
180 QApplication.restoreOverrideCursor() |
|
181 |
|
182 self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True) |
179 self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True) |
183 self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False) |
180 self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False) |
184 self.buttonBox.button(QDialogButtonBox.Close).setDefault(True) |
181 self.buttonBox.button(QDialogButtonBox.Close).setDefault(True) |
185 |
182 |
186 self.refreshButton.setEnabled(True) |
183 self.refreshButton.setEnabled(True) |