1
#include "safedelete.h"
5
//----------------------------------------------------------------------------
7
//----------------------------------------------------------------------------
8
SafeDelete::SafeDelete()
13
SafeDelete::~SafeDelete()
19
void SafeDelete::deleteLater(QObject *o)
27
void SafeDelete::unlock()
33
void SafeDelete::deleteAll()
38
QObjectList::Iterator it = list.begin();
39
for(QObjectList::Iterator it = list.begin(); it != list.end(); ++it)
44
void SafeDelete::deleteSingle(QObject *o)
49
//----------------------------------------------------------------------------
51
//----------------------------------------------------------------------------
52
SafeDeleteLock::SafeDeleteLock(SafeDelete *sd)
63
SafeDeleteLock::~SafeDeleteLock()
72
void SafeDeleteLock::dying()
74
_sd = new SafeDelete(*_sd);
78
//----------------------------------------------------------------------------
80
//----------------------------------------------------------------------------
81
SafeDeleteLater *SafeDeleteLater::self = 0;
83
SafeDeleteLater *SafeDeleteLater::ensureExists()
86
new SafeDeleteLater();
90
SafeDeleteLater::SafeDeleteLater()
93
QTimer::singleShot(0, this, SLOT(explode()));
96
SafeDeleteLater::~SafeDeleteLater()
98
while (!list.isEmpty())
99
delete list.takeFirst();
103
void SafeDeleteLater::deleteItLater(QObject *o)
108
void SafeDeleteLater::explode()