pragma ComponentBehavior: Bound import QtQuick import qs.hyprchrome.theme // One metric of the expanded vitals panel: label, meter, readout on a line. // // The label and readout columns are fixed so the meters of stacked rows line // up on both edges regardless of how long any one readout gets. Item { id: row property string label: "" property real value: 0 // 0..1 property string readout: "--" property bool ready: false property real warn: 0.85 property int labelWidth: 52 property int readoutWidth: 46 readonly property bool hot: row.ready && row.value >= row.warn implicitHeight: 11 Text { anchors.verticalCenter: parent.verticalCenter width: row.labelWidth text: row.label color: Theme.muted font.family: Theme.microFont font.pixelSize: 10 font.letterSpacing: 0.7 elide: Text.ElideRight } SegmentMeter { x: row.labelWidth anchors.verticalCenter: parent.verticalCenter width: Math.max(0, row.width - row.labelWidth - row.readoutWidth) height: 9 value: row.value ready: row.ready warn: row.warn } Text { anchors.right: parent.right anchors.verticalCenter: parent.verticalCenter width: row.readoutWidth text: row.readout color: row.hot ? Theme.hot : Theme.text font.family: Theme.displayFont font.pixelSize: 10 font.bold: true horizontalAlignment: Text.AlignRight } }