src/eric7/MicroPython/WifiDialogs/WifiStatusDialog.py

branch
mpy_network
changeset 9798
4402d76c5fa9
parent 9797
3be7b2326e2c
child 9828
32c8a5b57332
--- a/src/eric7/MicroPython/WifiDialogs/WifiStatusDialog.py	Fri Feb 24 14:11:20 2023 +0100
+++ b/src/eric7/MicroPython/WifiDialogs/WifiStatusDialog.py	Fri Feb 24 18:36:43 2023 +0100
@@ -19,7 +19,7 @@
     Class implementing a dialog to show the WiFi status of the connected device.
     """
 
-    def __init__(self, clientStatus, apStatus, parent=None):
+    def __init__(self, clientStatus, apStatus, overallStatus, parent=None):
         """
         Constructor
 
@@ -29,6 +29,8 @@
         @param apStatus dictionary containing the WiFi status data of the
             access point interface
         @type dict
+        @param overallStatus dictionary containing the overall WiFi status data
+        @type dict
         @param parent reference to the parent widget (defaults to None)
         @type QWidget (optional)
         """
@@ -37,6 +39,15 @@
 
         self.statusTree.setColumnCount(2)
 
+        # overall status
+        QTreeWidgetItem(
+            self.statusTree,
+            [
+                self.tr("Active"),
+                self.tr("Yes") if overallStatus["active"] else self.tr("No"),
+            ],
+        )
+
         # client interface
         if clientStatus:
             header = self.__createHeader(self.tr("Client"))
@@ -55,7 +66,12 @@
                         self.tr("Yes") if clientStatus["connected"] else self.tr("No"),
                     ],
                 )
-                QTreeWidgetItem(header, [self.tr("Status"), clientStatus["status"]])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(header, [self.tr("Status"), clientStatus["status"]])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(
+                        header, [self.tr("Hostname"), clientStatus["hostname"]]
+                    )
                 QTreeWidgetItem(
                     header, [self.tr("IPv4 Address"), clientStatus["ifconfig"][0]]
                 )
@@ -102,16 +118,23 @@
                         self.tr("Yes") if apStatus["connected"] else self.tr("No"),
                     ],
                 )
-                QTreeWidgetItem(header, [self.tr("Status"), apStatus["status"]])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(header, [self.tr("Status"), apStatus["status"]])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(header, [self.tr("Hostname"), apStatus["hostname"]])
                 QTreeWidgetItem(
                     header, [self.tr("IPv4 Address"), apStatus["ifconfig"][0]]
                 )
                 QTreeWidgetItem(header, [self.tr("Netmask"), apStatus["ifconfig"][1]])
                 QTreeWidgetItem(header, [self.tr("Gateway"), apStatus["ifconfig"][2]])
                 QTreeWidgetItem(header, [self.tr("DNS"), apStatus["ifconfig"][3]])
-                QTreeWidgetItem(header, [self.tr("SSID"), apStatus["essid"]])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(header, [self.tr("SSID"), apStatus["essid"]])
                 QTreeWidgetItem(header, [self.tr("MAC-Address"), apStatus["mac"]])
-                QTreeWidgetItem(header, [self.tr("Channel"), str(apStatus["channel"])])
+                with contextlib.suppress(KeyError):
+                    QTreeWidgetItem(
+                        header, [self.tr("Channel"), str(apStatus["channel"])]
+                    )
                 with contextlib.suppress(KeyError):
                     QTreeWidgetItem(header, [self.tr("Country"), apStatus["country"]])
                 with contextlib.suppress(KeyError):

eric ide

mercurial