diff options
author | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
---|---|---|
committer | toma <toma@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2009-11-25 17:56:58 +0000 |
commit | 90825e2392b2d70e43c7a25b8a3752299a933894 (patch) | |
tree | e33aa27f02b74604afbfd0ea4f1cfca8833d882a /python/pykde/sip/kabc/field.sip | |
download | tdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.tar.gz tdebindings-90825e2392b2d70e43c7a25b8a3752299a933894.zip |
Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features.
BUG:215923
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebindings@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'python/pykde/sip/kabc/field.sip')
-rw-r--r-- | python/pykde/sip/kabc/field.sip | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/python/pykde/sip/kabc/field.sip b/python/pykde/sip/kabc/field.sip new file mode 100644 index 00000000..7a92300e --- /dev/null +++ b/python/pykde/sip/kabc/field.sip @@ -0,0 +1,162 @@ +// +// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com> +// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson +// may also apply + + +// Generated by preSip +// module kabc 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., +// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + + +%If ( KDE_3_1_0 - ) +namespace KABC +{ + +class Field +{ +%TypeHeaderCode +#include <field.h> +%End + + +public: + typedef QValueList<KABC::Field*> List; + + enum FieldCategory + { + All, + Frequent, + Address, + Email, + Personal, + Organization, + CustomCategory + }; + + virtual QString label (); + virtual int category (); + static QString categoryLabel (int); + virtual QString value (const KABC::Addressee&); + virtual bool setValue (KABC::Addressee&, const QString&); + +%If ( KDE_3_2_0 - ) + QString sortKey (const KABC::Addressee&); +%End + + virtual bool isCustom (); + virtual bool equals (KABC::Field*); + static KABC::Field::List allFields (); + static KABC::Field::List defaultFields (); + static KABC::Field* createCustomField (const QString&, int, const QString&, const QString&); + static void deleteFields (); + static void saveFields (KConfig*, const QString&, const KABC::Field::List&); + static void saveFields (const QString&, const KABC::Field::List&); + static KABC::Field::List restoreFields (KConfig*, const QString&); + static KABC::Field::List restoreFields (const QString&); + +protected: + static void createField (int, int = 0); + static void createDefaultField (int, int = 0); + +private: +//ig Field (KABC::Field::FieldImpl*); + ~Field (); +//force + Field (); +//end + +}; // class Field + +}; // namespace KABC + +%End + + + +%If (KDE_3_1_0 - ) +%MappedType KABC::Field::List +//converts a Python list of KABC::Field +{ +%TypeHeaderCode +#include <qvaluelist.h> +#include <sipkabcKABCField.h> +//typedef QValueList<KABC::Field *> List; +%End + +%ConvertFromTypeCode + if (!sipCpp) + return PyList_New(0); + + // Create the list + PyObject *pylist; + if ((pylist = PyList_New(0)) == NULL) + return NULL; + + QValueList<KABC::Field *> *cpplist = (QValueList<KABC::Field *> *)sipCpp; + PyObject *inst; + + // Get it. + QValueList<KABC::Field *>::Iterator it; + for( it = cpplist->begin(); it != cpplist->end(); ++it ) + { + if (((inst = sipBuildResult (NULL, "N", (KABC::Field *) (*it), sipClass_KABC_Field)) == NULL) + || PyList_Append (pylist, inst) < 0) + { + Py_DECREF (pylist); + return NULL; + } + } + + return pylist; +%End + + +%ConvertToTypeCode + if (sipIsErr == NULL) + return PyList_Check(sipPy); + + QValueList<KABC::Field *> *cpplist = new QValueList<KABC::Field *>; + + PyObject *elem; + KABC::Field *cpp; + int iserr = 0; + + for (int i = 0; i < PyList_Size (sipPy); i++) + { + elem = PyList_GET_ITEM (sipPy, i); + cpp = (KABC::Field *)sipForceConvertTo_KABC_Field (elem, &iserr); + + if (iserr) + { + *sipIsErr = 1; + delete cpplist; + return 0; + } + + cpplist->append (cpp); + } + + *sipCppPtr = cpplist; + + return 1; +%End +}; +%End + + |