// // Copyright 2006 Jim Bublitz // 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., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. %If ( KDE_3_1_0 - ) class KMJobManager : QObject { %TypeHeaderCode #include %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* filter (); int limit (); void setLimit (int); KMJob* findJob (const QString&); bool sendCommand (const QString&, int, const QString& = QString ::null ); bool sendCommand (const QPtrList&, int, const QString& = QString ::null ); const QPtrList& jobList (bool = 1); void addJob (KMJob*); //ig KMThreadJob* threadJob (); virtual int actions (); virtual QValueList createPluginActions (KActionCollection*); virtual void validatePluginActions (KActionCollection*, const QPtrList&); virtual bool doPluginAction (int, const QPtrList&); protected: void discardAllJobs (); void removeDiscardedJobs (); protected: virtual bool listJobs (const QString&, KMJobManager::JobType, int = 0); virtual bool sendCommandSystemJob (const QPtrList&, int, const QString& = QString ::null ); bool sendCommandThreadJob (const QPtrList&, 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 //converts a Python list of KMJob { %TypeHeaderCode #include #include typedef QPtrList 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 *cpplist = (QPtrList *)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 *cpplist = new QPtrList; PyObject *elem; KMJob *cpp; int iserr = 0; for (int i = 0; i < PyList_Size (sipPy); i++) { elem = PyList_GET_ITEM (sipPy, i); cpp = (KMJob *)sipForceConvertToType(elem, sipType_KMJob, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); if (iserr) { *sipIsErr = 1; delete cpplist; return 0; } cpplist->append (cpp); } *sipCppPtr = cpplist; return 1; %End }; %End