aboutsummaryrefslogtreecommitdiffstats
path: root/sample-qml/imports/vehicle/FuelModel.qml
diff options
context:
space:
mode:
authorJens Bocklage <jens_bocklage@mentor.com>2016-11-30 12:32:42 +0000
committerGerrit Code Review <gerrit@automotivelinux.org>2016-11-30 12:32:42 +0000
commit39f2f48669ce3a92ccf267d44a7c36beb8abba35 (patch)
tree4ff157d81c1b4efeb5056f74d1954d18f59f3cb1 /sample-qml/imports/vehicle/FuelModel.qml
parent4ccab203994f2472641c429bb4b86535c5128884 (diff)
parentf8ca548fa047968383e9275ead76eacce90fd0a8 (diff)
Merge "Add sample qml application"
Diffstat (limited to 'sample-qml/imports/vehicle/FuelModel.qml')
-rw-r--r--sample-qml/imports/vehicle/FuelModel.qml46
1 files changed, 46 insertions, 0 deletions
diff --git a/sample-qml/imports/vehicle/FuelModel.qml b/sample-qml/imports/vehicle/FuelModel.qml
new file mode 100644
index 0000000..fa064e2
--- /dev/null
+++ b/sample-qml/imports/vehicle/FuelModel.qml
@@ -0,0 +1,46 @@
+/* Copyright (C) 2015, Jaguar Land Rover. All Rights Reserved.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+pragma Singleton
+
+import QtQuick 2.0
+
+Item {
+ property bool metric: false
+
+ function galToL(value) {
+ return (metric ? 3.78541 : 1) * value
+ }
+
+ function mpgToLp100(value) {
+ return metric ? 235.214583571 / value : value
+ }
+
+ property real baseTank: 25
+ property real tankSize: galToL(baseTank)
+ property real level: tankSize * percentage * 0.01
+ property real percentage: 100
+ property real range: metric ? 100 * level / average : level * average
+ property real baseAverage: 20.7
+ property real average: mpgToLp100(baseAverage + mpgDiff)
+ property real mpgDiff: 0
+
+ NumberAnimation on percentage {
+ from: 100
+ to: 0
+ duration: 5000
+ loops: Animation.Infinite
+ easing.type: Easing.CosineCurve
+ }
+
+ NumberAnimation on mpgDiff {
+ from: -2
+ to: 2
+ duration: 11200
+ loops: Animation.Infinite
+ easing.type: Easing.CosineCurve
+ }
+}