Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py

changeset 4235
81278aff6af9
parent 4234
40741c858639
child 4236
8d4e498a7af8
diff -r 40741c858639 -r 81278aff6af9 Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py
--- a/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Thu Apr 23 19:09:34 2015 +0200
+++ b/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Thu Apr 23 20:05:38 2015 +0200
@@ -12,7 +12,7 @@
 import os
 import fnmatch
 
-from PyQt5.QtCore import pyqtSlot, Qt
+from PyQt5.QtCore import pyqtSlot, Qt, QTimer
 from PyQt5.QtWidgets import QDialog, QDialogButtonBox, QTreeWidgetItem, \
     QApplication, QHeaderView
 
@@ -331,24 +331,25 @@
         Private slot called when the syntax check finished or the user
         pressed the button.
         """
-        self.__finished = True
-        
-        self.cancelled = True
-        self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
-        self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
-        self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
-        
-        if self.noResults:
-            QTreeWidgetItem(self.resultList, [self.tr('No issues found.')])
-            QApplication.processEvents()
-            self.showButton.setEnabled(False)
-        else:
-            self.showButton.setEnabled(True)
-        self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
-        self.resultList.header().setStretchLastSection(True)
-        
-        self.checkProgress.setVisible(False)
-        self.checkProgressLabel.setVisible(False)
+        if not self.__finished:
+            self.__finished = True
+            
+            self.cancelled = True
+            self.buttonBox.button(QDialogButtonBox.Close).setEnabled(True)
+            self.buttonBox.button(QDialogButtonBox.Cancel).setEnabled(False)
+            self.buttonBox.button(QDialogButtonBox.Close).setDefault(True)
+            
+            if self.noResults:
+                QTreeWidgetItem(self.resultList, [self.tr('No issues found.')])
+                QApplication.processEvents()
+                self.showButton.setEnabled(False)
+            else:
+                self.showButton.setEnabled(True)
+            self.resultList.header().resizeSections(QHeaderView.ResizeToContents)
+            self.resultList.header().setStretchLastSection(True)
+            
+            self.checkProgress.setVisible(False)
+            self.checkProgressLabel.setVisible(False)
         
     def on_buttonBox_clicked(self, button):
         """
@@ -361,6 +362,7 @@
         elif button == self.buttonBox.button(QDialogButtonBox.Cancel):
             if self.__batch:
                 self.syntaxCheckService.cancelSyntaxBatchCheck()
+                QTimer.singleShot(1000, self.__finish)
             else:
                 self.__finish()
         elif button == self.showButton:

eric ide

mercurial