Files
harbour-aira/qml/components/ReadingCell.qml
T
kaneda d5b63b57df 0.6.0 blocco 1: Home di consultazione e pagina Regolazioni
- Home: stato in una riga col pallino, due letture grandi toccabili, tre
  azioni rapide; via i due slider, i sette pulsanti e la scheda separata.
- Nuova pagina Regolazioni: un blocco per grandezza, valore attuale sempre
  visibile, preimpostazioni per le dita fredde, conferma esplicita; il
  pulsante e' attivo solo se c'e' davvero qualcosa da cambiare.
- Messaggi dei comandi spostati in ApiClient (api.notice) con NoticeBar
  ancorata in fondo: prima nascevano fuori dallo schermo.
- Stato breve/esteso/livello in C++ (testabile senza SDK), 18 verifiche
  nuove: 79/79.
- stale + lastUpdate: la Home dice 'aggiornato alle HH:MM' e spegne i
  numeri vecchi invece di farli passare per freschi.
- 192/192 stringhe tradotte (54 nuove).
2026-10-10 09:47:16 +02:00

63 lines
1.7 KiB
QML

import QtQuick 2.2
import Sailfish.Silica 1.0
// Riquadro di una lettura grande nella Home: titolo, valore, riga sotto e la
// barra di avanzamento (facoltativa). Toccabile: porta alle regolazioni.
//
// La barra c'e' sempre, anche quando non serve, e resta trasparente: cosi' i
// due riquadri affiancati hanno la stessa altezza senza vincoli circolari.
BackgroundItem {
id: root
property string title: ""
property string value: ""
property string subtitle: ""
property real progress: 0
property bool showBar: false
property color valueColor: Theme.primaryColor
signal tapped()
height: content.height + 2 * Theme.paddingMedium
onClicked: root.tapped()
Column {
id: content
x: Theme.paddingMedium
y: Theme.paddingMedium
width: parent.width - 2 * Theme.paddingMedium
spacing: Theme.paddingSmall
Label {
width: parent.width
text: root.title
color: Theme.secondaryColor
font.pixelSize: Theme.fontSizeSmall
elide: Text.ElideRight
}
Label {
width: parent.width
text: root.value
color: root.valueColor
font.pixelSize: Theme.fontSizeHuge
elide: Text.ElideRight
}
Label {
width: parent.width
text: root.subtitle
color: Theme.secondaryColor
font.pixelSize: Theme.fontSizeExtraSmall
wrapMode: Text.Wrap
}
ProgressBar {
width: parent.width
value: Math.max(0, Math.min(1, root.progress))
opacity: root.showBar ? 1 : 0
}
}
}