diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-08-16 09:06:37 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-08-16 09:06:37 +0000 |
commit | 39d98386f72c65826e162e3e8fd36752ec469252 (patch) | |
tree | 5cec746207c4c892d064beafca1de94568a3aeb9 /sip/kio/ksycocaentry.sip | |
download | pytde-39d98386f72c65826e162e3e8fd36752ec469252.tar.gz pytde-39d98386f72c65826e162e3e8fd36752ec469252.zip |
Move python-kde3 to the more correct python-trinity
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/libraries/python-trinity@1247483 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'sip/kio/ksycocaentry.sip')
-rw-r--r-- | sip/kio/ksycocaentry.sip | 207 |
1 files changed, 207 insertions, 0 deletions
diff --git a/sip/kio/ksycocaentry.sip b/sip/kio/ksycocaentry.sip new file mode 100644 index 0000000..dc60fdb --- /dev/null +++ b/sip/kio/ksycocaentry.sip @@ -0,0 +1,207 @@ +// +// Copyright 2006 Jim Bublitz <[email protected]> +// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson +// may also apply + + +// Generated by preSip +// module kio version KDE 3.5.3 + + +// This software 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 software 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 General Public License for more details. +// +// You should have received a copy of the GNU General Public +// License along with this library; see the file COPYING. +// If not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + +class KSycocaEntry : KShared +{ +%TypeHeaderCode +#include <ksycocaentry.h> +%End + + +public: + virtual bool isType (KSycocaType) const; + virtual KSycocaType sycocaType () const; + +public: +//ig typedef KSharedPtr<KSycocaEntry> Ptr; +//ig typedef QValueList<KSycocaEntry::Ptr> List; + +public: + KSycocaEntry (const QString&); + +%If ( KDE_3_1_0 - ) + static void read (QDataStream&, QString&); + static void read (QDataStream&, QStringList&); +%End + + KSycocaEntry (QDataStream&, int); + virtual QString name () const = 0; + QString entryPath () const; + virtual bool isValid () const = 0; + virtual bool isDeleted () const; + int offset (); + virtual void save (QDataStream&); + virtual void load (QDataStream&) = 0; + +protected: + +protected: +//igx virtual void virtual_hook (int, void*); + +}; // class KSycocaEntry + + + +%MappedType KSycocaEntry::Ptr +//converts KSycocaEntry +{ +%TypeHeaderCode +#include <ksharedptr.h> +#include <ksycocaentry.h> +%End + +%ConvertFromTypeCode + // Convert to a Python instance + + if (!sipCpp) + return NULL; + + KSharedPtr<KSycocaEntry> *cPtr = new KSharedPtr<KSycocaEntry> (*(KSharedPtr<KSycocaEntry> *)sipCpp); + KSycocaEntry *cpp = cPtr->data (); + PyObject *obj = sipConvertFromInstance (cpp, sipClass_KSycocaEntry, sipTransferObj); + + return obj; +%End + +%ConvertToTypeCode + // Convert a Python instance to a Ptr on the heap. + + if (sipIsErr == NULL) + return sipCanConvertToType(sipPy, sipType_KSycocaEntry, SIP_NO_CONVERTORS); + + int iserr = 0; + KSycocaEntry *cpp = (KSycocaEntry *)sipConvertToType(sipPy, sipType_KSycocaEntry, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); + + if (iserr) + { + *sipIsErr = 1; + return 0; + } + + *sipCppPtr = new KSharedPtr<KSycocaEntry> (cpp); + + return 1; +%End +}; + + +%MappedType KSycocaEntry::List +//converts a Python list of KSycocaEntry +{ +%TypeHeaderCode +#include <ksharedptr.h> +#include <kservice.h> +#include <kservicegroup.h> +#include <ksycocaentry.h> +#include <ksycocatype.h> +#include <qvaluelist.h> +%End + +%ConvertFromTypeCode + // Convert to a Python list of Ptr (KService). + + if (!sipCpp) + return PyList_New (0); + + PyObject *plist; + + // Create the list + + if ((plist = PyList_New(0)) == NULL) + return NULL; + + // Get it. + + KSycocaEntry::List *cList = (KSycocaEntry::List *)sipCpp; + PyObject *inst; + KSharedPtr<KSycocaEntry> *svc; + KSharedPtr <KService> *svcType; + KSharedPtr <KServiceGroup> *svcGroupType; + + KSycocaEntry::List::Iterator it; + for( it = cList->begin(); it != cList->end(); ++it ) + { + svc = &(KSycocaEntry::Ptr)(*it); + if (svc->data ()->sycocaType () == KST_KService) + { + svcType = (KSharedPtr<KService> *)svc; + inst = sipConvertFromType(svcType, sipType_KService_Ptr, sipTransferObj); + } + else if (svc->data ()->sycocaType () == KST_KServiceGroup) + { + svcGroupType = (KSharedPtr <KServiceGroup> *) svc; + inst = sipConvertFromType(svcGroupType, sipType_KServiceGroup_Ptr, sipTransferObj); + } + else + inst = NULL; + + if ((inst == NULL) || (PyList_Append (plist, inst) < 0)) + { + Py_XDECREF (inst); + Py_DECREF (plist); + return NULL; + } + } + + return plist; +%End + +%ConvertToTypeCode + // Convert a Python list to List on the heap. + + if (sipIsErr == NULL) + return PyList_Check(sipPy); + + KSycocaEntry::List *cList = new KSycocaEntry::List; + + PyObject *elem; + KSycocaEntry *service; + int iserr = 0; + + for (int i = 0; i < PyList_Size (sipPy); i++) + { + elem = PyList_GET_ITEM (sipPy, i); + service = (KSycocaEntry *)sipForceConvertToType(elem, sipType_KSycocaEntry, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); + + if (iserr) + { + *sipIsErr = 1; + delete cList; + return 0; + } + + KSycocaEntry::Ptr ptr(service); + + cList->append (ptr); + } + + *sipCppPtr = cList; + + return 1; +%End +}; + + |