00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef MYTHWIZARDDIALOG_H
00039 #define MYTHWIZARDDIALOG_H
00040
00041 #include "mythwidgets.h"
00042 #include "mythdialogs.h"
00043
00044 class QHBoxLayout;
00045 class MythWizardPrivate;
00046
00047 class MPUBLIC MythWizard : public MythDialog
00048 {
00049 Q_OBJECT
00050 Q_PROPERTY(QFont titleFont READ titleFont WRITE setTitleFont)
00051
00052 public:
00053 MythWizard(MythMainWindow* parent, const char* name = 0);
00054 virtual ~MythWizard();
00055
00056 void Show();
00057
00058 void setFont(const QFont & font);
00059
00060 virtual void addPage(QWidget *, const QString &);
00061 virtual void insertPage(QWidget *, const QString &, int);
00062 virtual void removePage(QWidget *);
00063
00064 QString title(QWidget *) const;
00065 void setTitle(QWidget *, const QString &);
00066 QFont titleFont() const;
00067 void setTitleFont(const QFont &);
00068
00069 virtual void showPage(QWidget *);
00070
00071 QWidget * currentPage() const;
00072
00073 QWidget* page(int) const;
00074 int pageCount() const;
00075 int indexOf(QWidget*) const;
00076
00077 virtual bool appropriate(QWidget *) const;
00078 virtual void setAppropriate(QWidget *, bool);
00079
00080 MythPushButton * backButton() const;
00081 MythPushButton * nextButton() const;
00082 MythPushButton * finishButton() const;
00083 MythPushButton * cancelButton() const;
00084
00085 bool eventFilter(QObject *, QEvent *);
00086
00087 virtual void keyPressEvent(QKeyEvent *);
00088
00089 public slots:
00090 virtual void setBackEnabled(QWidget *, bool);
00091 virtual void setNextEnabled(QWidget *, bool);
00092 virtual void setFinishEnabled(QWidget *, bool);
00093
00094 virtual void setHelpText(QString helptext);
00095
00096 protected slots:
00097 virtual void back();
00098 virtual void next();
00099
00100 signals:
00101 void selected(const QString&);
00102
00103 protected:
00104 virtual void layOutButtonRow(QHBoxLayout *);
00105 virtual void layOutTitleRow(QHBoxLayout *, const QString &);
00106
00107 void setBackEnabled(bool);
00108 void setNextEnabled(bool);
00109
00110 void setNextPage(QWidget *);
00111
00112 void updateButtons();
00113
00114 void layOut();
00115
00116 MythWizardPrivate *d;
00117 };
00118
00119 class MPUBLIC MythJumpWizard : public MythWizard
00120 {
00121 Q_OBJECT
00122
00123 public:
00124 MythJumpWizard(MythMainWindow *parent, const char *name = NULL);
00125 virtual ~MythJumpWizard();
00126
00127 };
00128
00129 #endif