00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
#ifndef FXWIZARD_H
00025
#define FXWIZARD_H
00026
00027
#ifndef FXDIALOGBOX_H
00028
#include "FXDialogBox.h"
00029
#endif
00030
00031
namespace FX {
00032
00033
00034
class FXImage;
00035
class FXIcon;
00036
class FXImageFrame;
00037
class FXButton;
00038
class FXSwitcher;
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048 class FXAPI FXWizard :
public FXDialogBox {
00049 FXDECLARE(FXWizard)
00050
protected:
00051
FXHorizontalFrame *buttons;
00052
FXImageFrame *sidebar;
00053
FXButton *advance;
00054
FXButton *retreat;
00055
FXButton *finish;
00056
FXButton *cancel;
00057
FXSwitcher *panels;
00058
FXIcon *finishicon;
00059
FXIcon *nexticon;
00060
FXIcon *backicon;
00061
protected:
00062 FXWizard(){}
00063
void construct();
00064
private:
00065 FXWizard(
const FXWizard&);
00066 FXWizard &operator=(
const FXWizard&);
00067
public:
00068
long onUpdFinish(
FXObject*,FXSelector,
void*);
00069 long onCmdNext(
FXObject*,FXSelector,
void*);
00070
long onUpdNext(
FXObject*,FXSelector,
void*);
00071
long onCmdBack(
FXObject*,FXSelector,
void*);
00072 long onUpdBack(
FXObject*,FXSelector,
void*);
00073
public:
00074
enum {
00075 ID_NEXT=FXDialogBox::ID_LAST,
00076 ID_BACK,
00077 ID_LAST
00078 };
00079
public:
00080
00081
00082 FXWizard(
FXApp* a,
const FXString& name,
FXImage *image,FXuint opts=DECOR_TITLE|DECOR_BORDER|DECOR_RESIZE,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=10,FXint pr=10,FXint pt=10,FXint pb=10,FXint hs=10,FXint vs=10);
00083
00084
00085 FXWizard(
FXWindow* owner,
const FXString& name,
FXImage *image,FXuint opts=DECOR_TITLE|DECOR_BORDER|DECOR_RESIZE,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=10,FXint pr=10,FXint pt=10,FXint pb=10,FXint hs=10,FXint vs=10);
00086
00087
00088
FXHorizontalFrame *buttonFrame()
const {
return buttons; }
00089
00090
00091
FXButton *advanceButton()
const {
return advance; }
00092
00093
00094 FXButton *retreatButton()
const {
return retreat; }
00095
00096
00097 FXButton *finishButton()
const {
return finish; }
00098
00099
00100 FXButton *cancelButton()
const {
return cancel; }
00101
00102
00103 FXSwitcher *getContainer()
const {
return panels; }
00104
00105
00106
void setImage(FXImage* img);
00107
00108
00109 FXImage* getImage() const;
00110
00111
00112 FXint getNumPanels() const;
00113
00114
00115
void setCurrentPanel(FXint index);
00116
00117
00118 FXint getCurrentPanel() const;
00119
00120
00121 virtual
void save(FXStream& store) const;
00122
00123
00124 virtual
void load(FXStream& store);
00125
00126
00127 virtual ~FXWizard();
00128 };
00129
00130 }
00131
00132 #endif