// // 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. class KMManager : QObject { %TypeHeaderCode #include %End public: enum PrinterOperations { PrinterEnabling, PrinterCreation, PrinterDefault, PrinterTesting, PrinterConfigure, PrinterRemoval, PrinterAll }; enum ServerOperations { ServerRestarting, ServerConfigure, ServerAll }; KMManager (QObject* /TransferThis/ = 0, const char* = 0); static KMManager* self (); QString errorMsg () const; void setErrorMsg (const QString&); bool hasManagement () const; virtual bool createPrinter (KMPrinter*); virtual bool removePrinter (KMPrinter*); virtual bool enablePrinter (KMPrinter*, bool); virtual bool startPrinter (KMPrinter*, bool); virtual bool completePrinter (KMPrinter*); virtual bool completePrinterShort (KMPrinter*); virtual bool setDefaultPrinter (KMPrinter*); virtual bool testPrinter (KMPrinter*); bool upPrinter (KMPrinter*, bool); bool modifyPrinter (KMPrinter*, KMPrinter*); bool removePrinter (const QString&); bool enablePrinter (const QString&, bool); bool startPrinter (const QString&, bool); bool completePrinter (const QString&); bool setDefaultPrinter (const QString&); int printerOperationMask () const; int addPrinterWizard (QWidget* /Transfer/ = 0); bool createSpecialPrinter (KMPrinter*); bool removeSpecialPrinter (KMPrinter*); KMPrinter* findPrinter (const QString&); QPtrList* printerList (bool = 1); QPtrList* printerListComplete (bool = 1); KMPrinter* defaultPrinter (); void enableFilter (bool); bool isFilterEnabled () const; virtual QString driverDbCreationProgram (); virtual QString driverDirectory (); //ig virtual DrMain* loadPrinterDriver (KMPrinter*, bool = 0); //ig virtual DrMain* loadDbDriver (KMDBEntry*); //ig virtual DrMain* loadFileDriver (const QString&); //ig DrMain* loadDriver (KMPrinter*, bool = 0); //ig virtual bool savePrinterDriver (KMPrinter*, DrMain*); //ig virtual bool validateDbDriver (KMDBEntry*); bool invokeOptionsDialog (QWidget* /Transfer/ = 0); %If ( KDE_3_1_0 - ) virtual QString stateInformation (); %End int serverOperationMask () const; virtual bool restartServer (); virtual bool configureServer (QWidget* /Transfer/ = 0); virtual QStringList detectLocalPrinters (); virtual void createPluginActions (KActionCollection*); virtual void validatePluginActions (KActionCollection*, KMPrinter*); %If ( KDE_3_1_0 - ) void checkUpdatePossible (); %End signals: %If ( KDE_3_1_0 - ) void updatePossible (bool); %End protected: virtual void listPrinters (); void addPrinter (KMPrinter*); void setHardDefault (KMPrinter*); void setSoftDefault (KMPrinter*); KMPrinter* softDefault () const; KMPrinter* hardDefault () const; bool uncompressFile (const QString&, QString&); bool notImplemented (); void setHasManagement (bool); void setPrinterOperationMask (int); void setServerOperationMask (int); QString testPage (); void discardAllPrinters (bool); %If ( KDE_3_1_0 - ) void setUpdatePossible (bool); virtual void checkUpdatePossibleInternal (); %End protected: }; // class KMManager %MappedType QPtrList //converts a Python list of KMPrinter { %TypeHeaderCode #include #include #include %End %ConvertFromTypeCode // Convert to a Python list of KMPrinter if (!sipCpp) return PyList_New (0); PyObject *plist; // Create the list if ((plist = PyList_New(0)) == NULL) return NULL; // Get it. QPtrList *kpList = (QPtrList *)sipCpp; PyObject *inst; KMPrinter *p; for(p = kpList->first (); p; p = kpList->next ()) { inst = sipConvertFromInstance (p, sipClass_KMPrinter, sipTransferObj); 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 QPtrList on the heap. if (sipIsErr == NULL) return PyList_Check(sipPy); QPtrList *kpList = new QPtrList; PyObject *elem; KMPrinter *p; int iserr = 0; for (int i = 0; i < PyList_Size (sipPy); i++) { elem = PyList_GET_ITEM (sipPy, i); p = (KMPrinter *)sipForceConvertToType(elem, sipType_KMPrinter, sipTransferObj, SIP_NO_CONVERTORS, NULL, &iserr); if (iserr) { *sipIsErr = 1; delete kpList; return 0; } kpList->append (p); } *sipCppPtr = kpList; return 1; %End };