93 lines
2.2 KiB
QML
93 lines
2.2 KiB
QML
// Copyright (C) 2023 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
|
|
|
|
import QtQuick
|
|
import QtQuick.Controls as QQC2
|
|
import WearableStyle
|
|
import QtQuick.Shapes
|
|
|
|
Item {
|
|
id: header
|
|
property alias title: labelText.text
|
|
signal backClicked()
|
|
|
|
height: 50
|
|
|
|
Shape {//Shape because Rectangle does not support diagonal gradient
|
|
id: background
|
|
preferredRendererType: Shape.CurveRenderer
|
|
|
|
ShapePath {
|
|
strokeWidth: 0
|
|
|
|
startX: 0
|
|
startY: 0
|
|
PathLine {
|
|
x: header.width
|
|
y: 0
|
|
}
|
|
PathLine {
|
|
x: header.width
|
|
y: header.height
|
|
}
|
|
PathLine {
|
|
x: 0
|
|
y: header.height
|
|
}
|
|
fillGradient: LinearGradient {
|
|
x1: header.width / 3
|
|
y1: 0
|
|
x2: header.width
|
|
y2: 1.3 * header.parent.height
|
|
GradientStop {
|
|
position: 0.0
|
|
color: UIStyle.background1
|
|
}
|
|
GradientStop {
|
|
position: 0.5
|
|
color: UIStyle.background2
|
|
}
|
|
GradientStop {
|
|
position: 1.0
|
|
color: UIStyle.background3
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
QQC2.AbstractButton {
|
|
id: backButton
|
|
anchors.verticalCenter: parent.verticalCenter
|
|
anchors.left: parent.left
|
|
anchors.topMargin: 0
|
|
anchors.leftMargin: 0
|
|
|
|
width: height
|
|
height: 40
|
|
|
|
onClicked: header.backClicked()
|
|
|
|
Image {
|
|
width: 40
|
|
height: 40
|
|
anchors.centerIn: parent
|
|
source: UIStyle.iconPath("back")
|
|
}
|
|
}
|
|
|
|
QQC2.Label {
|
|
id: labelText
|
|
anchors.verticalCenter: parent.verticalCenter
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
color: UIStyle.textColor
|
|
font: UIStyle.h2
|
|
}
|
|
|
|
transform: Translate {
|
|
Behavior on y { NumberAnimation { } }
|
|
y: header.enabled ? 0 : -52
|
|
}
|
|
|
|
|
|
}
|