kprinterpropertydialog.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 
00021 #ifndef KPRINTERPROPERTYDIALOG_H
00022 #define KPRINTERPROPERTYDIALOG_H
00023 
00024 #include <kdialogbase.h>
00025 #include <qptrlist.h>
00026 #include <qmap.h>
00027 
00028 class KMPrinter;
00029 class KPrintDialogPage;
00030 class DrMain;
00031 class QTabWidget;
00032 
00033 class KPrinterPropertyDialog : public KDialogBase
00034 {
00035     Q_OBJECT
00036 public:
00037     KPrinterPropertyDialog(KMPrinter *printer, QWidget *parent = 0, const char *name = 0);
00038     ~KPrinterPropertyDialog();
00039 
00040     KMPrinter* printer()        { return m_printer; }
00041     DrMain* driver()        { return m_driver; }
00042     void setDriver(DrMain* d)   { if (!m_driver) m_driver = d; }
00043     void addPage(KPrintDialogPage*);
00044     void setOptions(const QMap<QString,QString>&);
00045     void getOptions(QMap<QString,QString>&, bool = false);
00046     void enableSaveButton(bool);
00047 
00048     static void setupPrinter(KMPrinter *printer, QWidget *parent);
00049 
00050 protected:
00051     bool synchronize();
00052     void collectOptions(QMap<QString,QString>& opts, bool incldef = false);
00053 
00054 protected slots:
00055     void slotCurrentChanged(QWidget*);
00056     void slotUser1();
00057     void slotOk();
00058 
00059 protected:
00060     KMPrinter       *m_printer;
00061     DrMain          *m_driver;
00062     QPtrList<KPrintDialogPage>  m_pages;
00063     KPrintDialogPage    *m_current;
00064     QMap<QString,QString>   m_options;
00065     QTabWidget      *m_tw;
00066     QPushButton     *m_save;
00067 };
00068 
00069 #endif
 
This file is part of the documentation for kdeprint Library Version 3.2.0.