00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef FXTABITEM_H
00022 #define FXTABITEM_H
00023
00024 #ifndef FXLABEL_H
00025 #include "FXLabel.h"
00026 #endif
00027
00028 namespace FX {
00029
00030
00032 enum {
00033 TAB_TOP = 0,
00034 TAB_LEFT = 0x00800000,
00035 TAB_RIGHT = 0x01000000,
00036 TAB_BOTTOM = 0x01800000,
00037 TAB_TOP_NORMAL = JUSTIFY_NORMAL|ICON_BEFORE_TEXT|TAB_TOP|FRAME_RAISED|FRAME_THICK,
00038 TAB_BOTTOM_NORMAL= JUSTIFY_NORMAL|ICON_BEFORE_TEXT|TAB_BOTTOM|FRAME_RAISED|FRAME_THICK,
00039 TAB_LEFT_NORMAL = JUSTIFY_LEFT|JUSTIFY_CENTER_Y|ICON_BEFORE_TEXT|TAB_LEFT|FRAME_RAISED|FRAME_THICK,
00040 TAB_RIGHT_NORMAL = JUSTIFY_LEFT|JUSTIFY_CENTER_Y|ICON_BEFORE_TEXT|TAB_RIGHT|FRAME_RAISED|FRAME_THICK
00041 };
00042
00043
00044 class FXTabBar;
00045
00046
00055 class FXAPI FXTabItem : public FXLabel {
00056 FXDECLARE(FXTabItem)
00057 protected:
00058 FXTabItem(){}
00059 private:
00060 FXTabItem(const FXTabItem&);
00061 FXTabItem& operator=(const FXTabItem&);
00062 public:
00063 long onPaint(FXObject*,FXSelector,void*);
00064 long onFocusIn(FXObject*,FXSelector,void*);
00065 long onFocusOut(FXObject*,FXSelector,void*);
00066 long onUngrabbed(FXObject*,FXSelector,void*);
00067 long onLeftBtnPress(FXObject*,FXSelector,void*);
00068 long onLeftBtnRelease(FXObject*,FXSelector,void*);
00069 long onKeyPress(FXObject*,FXSelector,void*);
00070 long onKeyRelease(FXObject*,FXSelector,void*);
00071 long onHotKeyPress(FXObject*,FXSelector,void*);
00072 long onHotKeyRelease(FXObject*,FXSelector,void*);
00073 public:
00074
00076 FXTabItem(FXTabBar* p,const FXString& text,FXIcon* ic=0,FXuint opts=TAB_TOP_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);
00077
00079 virtual FXbool canFocus() const;
00080
00082 FXuint getTabOrientation() const;
00083
00085 void setTabOrientation(FXuint style);
00086 };
00087
00088 }
00089
00090 #endif