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 FXSHUTTER_H
00025
#define FXSHUTTER_H
00026
00027
#ifndef FXVERTICALFRAME_H
00028
#include "FXVerticalFrame.h"
00029
#endif
00030
00031
namespace FX {
00032
00033
00034
class FXShutter;
00035
class FXButton;
00036
class FXScrollWindow;
00037
class FXShutterItem;
00038
00039
00040
00041
00042
00043
00044
00045
00046 class FXAPI FXShutterItem :
public FXVerticalFrame {
00047 FXDECLARE(FXShutterItem)
00048
friend class FXShutter;
00049
protected:
00050
FXButton *button;
00051
FXScrollWindow *scrollWindow;
00052
FXVerticalFrame *content;
00053
protected:
00054 FXShutterItem(){}
00055
private:
00056 FXShutterItem(
const FXShutterItem&);
00057 FXShutterItem &operator=(
const FXShutterItem&);
00058
public:
00059
long onFocusUp(
FXObject*,FXSelector,
void*);
00060
long onFocusDown(
FXObject*,FXSelector,
void*);
00061
long onCmdButton(
FXObject*,FXSelector,
void*);
00062
public:
00063 enum{
00064 ID_SHUTTERITEM_BUTTON=FXVerticalFrame::ID_LAST,
00065 ID_LAST
00066 };
00067
public:
00068
00069 FXShutterItem(
FXShutter *p,
const FXString& text=NULL,
FXIcon* icon=NULL,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_SPACING,FXint pr=DEFAULT_SPACING,FXint pt=DEFAULT_SPACING,FXint pb=DEFAULT_SPACING,FXint hs=DEFAULT_SPACING,FXint vs=DEFAULT_SPACING);
00070
00071
00072
FXButton* getButton()
const {
return button; }
00073
00074
00075 FXVerticalFrame* getContent()
const {
return content; }
00076
00077
00078
void setHelpText(
const FXString& text);
00079
00080
00081 FXString getHelpText() const;
00082
00083
00084
void setTipText(const FXString& text);
00085
00086
00087 FXString getTipText() const;
00088
00089
00090 virtual ~FXShutterItem();
00091 };
00092
00093
00094
00095
00096
00097
00098
00099 class FXAPI
FXShutter : public
FXVerticalFrame {
00100 FXDECLARE(
FXShutter)
00101
friend class FXShutterItem;
00102
protected:
00103 FXint current;
00104 FXint closing;
00105 FXint heightIncrement;
00106 FXint closingHeight;
00107 FXbool closingHadScrollbar;
00108
protected:
00109
FXShutter(){}
00110
private:
00111
FXShutter(
const FXShutter&);
00112
FXShutter &operator=(
const FXShutter&);
00113
public:
00114
long onFocusUp(
FXObject*,FXSelector,
void*);
00115
long onFocusDown(
FXObject*,FXSelector,
void*);
00116
long onTimeout(
FXObject*,FXSelector,
void*);
00117
long onOpenItem(
FXObject*,FXSelector,
void*);
00118
long onCmdSetValue(
FXObject*,FXSelector,
void*);
00119
long onCmdSetIntValue(
FXObject*,FXSelector,
void*);
00120
long onCmdGetIntValue(
FXObject*,FXSelector,
void*);
00121
long onCmdOpen(
FXObject*,FXSelector,
void*);
00122
long onUpdOpen(
FXObject*,FXSelector,
void*);
00123 public:
00124
enum{
00125 ID_SHUTTER_TIMEOUT=FXVerticalFrame::ID_LAST,
00126 ID_OPEN_SHUTTERITEM,
00127 ID_OPEN_FIRST,
00128 ID_OPEN_LAST=ID_OPEN_FIRST+1000,
00129 ID_LAST
00130 };
00131
public:
00132
00133
00134
FXShutter(
FXComposite *p,
FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_SPACING,FXint pr=DEFAULT_SPACING,FXint pt=DEFAULT_SPACING,FXint pb=DEFAULT_SPACING,FXint hs=DEFAULT_SPACING,FXint vs=DEFAULT_SPACING);
00135
00136
00137
virtual void layout();
00138
00139
00140
virtual void setCurrent(FXint panel);
00141
00142
00143 FXint getCurrent()
const {
return current; }
00144
00145
00146
virtual ~FXShutter();
00147 };
00148
00149 }
00150
00151
#endif