C
Qt Quick Ultralite Automotive Cluster Demo
// Copyright (C) 2024 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial import QtQuick 2.15 import QtQuickUltralite.Extras 2.0 import Automotive 1.0 Item { id: indicator height: 28; width: image.width + 15; property alias source: image.source; property bool active: false; property color activeColor: Style.highlighterGreen property color inactiveColor: Style.darkBlue; property alias opacity: image.opacity; property alias blinking: indicatorBlinkAnimation.running ColorizedImage { id: image; color: parent.active ? parent.activeColor : parent.inactiveColor; anchors.horizontalCenter: parent.horizontalCenter; anchors.verticalCenter: parent.verticalCenter; Behavior on color { ColorAnimation { duration: 150; easing.type: Easing.InOutQuad; }} Behavior on opacity { NumberAnimation { easing.type: Easing.InOutQuad; duration: TellTalesModel.opacityChangeDuration; }} } SequentialAnimation { id: indicatorBlinkAnimation loops: Animation.Infinite alwaysRunToEnd: true ScriptAction { script: indicator.active = true; } PauseAnimation { duration: 400 } ScriptAction { script: indicator.active = false; } PauseAnimation { duration: 300 } } }