diff python/ide.py @ 169:ee0d30533dae

Added more tests and improved the diagnostic update
author Windel Bouwman
date Sat, 23 Mar 2013 18:34:41 +0100
parents 49f1ab80d040
children 8b2f20aae086
line wrap: on
line diff
--- a/python/ide.py	Fri Mar 22 19:09:38 2013 +0100
+++ b/python/ide.py	Sat Mar 23 18:34:41 2013 +0100
@@ -34,9 +34,13 @@
       self.setModel(model)
       self.clicked.connect(self.itemSelected)
       self.errorIcon = QIcon('error.png')
+      self.model = QStandardItemModel()
+      self.model.setHorizontalHeaderLabels(['Message', 'Row', 'Column'])
+      self.setModel(self.model)
+
    def setErrorList(self, errorlist):
-      model = QStandardItemModel()
-      model.setHorizontalHeaderLabels(['Message', 'Row', 'Column'])
+      c = self.model.rowCount()
+      self.model.removeRows(0, c)
       for e in errorlist:
          item = QStandardItem(self.errorIcon, str(e.msg))
          item.setData(e)
@@ -44,13 +48,11 @@
          irow.setData(e)
          icol = QStandardItem(str(e.loc.col))
          icol.setData(e)
-         model.appendRow([item, irow, icol])
-      self.setModel(model)
+         self.model.appendRow([item, irow, icol])
    def itemSelected(self, index):
       if not index.isValid():
          return
-      model = self.model()
-      item = model.itemFromIndex(index)
+      item = self.model.itemFromIndex(index)
       err = item.data()
       self.sigErrorSelected.emit(err)