summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTitta Heikkala <titta.heikkala@qt.io>2017-02-03 10:15:06 +0200
committerOtto Ryynänen <otto.ryynanen@qt.io>2017-02-03 08:34:06 +0000
commit0a85dc729c5602c0914172bbf4b2b4e3171fcd85 (patch)
treedbe9a7ed0efcddbc81d198073ca097c08052fa2f
parentcb336e688db1242384c5ed95eeca247e85e799bf (diff)
iot-sensortag: Add dialog for sensor settings
Added new dialog for sensor settings. Change-Id: I1cb32984541dc20bb12e81fa645db4b24378554f Reviewed-by: Otto Ryynänen <otto.ryynanen@qt.io>
-rw-r--r--tradeshow/iot-sensortag/base.qrc1
-rw-r--r--tradeshow/iot-sensortag/resources/base/SensorSettings.qml132
-rw-r--r--tradeshow/iot-sensortag/resources/base/TopToolbar.qml17
-rw-r--r--tradeshow/iot-sensortag/resources/small/MainSmall.qml17
4 files changed, 143 insertions, 24 deletions
diff --git a/tradeshow/iot-sensortag/base.qrc b/tradeshow/iot-sensortag/base.qrc
index 685269f..65b86eb 100644
--- a/tradeshow/iot-sensortag/base.qrc
+++ b/tradeshow/iot-sensortag/base.qrc
@@ -16,6 +16,7 @@
<file>resources/base/CircularGauge.qml</file>
<file>resources/base/GyroChart.qml</file>
<file>resources/base/AccelChart.qml</file>
+ <file>resources/base/SensorSettings.qml</file>
<file>resources/base/fonts/titilliumweb/TitilliumWeb-Bold.ttf</file>
<file>resources/base/fonts/titilliumweb/TitilliumWeb-Regular.ttf</file>
<file>resources/base/fonts/titilliumweb/TitilliumWeb-SemiBold.ttf</file>
diff --git a/tradeshow/iot-sensortag/resources/base/SensorSettings.qml b/tradeshow/iot-sensortag/resources/base/SensorSettings.qml
new file mode 100644
index 0000000..1586176
--- /dev/null
+++ b/tradeshow/iot-sensortag/resources/base/SensorSettings.qml
@@ -0,0 +1,132 @@
+/****************************************************************************
+**
+** Copyright (C) 2017 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the examples of Qt for Device Creation.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+** * Redistributions of source code must retain the above copyright
+** notice, this list of conditions and the following disclaimer.
+** * Redistributions in binary form must reproduce the above copyright
+** notice, this list of conditions and the following disclaimer in
+** the documentation and/or other materials provided with the
+** distribution.
+** * Neither the name of The Qt Company Ltd nor the names of its
+** contributors may be used to endorse or promote products derived
+** from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+import QtQuick 2.0
+import QtQuick.Layouts 1.1
+import Style 1.0
+import SensorTag.DataProvider 1.0
+
+Rectangle {
+ id: mainRect
+
+ property alias listModelCount: list.count
+
+ width: 360
+ height: 252
+ color: "black"
+
+ Text {
+ id: titleText
+ color: "white"
+ text: "SENSOR SETTINGS"
+ font.pixelSize: Style.indicatorTitleFontSize
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.top: parent.top
+ anchors.topMargin: 8
+ }
+
+ Image {
+ id: icon
+ width: 60
+ height: 60
+ anchors.top: titleText.bottom
+ anchors.horizontalCenter: parent.horizontalCenter
+ anchors.margins: 8
+ source: pathPrefix + "Toolbar/icon_topbar_sensor.png"
+ }
+
+ ListView {
+ id: list
+ anchors.top: icon.bottom
+ anchors.topMargin: 16
+ height: 150
+ width: parent.width
+ clip: true
+ orientation: ListView.Horizontal
+ model: dataProviderPool.dataProviders
+
+ delegate: Item {
+ id: listItem
+ width: mainRect.width / 3
+ ColumnLayout {
+ spacing: 8
+ Item {
+ width: listItem.width
+ height: 40
+ Text {
+ anchors.top: parent.top
+ anchors.left: parent.left
+ anchors.right: parent.right
+ anchors.margins: 4
+ horizontalAlignment: Text.AlignHCenter
+ text: providerId.toUpperCase()
+ color: "white"
+ font.pixelSize: 16
+ elide: Text.ElideMiddle
+ clip: true
+ }
+ }
+ Image {
+ Layout.alignment: Qt.AlignHCenter
+ width: 40
+ height: 40
+ source: pathPrefix + "Toolbar/icon_topbar_sensor.png"
+ opacity: modelData.state === SensorTagData.Connected ? 1 : 0.5
+ }
+
+ Text {
+ Layout.alignment: Qt.AlignHCenter
+ text: modelData.state === SensorTagData.Connected ? "Connected" : "Disconnected"
+ color: "white"
+ font.pixelSize: 14
+ }
+ }
+ }
+ }
+}
diff --git a/tradeshow/iot-sensortag/resources/base/TopToolbar.qml b/tradeshow/iot-sensortag/resources/base/TopToolbar.qml
index 36117b3..ce982c6 100644
--- a/tradeshow/iot-sensortag/resources/base/TopToolbar.qml
+++ b/tradeshow/iot-sensortag/resources/base/TopToolbar.qml
@@ -57,27 +57,12 @@ Item {
height: 100
width: implicitWidth
- Rectangle {
+ SensorSettings {
id: sensorList
- property alias listModelCount: list.count
-
- width: 200
- height: 200
x: sensorItem.x
y: parent.height
- color: "darkgray"
visible: false
-
- ListView {
- id: list
- anchors.fill: parent
- model: dataProviderPool.dataProviders
- delegate: Text {
- text: providerId
- color: modelData.state === SensorTagData.Connected ? "blue" : "lightsteelblue"
- }
- }
}
Item {
diff --git a/tradeshow/iot-sensortag/resources/small/MainSmall.qml b/tradeshow/iot-sensortag/resources/small/MainSmall.qml
index 1f46093..7cdc7fe 100644
--- a/tradeshow/iot-sensortag/resources/small/MainSmall.qml
+++ b/tradeshow/iot-sensortag/resources/small/MainSmall.qml
@@ -74,14 +74,6 @@ Item {
}
}
- TopToolbar {
- id: topToolbar
-
- anchors.top: main.top
- anchors.left: main.left
- anchors.right: main.right
- }
-
Column {
id: leftPane
@@ -190,6 +182,15 @@ Item {
anchors.bottom: bottomToolbar.top
}
+
+ TopToolbar {
+ id: topToolbar
+
+ anchors.top: main.top
+ anchors.left: main.left
+ anchors.right: main.right
+ }
+
BottomToolbar {
id: bottomToolbar