diff options
author | Kari Hautamäki <kari.hautamaki@qt.io> | 2017-02-16 08:33:49 +0200 |
---|---|---|
committer | Maurice Kalinowski <maurice.kalinowski@qt.io> | 2017-02-28 13:16:09 +0000 |
commit | 35c1c07cd676b9c9afb23ad7266a67d5b6aef03a (patch) | |
tree | d43445955be5f1799ca9bb9db2c6e2cfd7915370 /tradeshow/iot-sensortag/resources/base/BaseChart.qml | |
parent | dec3883a1d0d7d24c797cf517fa7fad85b24a1f2 (diff) |
iot-sensortag: Allow reconnect after a failed connection attempt
A disconnected sensor tag can be tried to be reconnected by clicking
on the chart area or starting rescan from the Sensor settings menu.
During a (re)connection process a progress indicator is shown to
the user.
The user has a possibility to disconnect (and reconnect) a
currently connect SensorDataProvider
A new state, 'NotFound' is added in SensorTagDataProvider to
distinguish between states when a Sensor Tag has not been discovered
at all, and when it has already been discovered but is has been
disconnected.
Change-Id: I54eea72d8c92a67a5ccbb3bc192ac8f33ada1c39
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Diffstat (limited to 'tradeshow/iot-sensortag/resources/base/BaseChart.qml')
-rw-r--r-- | tradeshow/iot-sensortag/resources/base/BaseChart.qml | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/tradeshow/iot-sensortag/resources/base/BaseChart.qml b/tradeshow/iot-sensortag/resources/base/BaseChart.qml index 58549b5..d144916 100644 --- a/tradeshow/iot-sensortag/resources/base/BaseChart.qml +++ b/tradeshow/iot-sensortag/resources/base/BaseChart.qml @@ -61,9 +61,17 @@ Item { property bool rightSide: false property alias titlePaneHeight: titleIcon.height property bool hasData: baseChart.sensor ? baseChart.sensor.state === SensorTagData.Connected : false + property int sensorState: sensor ? sensor.state : SensorTagData.NotFound signal clicked + onSensorStateChanged: { + if (sensorState === SensorTagData.Scanning) + sensorIcon.startBlinking(); + else + sensorIcon.stopBlinking(); + } + Image { id: titleIcon @@ -89,6 +97,42 @@ Item { anchors.bottomMargin: 16 anchors.left: parent.left anchors.right: parent.right + visible: sensorState === SensorTagData.Connected + } + + Item { + anchors.top: titleIcon.bottom + anchors.bottom: separator.bottom + anchors.bottomMargin: 16 + anchors.left: parent.left + anchors.right: parent.right + visible: sensorState === SensorTagData.Scanning || + sensorState === SensorTagData.Disconnected || + sensorState === SensorTagData.Error || + sensorState === SensorTagData.NotFound + + Column { + anchors.centerIn: parent + spacing: 20 + + BlinkingIcon { + id: sensorIcon + + source: pathPrefix + "Toolbar/icon_topbar_sensor.png" + anchors.horizontalCenter: parent.horizontalCenter + visible: sensorState === SensorTagData.Scanning + } + + Text { + id: stateText + + color: "white" + text: sensorState === SensorTagData.Scanning ? "Connecting to sensor..." + : sensorState === SensorTagData.Disconnected ? "Disconnected" + : sensorState === SensorTagData.NotFound ? "Device not found" + : "" + } + } } Image { |