DisplayStatusBar.qml
changeset 9 52372bbbc0f8
parent 8 9543e1703afb
child 11 b935de604982
     1.1 --- a/DisplayStatusBar.qml	Wed May 28 11:42:49 2014 +0200
     1.2 +++ b/DisplayStatusBar.qml	Wed May 28 15:23:41 2014 +0200
     1.3 @@ -7,11 +7,54 @@
     1.4  StatusBar {
     1.5  
     1.6      Component.onCompleted: {
     1.7 -        display.closed.connect(updateDisplayStatus);
     1.8 -        display.opened.connect(updateDisplayStatus);
     1.9 +        display.closed.connect(onDisplayClosed);
    1.10 +        display.opened.connect(onDisplayOpened);
    1.11          display.openError.connect(updateDisplayStatusError);
    1.12 +        display.powerStatus.connect(updatePowerStatus);
    1.13 +        display.deviceId.connect(updateDeviceId);
    1.14 +        display.firmwareVersion.connect(updateFirmwareVersion);
    1.15      }
    1.16  
    1.17 +    function updatePowerStatus(powerOn)
    1.18 +    {
    1.19 +        if (powerOn)
    1.20 +        {
    1.21 +            labelDisplayPowerStatus.text=qsTr("Power: ON");
    1.22 +        }
    1.23 +        else
    1.24 +        {
    1.25 +            labelDisplayPowerStatus.text=qsTr("Power: OFF");
    1.26 +        }
    1.27 +    }
    1.28 +
    1.29 +    function updateDeviceId(deviceId)
    1.30 +    {
    1.31 +        labelDisplayDeviceId.text = deviceId;
    1.32 +        display.requestFirmwareVersion();
    1.33 +    }
    1.34 +
    1.35 +    function updateFirmwareVersion(version)
    1.36 +    {
    1.37 +        labelDisplayFirmwareVersion.text = "Firmware v" + version;
    1.38 +        display.requestPowerStatus();
    1.39 +    }
    1.40 +
    1.41 +    function onDisplayOpened()
    1.42 +    {
    1.43 +        updateDisplayStatus();
    1.44 +        //
    1.45 +        display.requestDeviceId();
    1.46 +    }
    1.47 +
    1.48 +    function onDisplayClosed()
    1.49 +    {
    1.50 +        updateDisplayStatus();
    1.51 +        labelDisplayDeviceId.text="";
    1.52 +        labelDisplayFirmwareVersion.text="";
    1.53 +        labelDisplayPowerStatus.text="";
    1.54 +    }
    1.55 +
    1.56 +
    1.57      function updateDisplayStatusError()
    1.58      {
    1.59          updateDisplayStatus();
    1.60 @@ -56,5 +99,21 @@
    1.61              visible: false //We don't want to display that. GP1212A01A does not even provide a proper string.
    1.62              text: qsTr("")
    1.63          }
    1.64 +
    1.65 +        Label {
    1.66 +            id: labelDisplayDeviceId
    1.67 +            text: qsTr("")
    1.68 +        }
    1.69 +
    1.70 +        Label {
    1.71 +            id: labelDisplayFirmwareVersion
    1.72 +            text: qsTr("")
    1.73 +        }
    1.74 +
    1.75 +        Label {
    1.76 +            id: labelDisplayPowerStatus
    1.77 +            text: qsTr("")
    1.78 +        }
    1.79 +
    1.80      }
    1.81  }