Browse Source

Affichage d'infobulles

omassot 7 years ago
parent
commit
f981a1c72a
3 changed files with 23 additions and 9 deletions
  1. 2 1
      core/checking.py
  2. 16 8
      ui/dlg_main.py
  3. 5 0
      ui/dlg_main.ui

+ 2 - 1
core/checking.py

@@ -5,6 +5,7 @@
 @author: olivier.massot, 2018
 '''
 import inspect
+import re
 import sys
 import traceback
 
@@ -53,7 +54,7 @@ class TestResult():
 
     @property
     def description(self):
-        return self._test.__doc__.strip() 
+        return re.sub(" +", " ", self._test.__doc__.strip(), flags=re.MULTILINE) #@UndefinedVariable
     
     @property
     def status(self):

+ 16 - 8
ui/dlg_main.py

@@ -127,14 +127,20 @@ class DlgMain(QtWidgets.QDialog):
             if result.status == checking.SUCCESS:
                 topitem.setIcon(0, QIcon(QPixmap(RSCDIR / "ok_16.png")))
                 topitem.setText(1, f"{result.title}")
+                
             elif result.status == checking.FAILURE:
                 topitem.setIcon(0, QIcon(QPixmap(RSCDIR / "error_16.png")))
                 topitem.setText(1, f"{result.title} ({len(result.errors)})")
+                
             elif result.status == checking.ERROR:
                 topitem.setIcon(0, QIcon(QPixmap(RSCDIR / "warning_16.png")))
                 topitem.setText(1, f"{result.title} [Erreur inconnue]")
+                
             else:
-                topitem.setText(1, f"{result.title} [Résultat manquant]")
+                topitem.setText(1, f"{result.title} [Erreur: aucun résultat]")
+            
+            topitem.setToolTip(0, f"{result.status_str}")
+            topitem.setToolTip(1, f"{result.description}\n[test: {result.name}]")
             
             self.ui.tree_report.addTopLevelItem(topitem)
             
@@ -142,25 +148,27 @@ class DlgMain(QtWidgets.QDialog):
                 erritem = QTreeWidgetItem()
                 
                 msg = err.message
-                data = None
                 
                 if "exc_info" in err.info:
-                    data = err.info["exc_info"]
                     logger.debug("%s", err.message, err.info["exc_info"])
+                    erritem.setData(1, Qt.UserRole, err.info["exc_info"])
                     
                 elif "model" in err.info:
                     data = err.info["model"]
-                    msg = f"{data.layername} - {msg}"
+                    erritem.setText(1, msg)
+                    erritem.setText(2, f"{data.layername}")
+                    erritem.setData(1, Qt.UserRole, data)
                     
                 elif "item" in err.info:
                     data = err.info["item"]
-                    msg = f"{data} - {msg}"
-                
-                erritem.setText(1, msg)
-                erritem.setData(1, Qt.UserRole, data)
+                    erritem.setText(1, msg)
+                    erritem.setText(2, f"{data}")
+                    erritem.setData(1, Qt.UserRole, data)
                 
                 topitem.addChild(erritem)
         
+        self.ui.tree_report.resizeColumnToContents(1)
+        
     def tree_item_clicked(self, item, _):
         
         data = item.data(1, Qt.UserRole)

+ 5 - 0
ui/dlg_main.ui

@@ -156,6 +156,11 @@
        <string>text</string>
       </property>
      </column>
+     <column>
+      <property name="text">
+       <string>item</string>
+      </property>
+     </column>
     </widget>
    </item>
    <item>