kmwizard.h
00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef KMWIZARD_H
00021 #define KMWIZARD_H
00022 
00023 #include <qdialog.h>
00024 #include <qintdict.h>
00025 #include <qvaluestack.h>
00026 
00027 class QWidgetStack;
00028 class QLabel;
00029 class QPushButton;
00030 class KMWizardPage;
00031 class KMPrinter;
00032 class KMWBackend;
00033 class SidePixmap;
00034 
00035 class KMWizard : public QDialog
00036 {
00037     Q_OBJECT
00038 public:
00039     enum PageType {
00040         Start   = 0,
00041         End,
00042         Error,
00043         Backend,
00044         Driver,
00045         File,
00046         SMB,
00047         TCP,
00048         Local,
00049         LPD,
00050         IPP,
00051         IPPSelect,
00052         Class,
00053         Password,
00054         DriverTest,
00055         DriverSelect,
00056         Name,
00057         Banners,
00058         Custom  = 100
00059     };
00060 
00061     KMWizard(QWidget *parent = 0, const char *name = 0);
00062     ~KMWizard();
00063 
00064     void configure(int start, int end, bool inclusive = true);
00065     void setCurrentPage(int ID, bool back = false);
00066     void setPrinter(KMPrinter*);
00067     KMPrinter* printer()        { return m_printer; }
00068     void addPage(KMWizardPage*);
00069     KMWBackend* backendPage()   { return m_backend; }
00070     void setNextPage(int page, int next);
00071 
00072 public slots:
00073     void enableWizard();
00074     void disableWizard();
00075 
00076 protected slots:
00077     void slotNext();
00078     void slotPrev();
00079     void slotHelp();
00080 
00081 private:
00082     QIntDict<KMWizardPage>  m_pagepool;
00083     QValueStack<int>    m_pagestack;
00084 
00085     QWidgetStack        *m_stack;
00086     QLabel          *m_title;
00087     QPushButton     *m_next, *m_prev;
00088     int         m_start, m_end;
00089     bool            m_inclusive;
00090     KMPrinter       *m_printer;
00091 
00092     
00093     KMWBackend      *m_backend;
00094 
00095     
00096     SidePixmap      *m_side;
00097 };
00098 
00099 #endif
 
This file is part of the documentation for kdeprint Library Version 3.2.0.