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 FXTRISTATEBUTTON_H
00025 #define FXTRISTATEBUTTON_H
00026
00027 #ifndef FXTOGGLEBUTTON_H
00028 #include "FXToggleButton.h"
00029 #endif
00030
00031
00032 namespace FX {
00033
00042 class FXAPI FXTriStateButton : public FXToggleButton {
00043 FXDECLARE(FXTriStateButton)
00044 protected:
00045 FXString maybelabel;
00046 FXIcon *maybeicon;
00047 FXString maybetip;
00048 FXString maybehelp;
00049 protected:
00050 FXTriStateButton();
00051 private:
00052 FXTriStateButton(const FXTriStateButton&);
00053 FXTriStateButton& operator=(const FXTriStateButton&);
00054 public:
00055 long onPaint(FXObject*,FXSelector,void*);
00056 long onUnknown(FXObject*,FXSelector,void*);
00057 long onQueryHelp(FXObject*,FXSelector,void*);
00058 long onQueryTip(FXObject*,FXSelector,void*);
00059 public:
00060
00062 FXTriStateButton(FXComposite* p,const FXString& text1,const FXString& text2,const FXString& text3,FXIcon* icon1=NULL,FXIcon* icon2=NULL,FXIcon* icon3=NULL,FXObject* tgt=NULL,FXSelector sel=0,FXuint opts=TOGGLEBUTTON_NORMAL,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_PAD,FXint pr=DEFAULT_PAD,FXint pt=DEFAULT_PAD,FXint pb=DEFAULT_PAD);
00063
00065 virtual void create();
00066
00068 virtual void detach();
00069
00071 virtual FXint getDefaultWidth();
00072
00074 virtual FXint getDefaultHeight();
00075
00077 void setMaybeText(const FXString& text);
00078
00080 FXString getMaybeText() const { return maybelabel; }
00081
00083 void setMaybeIcon(FXIcon* ic);
00084
00086 FXIcon* getMaybeIcon() const { return maybeicon; }
00087
00089 void setMaybeHelpText(const FXString& text);
00090
00092 FXString getMaybeHelpText() const { return maybehelp; }
00093
00095 void setMaybeTipText(const FXString& text);
00096
00098 FXString getMaybeTipText() const { return maybetip; }
00099
00101 virtual void save(FXStream& store) const;
00102
00104 virtual void load(FXStream& store);
00105
00107 virtual ~FXTriStateButton();
00108 };
00109
00110 }
00111
00112 #endif