diff --git a/libnymea-app/models/newlogsmodel.cpp b/libnymea-app/models/newlogsmodel.cpp index d6d960cf..69db9584 100644 --- a/libnymea-app/models/newlogsmodel.cpp +++ b/libnymea-app/models/newlogsmodel.cpp @@ -13,6 +13,10 @@ Q_DECLARE_LOGGING_CATEGORY(dcLogEngine) NewLogsModel::NewLogsModel(QObject *parent) : QAbstractListModel{parent} { + // Workaround for older Qt versions (5.12 and older) which can't deal with the QList argument + connect(this, &NewLogsModel::entriesAdded, this, [this](int index, const QList &entries){ + emit entriesAddedIdx(index, entries.count()); + }); } diff --git a/libnymea-app/models/newlogsmodel.h b/libnymea-app/models/newlogsmodel.h index aad235f2..eb5de9c3 100644 --- a/libnymea-app/models/newlogsmodel.h +++ b/libnymea-app/models/newlogsmodel.h @@ -119,6 +119,7 @@ signals: void fetchBlockSizeChanged(); void entriesAdded(int index, const QList &entries); + void entriesAddedIdx(int index, int count); void entriesRemoved(int index, int count); private slots: diff --git a/nymea-app/ui/customviews/StateChart.qml b/nymea-app/ui/customviews/StateChart.qml index bf182940..74f31721 100644 --- a/nymea-app/ui/customviews/StateChart.qml +++ b/nymea-app/ui/customviews/StateChart.qml @@ -69,10 +69,10 @@ Item { property double minValue property double maxValue - onEntriesAdded: { - print("**** entries added", index, entries.length, "entries in series:", valueSeries.count, "in model", logsModel.count) - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + print("**** entries added", index, count, "entries in series:", valueSeries.count, "in model", logsModel.count) + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) // print("entry", entry.timestamp, entry.source, JSON.stringify(entry.values)) zeroSeries.ensureValue(entry.timestamp) diff --git a/nymea-app/ui/mainviews/airconditioning/ACChartsPage.qml b/nymea-app/ui/mainviews/airconditioning/ACChartsPage.qml index 939c9347..e29129c5 100644 --- a/nymea-app/ui/mainviews/airconditioning/ACChartsPage.qml +++ b/nymea-app/ui/mainviews/airconditioning/ACChartsPage.qml @@ -323,9 +323,9 @@ Page { } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["temperature"] if (value == null) { value = 0; @@ -380,9 +380,9 @@ Page { } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["temperature"] if (value == null) { value = 0; @@ -438,9 +438,9 @@ Page { } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["humidity"] if (value == null) { value = 0; @@ -491,9 +491,9 @@ Page { chartView.busyCounter-- } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["voc"] if (value == null) { value = 0; @@ -580,9 +580,9 @@ Page { chartView.busyCounter-- } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["closed"] if (value == null) { value = false; @@ -690,9 +690,9 @@ Page { chartView.busyCounter-- } } - onEntriesAdded: { - for (var i = 0; i < entries.length; i++) { - var entry = entries[i] + onEntriesAddedIdx: { + for (var i = 0; i < count; i++) { + var entry = logsModel.get(i) var value = entry.values["heatingOn"] if (value == null) { value = false;