From 27917305452f2a55ae3be74e83b8a724248ec43f Mon Sep 17 00:00:00 2001 From: Timothy Pearson Date: Thu, 26 Jan 2012 20:43:47 -0600 Subject: Split out qt3 and tqt3 files --- qtinterface/interface_tqt3/tqwidgetlist.h | 91 +++++++++++++++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 qtinterface/interface_tqt3/tqwidgetlist.h (limited to 'qtinterface/interface_tqt3/tqwidgetlist.h') diff --git a/qtinterface/interface_tqt3/tqwidgetlist.h b/qtinterface/interface_tqt3/tqwidgetlist.h new file mode 100644 index 0000000..d4cb078 --- /dev/null +++ b/qtinterface/interface_tqt3/tqwidgetlist.h @@ -0,0 +1,91 @@ +/* + +Copyright (C) 2010 Timothy Pearson + +This library is free software; you can redistribute it and/or +modify it under the terms of the GNU General Public +License as published by the Free Software Foundation; either +version 2 of the License, or (at your option) any later version. + +This library is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public License +along with this library; see the file COPYING.LIB. If not, write to +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. + +*/ + +#ifndef TQT_TQWIDGETLIST_H +#define TQT_TQWIDGETLIST_H + +#include + +#ifdef USE_QT3 + +// Reimplement the TQWidgetList class +// For Qt3, no changes are needed + +#include + +#endif // USE_QT3 + +#ifdef USE_QT4 + +// Reimplement the TQWidgetList class +// For Qt4, this class was removed! + +#include +#include + +class TQWidgetList : public TQPtrList +{ +public: + TQWidgetList() : TQPtrList() {} + TQWidgetList( const TQWidgetList &list ) : TQPtrList(list) {} + ~TQWidgetList() { clear(); } + TQWidgetList &operator=(const TQWidgetList &list) + { return (TQWidgetList&)TQPtrList::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 +{ +public: + TQWidgetListIt( const TQWidgetList &l ) : TQPtrListIterator(l) {} + TQWidgetListIt &operator=(const TQWidgetListIt &i) + { return (TQWidgetListIt&)TQPtrListIterator::operator=(i); } +}; + +#endif // USE_QT4 + +#endif /* TQT_TQWIDGETLIST_H */ \ No newline at end of file -- cgit v1.2.1