diff options
Diffstat (limited to 'qtinterface/tqwidgetlist.h')
-rw-r--r-- | qtinterface/tqwidgetlist.h | 52 |
1 files changed, 50 insertions, 2 deletions
diff --git a/qtinterface/tqwidgetlist.h b/qtinterface/tqwidgetlist.h index 9770e3a..a88c018 100644 --- a/qtinterface/tqwidgetlist.h +++ b/qtinterface/tqwidgetlist.h @@ -26,7 +26,7 @@ Boston, MA 02110-1301, USA. #ifdef USE_QT3 -// Reimplement the QWidgetList class +// Reimplement the TQWidgetList class // For Qt3, no changes are needed #include <qwidgetlist.h> @@ -35,9 +35,57 @@ Boston, MA 02110-1301, USA. #ifdef USE_QT4 -// Reimplement the QWidgetList class +// Reimplement the TQWidgetList class // For Qt4, this class was removed! +#include <tqwidget.h> +#include <tqptrlist.h> + +class TQWidgetList : public TQPtrList<QWidget> +{ +public: + TQWidgetList() : TQPtrList<QWidget>() {} + TQWidgetList( const TQWidgetList &list ) : TQPtrList<QWidget>(list) {} + ~TQWidgetList() { clear(); } + TQWidgetList &operator=(const TQWidgetList &list) + { return (TQWidgetList&)TQPtrList<QWidget>::operator=(list); } + + // Interoperability + TQWidgetList(const QWidgetList& l) + { + for (int i = 0; i < l.size(); ++i) append(l.at(i)); + } + + TQWidgetList& operator= (const QWidgetList& l) + { + this->clear(); + for (int i = 0; i < l.size(); ++i) append(l.at(i)); + return *this; + } + + operator QWidgetList() const { + QWidgetList list; + for (TQWidgetList::const_iterator it = TQWidgetList::constBegin(); + it != TQWidgetList::constEnd(); ++it) + list.append(*it); + return list; + } + + operator TQWidgetList*() { + TQWidgetList *qwl; + qwl = new TQWidgetList(*this); + return qwl; + } +}; + +class TQWidgetListIt : public TQPtrListIterator<QWidget> +{ +public: + TQWidgetListIt( const TQWidgetList &l ) : TQPtrListIterator<QWidget>(l) {} + TQWidgetListIt &operator=(const TQWidgetListIt &i) + { return (TQWidgetListIt&)TQPtrListIterator<QWidget>::operator=(i); } +}; + #endif // USE_QT4 #endif /* TQWIDGETLIST_H */
\ No newline at end of file |