--- a/eric6/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesHeaderDialog.py Wed Jan 08 19:13:57 2020 +0100 +++ b/eric6/Plugins/VcsPlugins/vcsMercurial/QueuesExtension/HgQueuesHeaderDialog.py Mon Jan 13 19:23:08 2020 +0100 @@ -10,11 +10,9 @@ import os -from PyQt5.QtCore import QProcess, QTimer, Qt, QCoreApplication +from PyQt5.QtCore import Qt, QCoreApplication from PyQt5.QtWidgets import QDialog, QDialogButtonBox -from E5Gui import E5MessageBox - from .Ui_HgQueuesHeaderDialog import Ui_HgQueuesHeaderDialog import Utilities @@ -41,14 +39,6 @@ self.vcs = vcs self.__hgClient = vcs.getClient() - if self.__hgClient: - self.process = None - else: - self.process = QProcess() - self.process.finished.connect(self.__procFinished) - self.process.readyReadStandardOutput.connect(self.__readStdout) - self.process.readyReadStandardError.connect(self.__readStderr) - self.show() QCoreApplication.processEvents() @@ -58,17 +48,8 @@ @param e close event (QCloseEvent) """ - if self.__hgClient: - if self.__hgClient.isExecuting(): - self.__hgClient.cancel() - else: - if ( - self.process is not None and - self.process.state() != QProcess.NotRunning - ): - self.process.terminate() - QTimer.singleShot(2000, self.process.kill) - self.process.waitForFinished(3000) + if self.__hgClient.isExecuting(): + self.__hgClient.cancel() e.accept() @@ -91,42 +72,19 @@ args = self.vcs.initCommand("qheader") - if self.__hgClient: - out, err = self.__hgClient.runcommand( - args, output=self.__showOutput, error=self.__showError) - if err: - self.__showError(err) - if out: - self.__showOutPut(out) - self.__finish() - else: - self.process.kill() - self.process.setWorkingDirectory(repodir) - - self.process.start('hg', args) - procStarted = self.process.waitForStarted(5000) - if not procStarted: - E5MessageBox.critical( - self, - self.tr('Process Generation Error'), - self.tr( - 'The process {0} could not be started. ' - 'Ensure, that it is in the search path.' - ).format('hg')) + out, err = self.__hgClient.runcommand( + args, output=self.__showOutput, error=self.__showError) + if err: + self.__showError(err) + if out: + self.__showOutPut(out) + self.__finish() def __finish(self): """ Private slot called when the process finished or the user pressed the button. """ - if ( - self.process is not None and - self.process.state() != QProcess.NotRunning - ): - self.process.terminate() - QTimer.singleShot(2000, self.process.kill) - self.process.waitForFinished(3000) - self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True) self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False) self.buttonBox.button(QDialogButtonBox.Close).setDefault(True) @@ -147,27 +105,6 @@ else: self.__finish() - def __procFinished(self, exitCode, exitStatus): - """ - Private slot connected to the finished signal. - - @param exitCode exit code of the process (integer) - @param exitStatus exit status of the process (QProcess.ExitStatus) - """ - self.__finish() - - def __readStdout(self): - """ - Private slot to handle the readyReadStdout signal. - - It reads the output of the process, formats it and inserts it into - the contents pane. - """ - if self.process is not None: - s = str(self.process.readAllStandardOutput(), - self.vcs.getEncoding(), 'replace') - self.__showOutput(s) - def __showOutput(self, out): """ Private slot to show some output. @@ -176,18 +113,6 @@ """ self.messageEdit.appendPlainText(Utilities.filterAnsiSequences(out)) - def __readStderr(self): - """ - Private slot to handle the readyReadStderr signal. - - It reads the error output of the process and inserts it into the - error pane. - """ - if self.process is not None: - s = str(self.process.readAllStandardError(), - self.vcs.getEncoding(), 'replace') - self.__showError(s) - def __showError(self, out): """ Private slot to show some error.