eric6/Plugins/VcsPlugins/vcsSubversion/SvnRepoBrowserDialog.py

changeset 7771
787a6b3f8c9f
parent 7533
88261c96484b
child 7775
4a1db75550bd
--- a/eric6/Plugins/VcsPlugins/vcsSubversion/SvnRepoBrowserDialog.py	Fri Oct 09 17:19:29 2020 +0200
+++ b/eric6/Plugins/VcsPlugins/vcsSubversion/SvnRepoBrowserDialog.py	Sat Oct 10 12:20:51 2020 +0200
@@ -10,7 +10,6 @@
 
 import os
 
-from PyQt5.QtGui import QCursor
 from PyQt5.QtWidgets import (
     QHeaderView, QLineEdit, QDialog, QApplication, QDialogButtonBox,
     QTreeWidgetItem
@@ -18,6 +17,7 @@
 from PyQt5.QtCore import QTimer, QProcess, QRegExp, Qt, pyqtSlot
 
 from E5Gui import E5MessageBox
+from E5Gui.E5OverrideCursor import E5OverrideCursorProcess
 
 from .Ui_SvnRepoBrowserDialog import Ui_SvnRepoBrowserDialog
 
@@ -49,10 +49,10 @@
         self.vcs = vcs
         self.mode = mode
         
-        self.process = QProcess()
-        self.process.finished.connect(self.__procFinished)
-        self.process.readyReadStandardOutput.connect(self.__readStdout)
-        self.process.readyReadStandardError.connect(self.__readStderr)
+        self.__process = E5OverrideCursorProcess()
+        self.__process.finished.connect(self.__procFinished)
+        self.__process.readyReadStandardOutput.connect(self.__readStdout)
+        self.__process.readyReadStandardError.connect(self.__readStderr)
         
         if self.mode == "select":
             self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(False)
@@ -82,12 +82,12 @@
         @param e close event (QCloseEvent)
         """
         if (
-            self.process is not None and
-            self.process.state() != QProcess.NotRunning
+            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.__process.terminate()
+            QTimer.singleShot(2000, self.__process.kill)
+            self.__process.waitForFinished(3000)
         
         e.accept()
         
@@ -195,7 +195,6 @@
                     self.errors.insertPlainText(error)
                     self.errors.ensureCursorVisible()
         else:
-            QApplication.restoreOverrideCursor()
             E5MessageBox.critical(
                 self,
                 self.tr('Process Generation Error'),
@@ -215,9 +214,6 @@
         """
         self.errorGroup.hide()
         
-        QApplication.setOverrideCursor(QCursor(Qt.WaitCursor))
-        QApplication.processEvents()
-        
         self.repoUrl = url
         
         if parent is None:
@@ -250,7 +246,7 @@
         
         self.intercept = False
         
-        self.process.kill()
+        self.__process.kill()
         
         args = []
         args.append('list')
@@ -259,8 +255,8 @@
             args.append('--verbose')
         args.append(url)
         
-        self.process.start('svn', args)
-        procStarted = self.process.waitForStarted(5000)
+        self.__process.start('svn', args)
+        procStarted = self.__process.waitForStarted(5000)
         if not procStarted:
             self.__finish()
             self.inputGroup.setEnabled(False)
@@ -370,19 +366,18 @@
         button.
         """
         if (
-            self.process is not None and
-            self.process.state() != QProcess.NotRunning
+            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.__process.terminate()
+            QTimer.singleShot(2000, self.__process.kill)
+            self.__process.waitForFinished(3000)
         
         self.inputGroup.setEnabled(False)
         self.inputGroup.hide()
         
         self.__resizeColumns()
         self.__resort()
-        QApplication.restoreOverrideCursor()
     
     def __procFinished(self, exitCode, exitStatus):
         """
@@ -400,11 +395,11 @@
         It reads the output of the process, formats it and inserts it into
         the contents pane.
         """
-        if self.process is not None:
-            self.process.setReadChannel(QProcess.StandardOutput)
+        if self.__process is not None:
+            self.__process.setReadChannel(QProcess.StandardOutput)
             
-            while self.process.canReadLine():
-                s = str(self.process.readLine(),
+            while self.__process.canReadLine():
+                s = str(self.__process.readLine(),
                         Preferences.getSystem("IOEncoding"),
                         'replace')
                 if self.__rx_dir.exactMatch(s):
@@ -438,8 +433,8 @@
         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(),
+        if self.__process is not None:
+            s = str(self.__process.readAllStandardError(),
                     Preferences.getSystem("IOEncoding"),
                     'replace')
             self.errors.insertPlainText(s)
@@ -472,7 +467,7 @@
             self.errors.insertPlainText(inputTxt)
             self.errors.ensureCursorVisible()
         
-        self.process.write(strToQByteArray(inputTxt))
+        self.__process.write(strToQByteArray(inputTxt))
         
         self.passwordCheckBox.setChecked(False)
         self.input.clear()

eric ide

mercurial