# kdeprint Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# kmwizard.h

    00001 /*
    00002  *  This file is part of the KDE libraries
    00003  *  Copyright (c) 2001 Michael Goffioul <kdeprint@swing.be>
    00004  *
    00005  *  This library is free software; you can redistribute it and/or
    00006  *  modify it under the terms of the GNU Library General Public
    00007  *  License version 2 as published by the Free Software Foundation.
    00008  *
    00009  *  This library is distributed in the hope that it will be useful,
    00010  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00012  *  Library General Public License for more details.
    00013  *
    00014  *  You should have received a copy of the GNU Library General Public License
    00015  *  along with this library; see the file COPYING.LIB.  If not, write to
    00016  *  the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    00017  *  Boston, MA 02111-1307, USA.
    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 #include <kdelibs_export.h>
    00028
    00029 class QWidgetStack;
    00030 class QLabel;
    00031 class QPushButton;
    00032 class KMWizardPage;
    00033 class KMPrinter;
    00034 class KMWBackend;
    00035 class SidePixmap;
    00036
    00037 class KDEPRINT_EXPORT KMWizard : public QDialog
    00038 {
    00039     Q_OBJECT
    00040 public:
    00041     enum PageType {
    00042         Start   = 0,
    00043         End,
    00044         Error,
    00045         Backend,
    00046         Driver,
    00047         File,
    00048         SMB,
    00049         TCP,
    00050         Local,
    00051         LPD,
    00052         IPP,
    00053         IPPSelect,
    00054         Class,
    00055         Password,
    00056         DriverTest,
    00057         DriverSelect,
    00058         Name,
    00059         Banners,
    00060         Custom  = 100
    00061     };
    00062
    00063     KMWizard(QWidget *parent = 0, const char *name = 0);
    00064     ~KMWizard();
    00065
    00066     void configure(int start, int end, bool inclusive = true);
    00067     void setCurrentPage(int ID, bool back = false);
    00068     void setPrinter(KMPrinter*);
    00069     KMPrinter* printer()        { return m_printer; }
    00070     void addPage(KMWizardPage*);
    00071     KMWBackend* backendPage()   { return m_backend; }
    00072     void setNextPage(int page, int next);
    00073
    00074 public slots:
    00075     void enableWizard();
    00076     void disableWizard();
    00077
    00078 protected slots:
    00079     void slotNext();
    00080     void slotPrev();
    00081     void slotHelp();
    00082
    00083 private:
    00084     QIntDict<KMWizardPage>  m_pagepool;
    00085     QValueStack<int>    m_pagestack;
    00086
    00087     QWidgetStack        *m_stack;
    00088     QLabel          *m_title;
    00089     QPushButton     *m_next, *m_prev;
    00090     int         m_start, m_end;
    00091     bool            m_inclusive;
    00092     KMPrinter       *m_printer;
    00093
    00094     // backend page
    00095     KMWBackend      *m_backend;
    00096
    00097     // side pixmap
    00098     SidePixmap      *m_side;
    00099 };
    00100
    00101 #endif

This file is part of the documentation for kdeprint Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:31:03 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003