diff options
Diffstat (limited to 'python/pyqt/sip/qt/qvaluelist.sip')
-rw-r--r-- | python/pyqt/sip/qt/qvaluelist.sip | 181 |
1 files changed, 0 insertions, 181 deletions
diff --git a/python/pyqt/sip/qt/qvaluelist.sip b/python/pyqt/sip/qt/qvaluelist.sip deleted file mode 100644 index 8884ed44..00000000 --- a/python/pyqt/sip/qt/qvaluelist.sip +++ /dev/null @@ -1,181 +0,0 @@ -// This is the SIP interface definition for all types based on the QValueList -// template. -// -// Copyright (c) 2007 -// Riverbank Computing Limited <info@riverbankcomputing.co.uk> -// -// 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 -<Sect2><Title>QValueList<type> (Qt v2+)</Title> -<Para> -Types based on the <Literal>QValueList</Literal> template are automatically -converted to and from Python lists of the type. -</Para> -</Sect2> -%End - - -%If (Qt_2_1_0 -) - -template<Type> -%MappedType QValueList<Type> -{ -%TypeHeaderCode -#include <qvaluelist.h> -%End - -%ConvertFromTypeCode - int i; - PyObject *l; - - // Create the list. - - if ((l = PyList_New(sipCpp -> count())) == NULL) - return NULL; - - // Get it. - - i = 0; - QValueListConstIterator<Type> it; - - for (it = sipCpp -> begin(); it != sipCpp -> end(); ++it) - { - PyObject *tmobj; - - if ((tmobj = sipConvertFromNewInstance(new Type(*it),sipClass_Type,sipTransferObj)) == NULL || PyList_SetItem(l,i,tmobj) < 0) - { - Py_XDECREF(tmobj); - Py_DECREF(l); - - return NULL; - } - - ++i; - } - - return l; -%End - -%ConvertToTypeCode - if (sipIsErr == NULL) - { - if (!PyList_Check(sipPy)) - return 0; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - if (!sipCanConvertToInstance(PyList_GET_ITEM(sipPy,i),sipClass_Type,SIP_NOT_NONE)) - return 0; - - return 1; - } - - QValueList<Type> *qvl = new QValueList<Type>; - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - int iserr = 0, state; - - // We apply the transfer to the list itself, not the elements. - Type *itm = reinterpret_cast<Type *>(sipConvertToInstance(PyList_GET_ITEM(sipPy,i),sipClass_Type,0,SIP_NOT_NONE,&state,&iserr)); - - if (iserr) - { - sipReleaseInstance(itm,sipClass_Type,state); - - *sipIsErr = 1; - delete qvl; - - return 0; - } - - qvl -> append(*itm); - - sipReleaseInstance(itm,sipClass_Type,state); - } - - *sipCppPtr = qvl; - - return sipGetState(sipTransferObj); -%End -}; - -%End - - -%If (Qt_2_00 -) - -%MappedType QValueList<int> -{ -%TypeHeaderCode -#include <qvaluelist.h> -%End - -%ConvertFromTypeCode - // Convert to a Python list of integers. - - PyObject *l; - - // Create the list. - - if ((l = PyList_New(sipCpp -> count())) == NULL) - return NULL; - - // Get it. - - for (uint i = 0; i < sipCpp -> count(); ++i) - if (PyList_SetItem(l,i,PyInt_FromLong((long)(*sipCpp)[i])) < 0) - { - Py_DECREF(l); - - return NULL; - } - - return l; -%End - -%ConvertToTypeCode - // Convert a Python list of integers to a QValueList<int> on the heap. - - if (sipIsErr == NULL) - return PyList_Check(sipPy); - - QValueList<int> *qvl = new QValueList<int>; - - PyErr_Clear(); - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - qvl -> append((int)PyInt_AsLong(PyList_GET_ITEM(sipPy,i))); - - if (PyErr_Occurred() != NULL) - { - delete qvl; - *sipIsErr = 1; - - return 0; - } - } - - *sipCppPtr = qvl; - - return 1; -%End -}; - -%End |