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 #ifndef _CIvfUIButtonBase_h_
00026 #define _CIvfUIButtonBase_h_
00027
00028 #include <ivf3dui/IvfUIInteractiveBase.h>
00029
00030 IvfSmartPointer(CIvfUIButtonBase);
00031
00032 class IVF3DUI_API CIvfUIButtonBase : public CIvfUIInteractiveBase {
00033 public:
00034 enum TButtonType {
00035 BT_NORMAL,
00036 BT_TOGGLE,
00037 BT_GROUP
00038 };
00039 enum TButtonState {
00040 BS_DOWN,
00041 BS_UP,
00042 BS_UNDEFINED
00043 };
00044 private:
00045 TButtonType m_type;
00046 TButtonState m_state;
00047 public:
00048 void groupUpdateState(TButtonState state);
00049 CIvfUIButtonBase();
00050 virtual ~CIvfUIButtonBase();
00051
00052 IvfClassInfo("CIvfUIButtonBase",CIvfUIInteractiveBase);
00053
00054 void setState(TButtonState state);
00055 TButtonType getType();
00056
00057 void setType(TButtonType type);
00058 TButtonState getState();
00059
00060 virtual void doStateChange();
00061 };
00062
00063 #endif