diff --git a/src/cpp/serviceitemmodel.cpp b/src/cpp/serviceitemmodel.cpp index 6650bf4..3553623 100644 --- a/src/cpp/serviceitemmodel.cpp +++ b/src/cpp/serviceitemmodel.cpp @@ -832,6 +832,7 @@ void ServiceItemModel::clearAll() { for (int i = m_items.size(); i >= 0; i--) { removeItem(i); } + emit allRemoved(); } bool ServiceItemModel::loadLastSaved() { diff --git a/src/cpp/serviceitemmodel.h b/src/cpp/serviceitemmodel.h index dc46892..200bd72 100644 --- a/src/cpp/serviceitemmodel.h +++ b/src/cpp/serviceitemmodel.h @@ -116,6 +116,7 @@ signals: void itemInserted(const int &, const ServiceItem &); void rowMoved(const int &, const int &, const ServiceItem &); void rowRemoved(const int &, const ServiceItem &); + void allRemoved(); private: diff --git a/src/cpp/slidemodel.h b/src/cpp/slidemodel.h index 226b04c..14c39d7 100644 --- a/src/cpp/slidemodel.h +++ b/src/cpp/slidemodel.h @@ -78,7 +78,6 @@ public: Q_INVOKABLE bool moveUp(int index); Q_INVOKABLE QVariantMap getItem(int index) const; Q_INVOKABLE QVariantList getItems(); - Q_INVOKABLE void clearAll(); Q_INVOKABLE int findSlideIdFromServItm(int index); public slots: @@ -86,6 +85,7 @@ public slots: Q_INVOKABLE bool activate(int id); Q_INVOKABLE bool deactivate(int id); Q_INVOKABLE void removeServiceItem(const int &index, const ServiceItem &item); + Q_INVOKABLE void clearAll(); void addItemFromService(const int &index, const ServiceItem &item); void insertItemFromService(const int &index, const ServiceItem &item); void moveRowFromService(const int &fromIndex, const int &toIndex, const ServiceItem &item); diff --git a/src/main.cpp b/src/main.cpp index 9c02971..8b28a59 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -159,6 +159,10 @@ int main(int argc, char *argv[]) SIGNAL(rowRemoved(const int&, const ServiceItem&)), slideModel.get(), SLOT(removeServiceItem(const int&, const ServiceItem&))); + QObject::connect(serviceItemModel.get(), + SIGNAL(allRemoved()), + slideModel.get(), + SLOT(clearAll())); bool loading = serviceItemModel.get()->loadLastSaved();