From 56ac8bff4fc76461f82261d8b36f624c13f57f48 Mon Sep 17 00:00:00 2001 From: Don Gagne Date: Tue, 23 Feb 2016 11:30:14 -0800 Subject: [PATCH] Add deleteListAndContents --- src/QmlControls/QmlObjectListModel.cc | 8 ++++++++ src/QmlControls/QmlObjectListModel.h | 3 +++ 2 files changed, 11 insertions(+) diff --git a/src/QmlControls/QmlObjectListModel.cc b/src/QmlControls/QmlObjectListModel.cc index 21a5ed72e..86db3ba9f 100644 --- a/src/QmlControls/QmlObjectListModel.cc +++ b/src/QmlControls/QmlObjectListModel.cc @@ -220,3 +220,11 @@ void QmlObjectListModel::_childDirtyChanged(bool dirty) // signal to know when a child has changed dirty state emit dirtyChanged(_dirty); } + +void QmlObjectListModel::deleteListAndContents(void) +{ + for (int i=0; i<_objectList.count(); i++) { + _objectList[i]->deleteLater(); + } + deleteLater(); +} diff --git a/src/QmlControls/QmlObjectListModel.h b/src/QmlControls/QmlObjectListModel.h index 8e64d0f49..9a5d4f60f 100644 --- a/src/QmlControls/QmlObjectListModel.h +++ b/src/QmlControls/QmlObjectListModel.h @@ -60,6 +60,9 @@ public: int indexOf(QObject* object) { return _objectList.indexOf(object); } template T value(int index) { return qobject_cast(_objectList[index]); } + /// Calls deleteLater on all items and this itself. + void deleteListAndContents(void); + signals: void countChanged(int count); void dirtyChanged(bool dirtyChanged); -- 2.22.0