Index: third_party/pylint/reporters/guireporter.py |
diff --git a/third_party/pylint/reporters/guireporter.py b/third_party/pylint/reporters/guireporter.py |
new file mode 100644 |
index 0000000000000000000000000000000000000000..13914ba8fc722ffc4559c31fe8530d04a6b08ba6 |
--- /dev/null |
+++ b/third_party/pylint/reporters/guireporter.py |
@@ -0,0 +1,36 @@ |
+""" reporter used by gui.py """ |
+ |
+import sys |
+ |
+from pylint.interfaces import IReporter |
+from pylint.reporters import BaseReporter |
+from logilab.common.ureports import TextWriter |
+ |
+ |
+class GUIReporter(BaseReporter): |
+ """saves messages""" |
+ |
+ __implements__ = IReporter |
+ extension = '' |
+ |
+ def __init__(self, gui, output=sys.stdout): |
+ """init""" |
+ BaseReporter.__init__(self, output) |
+ self.msgs = [] |
+ self.gui = gui |
+ |
+ def add_message(self, msg_id, location, msg): |
+ """manage message of different type and in the context of path""" |
+ module, obj, line = location[1:] |
+ if self.include_ids: |
+ sigle = msg_id |
+ else: |
+ sigle = msg_id[0] |
+ |
+ full_msg = [sigle, module, obj, str(line), msg] |
+ self.msgs += [[sigle, module, obj, str(line)]] |
+ self.gui.msg_queue.put(full_msg) |
+ |
+ def _display(self, layout): |
+ """launch layouts display""" |
+ TextWriter().format(layout, self.out) |