summaryrefslogtreecommitdiff
path: root/examples/sensors/sensorsshowcase/Main.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/sensors/sensorsshowcase/Main.qml')
-rw-r--r--examples/sensors/sensorsshowcase/Main.qml88
1 files changed, 88 insertions, 0 deletions
diff --git a/examples/sensors/sensorsshowcase/Main.qml b/examples/sensors/sensorsshowcase/Main.qml
new file mode 100644
index 0000000..227e1cf
--- /dev/null
+++ b/examples/sensors/sensorsshowcase/Main.qml
@@ -0,0 +1,88 @@
+// Copyright (C) 2023 The Qt Company Ltd.
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+pragma ComponentBehavior: Bound
+import QtQuick
+import QtQuick.Controls
+import QtQuick.Layouts
+
+ApplicationWindow {
+ id: root
+
+ readonly property int dynamicMargin: width / 12
+ readonly property int defaultFontSize: 20
+ readonly property int headingFontSize: 35
+ readonly property int imageSize: width / 2
+
+ width: 420
+ height: 760
+ visible: true
+ title: "Sensors Showcase"
+
+ StackView {
+ id: stack
+
+ // Pushes the object and forwards the properties
+ function pusher(object : string) : void
+ {
+ stack.push(object, {
+ parentStack: stack,
+ fontSize: root.defaultFontSize,
+ headingFontSize: root.headingFontSize,
+ imageSize: root.imageSize
+ })
+ }
+
+ anchors.fill: parent
+ anchors.margins: root.dynamicMargin
+
+ initialItem: Item {
+ ColumnLayout {
+ id: initialItem
+
+ anchors.bottomMargin: (root.width < root.height) ? 2 * root.dynamicMargin : 0
+ anchors.fill: parent
+ spacing: 5
+
+ Text {
+ Layout.bottomMargin: root.dynamicMargin
+ Layout.preferredWidth: parent.width
+ horizontalAlignment: Text.AlignHCenter
+ font.bold: true
+ font.pixelSize: root.headingFontSize
+ text: "Sensors Showcase"
+ wrapMode: Text.WordWrap
+ }
+
+ component CustomButton: Button {
+ Layout.alignment: Qt.AlignCenter
+ Layout.fillHeight: true
+ Layout.fillWidth: true
+ font.pixelSize: root.defaultFontSize
+ highlighted: true
+ }
+
+ CustomButton {
+ text: "Accelerometer"
+ onClicked: stack.pusher("Accelerometer.qml")
+ }
+ CustomButton {
+ text: "Proximity"
+ onClicked: stack.pusher("Proximity.qml")
+ }
+ CustomButton {
+ text: "Compass"
+ onClicked: stack.pusher("Compass.qml")
+ }
+ CustomButton {
+ text: "Magnetometer"
+ onClicked: stack.pusher("Magnetometer.qml")
+ }
+ CustomButton {
+ text: "Gyroscope"
+ onClicked: stack.pusher("Gyroscope.qml")
+ }
+ }
+ }
+ }
+
+}