diff options
Diffstat (limited to 'qtinterface/interface_tqt3/tqcleanuphandler.h')
-rw-r--r-- | qtinterface/interface_tqt3/tqcleanuphandler.h | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/qtinterface/interface_tqt3/tqcleanuphandler.h b/qtinterface/interface_tqt3/tqcleanuphandler.h index 623b006..eee4b16 100644 --- a/qtinterface/interface_tqt3/tqcleanuphandler.h +++ b/qtinterface/interface_tqt3/tqcleanuphandler.h @@ -23,109 +23,6 @@ Boston, MA 02110-1301, USA. #define TQT_TQCLEANUPHANDLER_H #include <tqt.h> - -#ifdef USE_QT3 - -// Reimplement the QCleanupHandler class -// For Qt3, no changes are needed - #include <ntqcleanuphandler.h> -#endif // USE_QT3 - -#ifdef USE_QT4 - -// Reimplement the QCleanupHandler class -// For Qt4, some changes are needed - -//#include <Qt/ntqcleanuphandler.h> - -#include "tntqptrlist.h" - -template<class Type> -class TQCleanupHandler -{ -public: - TQCleanupHandler() : cleanupObjects( 0 ) {} - ~TQCleanupHandler() { clear(); } - - Type* add( Type **object ) { - if ( !cleanupObjects ) - cleanupObjects = new Q3PtrList<Type*>; - cleanupObjects->insert( 0, object ); - return *object; - } - - void remove( Type **object ) { - if ( !cleanupObjects ) - return; - if ( cleanupObjects->findRef( object ) >= 0 ) - (void) cleanupObjects->take(); - } - - bool isEmpty() const { - return cleanupObjects ? cleanupObjects->isEmpty() : TRUE; - } - - void clear() { - if ( !cleanupObjects ) - return; - Q3PtrListIterator<Type*> it( *cleanupObjects ); - Type **object; - while ( ( object = it.current() ) ) { - delete *object; - *object = 0; - cleanupObjects->remove( object ); - } - delete cleanupObjects; - cleanupObjects = 0; - } - -private: - Q3PtrList<Type*> *cleanupObjects; -}; - -template<class Type> -class TQSingleCleanupHandler -{ -public: - TQSingleCleanupHandler() : object( 0 ) {} - ~TQSingleCleanupHandler() { - if ( object ) { - delete *object; - *object = 0; - } - } - Type* set( Type **o ) { - object = o; - return *object; - } - void reset() { object = 0; } -private: - Type **object; -}; - -template<class Type> -class TQSharedCleanupHandler -{ -public: - TQSharedCleanupHandler() : object( 0 ) {} - ~TQSharedCleanupHandler() { - if ( object ) { - if ( (*object)->deref() ) - delete *object; - *object = 0; - } - } - Type* set( Type **o ) { - object = o; - return *object; - } - void reset() { object = 0; } -private: - Type **object; -}; - -#endif // USE_QT4 - #endif /* TQT_TQCLEANUPHANDLER_H */ |