0.6.0 blocco 2: Comandi impianto con interruttori, diagnostica in Impianto
- CommandsPage: 4 interruttori (TextSwitch) al posto di 8 pulsanti in coppie accendi/spegni, piu' 3 pulsanti per le azioni senza stato. Gli interruttori seguono il dato vero (automaticCheck: false), non anticipano l'impianto, e la sezione 'Stato attuale' non serve piu'. - La pagina si chiama 'Comandi impianto'. - PlantPage: frase estesa dello stato, diagnostica (verifica impianto) e le letture che non avevano posto (pompa, modi consentiti, manuale, sbrinamento, luci di firma). - SettingsPage: 'Salva' e 'Prova connessione' diventano 'Salva e prova'. - ApiClient: dopo un comando riuscito lo stato si rilegge da solo (prima non si aggiornava nulla: l'aggiornamento automatico non esisteva). - NoticeBar anche su Dati, Impianto e Comandi; via i messaggi dentro il contenuto che scorre.
This commit is contained in:
@@ -17,6 +17,7 @@ ApiClient::ApiClient(Settings *settings, QObject *parent)
|
||||
, m_stale(false)
|
||||
, m_noticeIsError(false)
|
||||
, m_noticeTimer(0)
|
||||
, m_refreshTimer(0)
|
||||
{
|
||||
// Il messaggio dell'ultimo comando (o dell'ultimo errore) vale per ogni
|
||||
// pagina: lo stato sta qui, si spegne da solo e la UI lo mostra ancorato
|
||||
@@ -40,6 +41,18 @@ ApiClient::ApiClient(Settings *settings, QObject *parent)
|
||||
setNotice(message, !ok);
|
||||
});
|
||||
|
||||
// Dopo un comando riuscito lo stato si rilegge da solo: l'impianto applica
|
||||
// in qualche istante, e senza questa rilettura gli interruttori della
|
||||
// pagina dei comandi resterebbero indietro rispetto alla pompa.
|
||||
m_refreshTimer = new QTimer(this);
|
||||
m_refreshTimer->setSingleShot(true);
|
||||
m_refreshTimer->setInterval(2000);
|
||||
connect(m_refreshTimer, &QTimer::timeout, this, &ApiClient::refresh);
|
||||
connect(this, &ApiClient::commandFinished, this, [this](bool ok, const QString &) {
|
||||
if (ok)
|
||||
m_refreshTimer->start();
|
||||
});
|
||||
|
||||
if (m_settings) {
|
||||
// La UI deve riflettere subito il passaggio da "non configurato" a
|
||||
// "configurato" quando si salvano indirizzo o token.
|
||||
|
||||
@@ -105,6 +105,7 @@ private:
|
||||
QString m_notice;
|
||||
bool m_noticeIsError;
|
||||
QTimer *m_noticeTimer;
|
||||
QTimer *m_refreshTimer;
|
||||
QVariantMap m_summary;
|
||||
QVariantMap m_stats;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user