// This is the SIP interface definition for QStringList. // // Copyright (c) 2007 // Riverbank Computing Limited // // This file is part of PyQt. // // This copy of PyQt 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, or (at your option) any later // version. // // PyQt is supplied 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 General Public License for more // details. // // You should have received a copy of the GNU General Public License along with // PyQt; see the file LICENSE. If not, write to the Free Software Foundation, // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. %ExportedDoc QStringList (Qt v2+) The Python len, [] (for both reading and writing slices and individual elements), del (for deleting slices and individual elements), +, +=, *, *=, ==, != and in operators are supported. Iterator append const QString &x This does not return a value. Iterator prepend const QString &x This does not return a value. %End %If (Qt_2_00 -) class QStringList { %TypeHeaderCode #include %End public: QStringList(); QStringList(const QStringList &); QStringList(const QString &); void sort(); %If (Qt_2_1_0 -) static QStringList fromStrList(const QStrList &); static QStringList split(const QString &,const QString &,bool = 0); static QStringList split(const QChar &,const QString &,bool = 0); static QStringList split(const QRegExp &,const QString &,bool = 0); QString join(const QString &) const; QStringList grep(const QString &,bool = 1) const; QStringList grep(const QRegExp &) const; %End %If (Qt_3_2_0 -) QStringList &gres(const QString &,const QString &,bool = 1); QStringList &gres(const QRegExp &,const QString &); %End // These are actually in QValueList, which isn't implemented so // pretend they are here. bool isEmpty() const; void append(const QString &); void prepend(const QString &); void remove(const QString &); const QString &first() const; const QString &last() const; int findIndex(const QString &) const; uint contains(const QString &) const; uint count() const; void clear(); int __len__(); %MethodCode sipRes = sipCpp -> count(); %End void __setitem__(int,const QString &); %MethodCode int len; len = sipCpp -> count(); if ((a0 = (int)sipConvertFromSequenceIndex(a0,len)) < 0) sipIsErr = 1; else (*sipCpp)[a0] = *a1; %End void __setitem__(SIP_PYSLICE,const QStringList &); %MethodCode #if PY_VERSION_HEX >= 0x02050000 Py_ssize_t len, start, stop, step, slicelength, i; #else int len, start, stop, step, slicelength, i; #endif len = sipCpp -> count(); if (sipConvertFromSliceObject(a0,len,&start,&stop,&step,&slicelength) < 0) sipIsErr = 1; else { int vlen = a1 -> count(); if (vlen != slicelength) { sipBadLengthForSlice(vlen,slicelength); sipIsErr = 1; } else { QStringList::ConstIterator it = a1 -> begin(); for (i = 0; i < slicelength; ++i) { (*sipCpp)[start] = *it; start += step; ++it; } } } %End void __delitem__(int); %MethodCode int len; len = sipCpp -> count(); if ((a0 = (int)sipConvertFromSequenceIndex(a0,len)) < 0) sipIsErr = 1; else sipCpp -> remove(sipCpp -> at(a0)); %End void __delitem__(SIP_PYSLICE); %MethodCode #if PY_VERSION_HEX >= 0x02050000 Py_ssize_t len, start, stop, step, slicelength, i; #else int len, start, stop, step, slicelength, i; #endif len = sipCpp -> count(); if (sipConvertFromSliceObject(a0,len,&start,&stop,&step,&slicelength) < 0) sipIsErr = 1; else for (i = 0; i < slicelength; ++i) { sipCpp -> remove(sipCpp -> at(start)); start += step - 1; } %End QString operator[](int); %MethodCode int len; len = sipCpp -> count(); if ((a0 = (int)sipConvertFromSequenceIndex(a0,len)) < 0) sipIsErr = 1; else sipRes = new QString((*sipCpp)[a0]); %End QStringList operator[](SIP_PYSLICE); %MethodCode #if PY_VERSION_HEX >= 0x02050000 Py_ssize_t len, start, stop, step, slicelength, i; #else int len, start, stop, step, slicelength, i; #endif len = sipCpp -> count(); if (sipConvertFromSliceObject(a0,len,&start,&stop,&step,&slicelength) < 0) sipIsErr = 1; else { sipRes = new QStringList(); for (i = 0; i < slicelength; ++i) { (*sipRes) += (*sipCpp)[start]; start += step; } } %End int __contains__(const QString &); %MethodCode sipRes = (sipCpp -> findIndex(*a0) >= 0); %End QStringList operator+(const QStringList &); QStringList &operator+=(const QStringList &); QStringList &operator+=(const QString &); QStringList operator*(int); %MethodCode sipRes = new QStringList(); while (a0-- > 0) *sipRes += *sipCpp; %End QStringList &operator*=(int); %MethodCode QStringList orig(*sipCpp); sipCpp -> clear(); while (a0-- > 0) *sipCpp += orig; %End bool operator==(const QStringList &); bool operator!=(const QStringList &); }; %End