kmlprmanager.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef KMLRMANAGER_H
00021 #define KMLRMANAGER_H
00022
00023 #include "kmmanager.h"
00024
00025 #include <qdict.h>
00026 #include <qptrlist.h>
00027 #include <qdatetime.h>
00028 #include <kurl.h>
00029
00030 class LprHandler;
00031 class PrintcapEntry;
00032 class LpcHelper;
00033 class KPrinter;
00034
00035 class KMLprManager : public KMManager
00036 {
00037 Q_OBJECT
00038 public:
00039 KMLprManager(QObject *parent, const char *name, const QStringList & );
00040
00041 bool completePrinter(KMPrinter*);
00042 bool completePrinterShort(KMPrinter*);
00043 bool enablePrinter(KMPrinter*, bool);
00044 bool startPrinter(KMPrinter*, bool);
00045 bool savePrinterDriver(KMPrinter*, DrMain*);
00046 DrMain* loadPrinterDriver(KMPrinter*, bool = false);
00047 DrMain* loadFileDriver(const QString&);
00048 bool createPrinter(KMPrinter*);
00049 bool removePrinter(KMPrinter*);
00050
00051 QString driverDbCreationProgram();
00052 QString driverDirectory();
00053
00054 LpcHelper* lpcHelper() { return m_lpchelper; }
00055 QString printOptions(KPrinter*);
00056
00057 void createPluginActions(KActionCollection*);
00058 void validatePluginActions(KActionCollection*, KMPrinter*);
00059 QString stateInformation();
00060
00061 protected slots:
00062 void slotEditPrintcap();
00063
00064 protected:
00065 void listPrinters();
00066 void initHandlers();
00067 void insertHandler(LprHandler*);
00068 PrintcapEntry* findEntry(KMPrinter*);
00069 LprHandler* findHandler(KMPrinter*);
00070 void checkPrinterState(KMPrinter*);
00071 bool savePrintcapFile();
00072
00073 private:
00074 QDict<LprHandler> m_handlers;
00075 QPtrList<LprHandler> m_handlerlist;
00076 QDict<PrintcapEntry> m_entries;
00077 QDateTime m_updtime;
00078 LpcHelper *m_lpchelper;
00079 KMPrinter *m_currentprinter;
00080 };
00081
00082 #endif
|