diff options
Diffstat (limited to 'python/pykde/sip/kdeprint/kmjobmanager.sip')
-rw-r--r-- | python/pykde/sip/kdeprint/kmjobmanager.sip | 198 |
1 files changed, 198 insertions, 0 deletions
diff --git a/python/pykde/sip/kdeprint/kmjobmanager.sip b/python/pykde/sip/kdeprint/kmjobmanager.sip new file mode 100644 index 00000000..39b4100e --- /dev/null +++ b/python/pykde/sip/kdeprint/kmjobmanager.sip @@ -0,0 +1,198 @@ +// +// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com> +// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson +// may also apply + + +// Generated by preSip +// module kdeprint 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 - ) + +class KMJobManager : QObject +{ +%TypeHeaderCode +#include <kmjobmanager.h> +%End + + +public: + + enum JobType + { + ActiveJobs, + CompletedJobs + }; + + + class JobFilter + { + + public: + JobFilter (); +//ig int m_type[2]; + +%If ( KDE_3_2_2 - ) + bool m_isspecial; +%End + + + }; // class JobFilter + + +public: + KMJobManager (QObject* /TransferThis/ = 0, const char* = 0); + static KMJobManager* self (); + +%If ( KDE_3_2_2 - ) + void addPrinter (const QString&, KMJobManager::JobType = ActiveJobs , bool = 0); +%End + + void removePrinter (const QString&, KMJobManager::JobType = ActiveJobs ); + void clearFilter (); +//ig QDict<KMJobManager::JobFilter>* filter (); + int limit (); + void setLimit (int); + KMJob* findJob (const QString&); + bool sendCommand (const QString&, int, const QString& = QString ::null ); + bool sendCommand (const QPtrList<KMJob>&, int, const QString& = QString ::null ); + const QPtrList<KMJob>& jobList (bool = 1); + void addJob (KMJob*); +//ig KMThreadJob* threadJob (); + virtual int actions (); + virtual QValueList<KAction*> createPluginActions (KActionCollection*); + virtual void validatePluginActions (KActionCollection*, const QPtrList<KMJob>&); + virtual bool doPluginAction (int, const QPtrList<KMJob>&); + +protected: + void discardAllJobs (); + void removeDiscardedJobs (); + +protected: + virtual bool listJobs (const QString&, KMJobManager::JobType, int = 0); + virtual bool sendCommandSystemJob (const QPtrList<KMJob>&, int, const QString& = QString ::null ); + bool sendCommandThreadJob (const QPtrList<KMJob>&, int, const QString& = QString ::null ); + +protected: + +public: + +%If ( - KDE_3_2_2 ) + void addPrinter (const QString&, KMJobManager::JobType = ActiveJobs ); + +//force +%ConvertToSubClassCode + // The table of Python class objects indexed by their names. The table + // must be sorted by name. + + static sipStringTypeClassMap map[] = { + {sipName_KMJobManager, &sipClass_KMJobManager}, + {sipName_KMManager, &sipClass_KMManager}, + {sipName_KPrintAction, &sipClass_KPrintAction}, + {sipName_KPrintDialogPage, &sipClass_KPrintDialogPage}, + }; + + sipClass = sipMapStringToClass(sipCpp -> className(),map,sizeof (map)/sizeof (map[0])); +%End +//end +%End + + +}; // class KMJobManager + +%End + + + +%If (KDE_3_1_0 - ) +%MappedType QPtrList<KMJob> +//converts a Python list of KMJob +{ +%TypeHeaderCode +#include <qptrlist.h> +#include <kmjob.h> +#include <sipkdeprintKMJob.h> +typedef QPtrList<KMJob> KMJobList; +%End + +%ConvertFromTypeCode + if (!sipCpp) + return PyList_New (0); + + PyObject *pylist; + + // Create the list + + if ((pylist = PyList_New(0)) == NULL) + return NULL; + + // Get it. + + QPtrList<KMJob> *cpplist = (QPtrList<KMJob> *)sipCpp; + KMJob *cpp; + PyObject *inst; + + // the loop depends on the type of iterator the tmeplate makes available + for(cpp = cpplist->first (); cpp != 0; cpp = cpplist->next () ) + { + if (((inst = sipConvertFromInstance (cpp, sipClass_KMJob, sipTransferObj)) == NULL) + || PyList_Append (pylist, inst) < 0) + { + Py_DECREF (pylist); + return NULL; + } + } + + return pylist; +%End + +%ConvertToTypeCode + if (sipIsErr == NULL) + return PyList_Check(sipPy); + + QPtrList<KMJob> *cpplist = new QPtrList<KMJob>; + + PyObject *elem; + KMJob *cpp; + int iserr = 0; + + for (int i = 0; i < PyList_Size (sipPy); i++) + { + elem = PyList_GET_ITEM (sipPy, i); + cpp = (KMJob *)sipForceConvertTo_KMJob (elem, &iserr); + + if (iserr) + { + *sipIsErr = 1; + delete cpplist; + return 0; + } + + cpplist->append (cpp); + } + + *sipCppPtr = cpplist; + + return 1; +%End +}; +%End + + |