ultimatepp/uppsrc/TabBar/TabBarCtrl.h
cxl c0f5db9f57 *TabBar: crossplatform fixes
git-svn-id: svn://ultimatepp.org/upp/trunk@3068 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2011-01-23 12:03:26 +00:00

30 lines
1 KiB
C++

class TabBarCtrl : public TabBar
{
private:
VectorMap<Value, Ctrl *> ctrls;
ParentCtrl pane;
public:
TabBarCtrl() { Ctrl::Add(pane); }
virtual void Layout() { TabBar::Layout(); pane.SetRect(GetClientArea()); }
TabBarCtrl& AddCtrl(Ctrl &ctrl, Value key, Value value, Image icon = Null, String group = Null, bool make_active = false);
TabBarCtrl& AddCtrl(Ctrl &ctrl, Value value, Image icon = Null, String group = Null, bool make_active = false);
TabBarCtrl& InsertCtrl(int ix, Ctrl &ctrl, Value key, Value value, Image icon = Null, String group = Null, bool make_active = false);
TabBarCtrl& InsertCtrl(int ix, Ctrl &ctrl, Value value, Image icon = Null, String group = Null, bool make_active = false);
void RemoveCtrl(Value key);
void RemoveCtrl(int ix);
void RemoveCtrl(Ctrl &c);
Ctrl * GetCtrl(Value key);
Ctrl * GetCtrl(int ix);
Ctrl * GetCurrentCtrl();
int GetCurrentIndex();
void SetCtrl(Value key);
void SetCtrl(int ix);
void SetCtrl(Ctrl &ctrl);
protected:
virtual void CursorChanged();
};