diff options
Diffstat (limited to 'sip/qt/qvaluelist.sip')
-rw-r--r-- | sip/qt/qvaluelist.sip | 173 |
1 files changed, 0 insertions, 173 deletions
diff --git a/sip/qt/qvaluelist.sip b/sip/qt/qvaluelist.sip deleted file mode 100644 index d803861..0000000 --- a/sip/qt/qvaluelist.sip +++ /dev/null @@ -1,173 +0,0 @@ -// This is the SIP interface definition for all types based on the TQValueList -// template. -// -// Copyright (c) 2007 -// Riverbank Computing Limited <info@riverbankcomputing.co.uk> -// -// This file is part of PyTQt. -// -// This copy of PyTQt 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. -// -// PyTQt 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 -// PyTQt; see the file LICENSE. If not, write to the Free Software Foundation, -// Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - - -%ExportedDoc -<Sect2><Title>TQValueList<type> (TQt v2+)</Title> -<Para> -Types based on the <Literal>TQValueList</Literal> template are automatically -converted to and from Python lists of the type. -</Para> -</Sect2> -%End - - -template<Type> -%MappedType TQValueList<Type> -{ -%TypeHeaderCode -#include <tqvaluelist.h> -%End - -%ConvertFromTypeCode - int i; - PyObject *l; - - // Create the list. - - if ((l = PyList_New(sipCpp -> count())) == NULL) - return NULL; - - // Get it. - - i = 0; - TQValueListConstIterator<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; - } - - TQValueList<Type> *qvl = new TQValueList<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 -}; - - -%MappedType TQValueList<int> -{ -%TypeHeaderCode -#include <tqvaluelist.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,PyLong_FromLong((long)(*sipCpp)[i])) < 0) - { - Py_DECREF(l); - - return NULL; - } - - return l; -%End - -%ConvertToTypeCode - // Convert a Python list of integers to a TQValueList<int> on the heap. - - if (sipIsErr == NULL) - return PyList_Check(sipPy); - - TQValueList<int> *qvl = new TQValueList<int>; - - PyErr_Clear(); - - for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) - { - qvl -> append(PyLong_AsLong(PyList_GET_ITEM(sipPy,i))); - - if (PyErr_Occurred() != NULL) - { - delete qvl; - *sipIsErr = 1; - - return 0; - } - } - - *sipCppPtr = qvl; - - return 1; -%End -}; |