Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py

changeset 3064
2e7054d62218
parent 3062
9de9373da5bb
child 3080
6c0a430b19df
child 3091
8239cae3f947
--- a/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Wed Nov 06 19:23:06 2013 +0100
+++ b/Plugins/CheckerPlugins/SyntaxChecker/SyntaxCheckerDialog.py	Wed Nov 06 19:44:42 2013 +0100
@@ -372,13 +372,32 @@
         """
         vm = e5App().getObject("ViewManager")
         
+        selectedIndexes = []
         for index in range(self.resultList.topLevelItemCount()):
+            if self.resultList.topLevelItem(index).isSelected():
+                selectedIndexes.append(index)
+        if len(selectedIndexes) == 0:
+            selectedIndexes = list(range(self.resultList.topLevelItemCount()))
+        for index in selectedIndexes:
             itm = self.resultList.topLevelItem(index)
             fn = Utilities.normabspath(itm.data(0, self.filenameRole))
             vm.openSourceFile(fn, 1)
+            editor = vm.getOpenEditor(fn)
+            editor.clearSyntaxError()
+            editor.clearFlakesWarnings()
+            for cindex in range(itm.childCount()):
+                citm = itm.child(cindex)
+                lineno = citm.data(0, self.lineRole)
+                index = citm.data(0, self.indexRole)
+                error = citm.data(0, self.errorRole)
+                if citm.data(0, self.warningRole):
+                    editor.toggleWarning(lineno, True, error)
+                else:
+                    editor.toggleSyntaxError(
+                        lineno, index, True, error, show=True)
         
         # go through the list again to clear syntax error and
-        # py3flakes warning markers for files, that are ok
+        # flakes warning markers for files, that are ok
         openFiles = vm.getOpenFilenames()
         errorFiles = []
         for index in range(self.resultList.topLevelItemCount()):

eric ide

mercurial