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 class FXAPI FXShutterItem :
public FXVerticalFrame {
00042 FXDECLARE(FXShutterItem)
00043
friend class FXShutter;
00044
protected:
00045
FXButton *button;
00046
FXScrollWindow *scrollWindow;
00047
FXVerticalFrame *content;
00048
protected:
00049 FXShutterItem(){}
00050
private:
00051 FXShutterItem(
const FXShutterItem&);
00052 FXShutterItem &operator=(
const FXShutterItem&);
00053
public:
00054
long onFocusUp(
FXObject*,FXSelector,
void*);
00055
long onFocusDown(
FXObject*,FXSelector,
void*);
00056
long onCmdButton(
FXObject*,FXSelector,
void*);
00057
public:
00058 enum{
00059 ID_SHUTTERITEM_BUTTON=FXVerticalFrame::ID_LAST,
00060 ID_LAST
00061 };
00062
public:
00063
00064 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);
00065
00066
00067
FXButton* getButton()
const {
return button; }
00068
00069
00070 FXVerticalFrame* getContent()
const {
return content; }
00071
00072
00073
void setHelpText(
const FXString& text);
00074
00075
00076 FXString getHelpText() const;
00077
00078
00079
void setTipText(const FXString& text);
00080
00081
00082
FXString getTipText() const;
00083
00084
00085 virtual ~FXShutterItem();
00086 };
00087
00088
00089
00090 class FXAPI
FXShutter : public
FXVerticalFrame {
00091 FXDECLARE(
FXShutter)
00092
friend class FXShutterItem;
00093
protected:
00094 FXint current;
00095 FXint closing;
00096 FXint heightIncrement;
00097 FXint closingHeight;
00098 FXbool closingHadScrollbar;
00099
protected:
00100
FXShutter(){}
00101
private:
00102
FXShutter(
const FXShutter&);
00103
FXShutter &operator=(
const FXShutter&);
00104
public:
00105
long onFocusUp(
FXObject*,FXSelector,
void*);
00106
long onFocusDown(
FXObject*,FXSelector,
void*);
00107
long onTimeout(
FXObject*,FXSelector,
void*);
00108
long onOpenItem(
FXObject*,FXSelector,
void*);
00109
long onCmdSetValue(
FXObject*,FXSelector,
void*);
00110
long onCmdSetIntValue(
FXObject*,FXSelector,
void*);
00111
long onCmdGetIntValue(
FXObject*,FXSelector,
void*);
00112
long onCmdOpen(
FXObject*,FXSelector,
void*);
00113
long onUpdOpen(
FXObject*,FXSelector,
void*);
00114 public:
00115
enum{
00116 ID_SHUTTER_TIMEOUT=FXVerticalFrame::ID_LAST,
00117 ID_OPEN_SHUTTERITEM,
00118 ID_OPEN_FIRST,
00119 ID_OPEN_LAST=ID_OPEN_FIRST+1000,
00120 ID_LAST
00121 };
00122
public:
00123
00124
00125
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);
00126
00127
00128
virtual void layout();
00129
00130
00131
virtual void setCurrent(FXint panel);
00132
00133
00134 FXint getCurrent()
const {
return current; }
00135
00136
00137
virtual ~FXShutter();
00138 };
00139
00140 }
00141
00142
#endif