// Copyright (C) 2016 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only #ifndef QOBJECTCLEANUPHANDLER_H #define QOBJECTCLEANUPHANDLER_H #include QT_BEGIN_NAMESPACE class Q_CORE_EXPORT QObjectCleanupHandler : public QObject { Q_OBJECT public: QObjectCleanupHandler(); ~QObjectCleanupHandler(); QObject *add(QObject *object); void remove(QObject *object); bool isEmpty() const; void clear(); private: // ### move into d pointer QObjectList cleanupObjects; private Q_SLOTS: void objectDestroyed(QObject *); }; QT_END_NAMESPACE #endif // QOBJECTCLEANUPHANDLER_H