38 lines
975 B
QML
38 lines
975 B
QML
import QtQuick
|
|
import Quickshell
|
|
|
|
import "../constants"
|
|
|
|
Item {
|
|
id: root
|
|
property int value: 0
|
|
property string prefix: ""
|
|
property string separator: "-"
|
|
property int valuePadding: 3
|
|
property int padding: 4
|
|
property string paddingChar: "0"
|
|
|
|
width: textItem.implicitWidth + padding
|
|
height: textItem.implicitHeight + padding
|
|
|
|
Rectangle {
|
|
anchors.bottom: parent.bottom
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
width: parent.width
|
|
height: Math.max(1, root.value / 100 * parent.height)
|
|
color: Colors.md3.on_secondary
|
|
opacity: 1.0
|
|
}
|
|
|
|
Text {
|
|
id: textItem
|
|
anchors.centerIn: parent
|
|
z: 1
|
|
text: root.prefix + root.separator + String(root.value).padStart(root.valuePadding, root.paddingChar)
|
|
color: Colors.md3.inverse_primary
|
|
font.pixelSize: Constants.fontSize
|
|
font.family: Constants.fontFamily
|
|
font.bold: true
|
|
}
|
|
}
|