29 #ifndef Pt_Forms_StackLayout_H
30 #define Pt_Forms_StackLayout_H
32 #include <Pt/Forms/Layout.h>
33 #include <Pt/Signal.h>
40 class PT_FORMS_API StackLayout :
public Layout
44 static const std::size_t NoIndex =
static_cast<const std::size_t
>(-1);
49 virtual ~StackLayout();
51 void addItem(Control& control);
53 void removeItem(Control& control);
57 std::size_t size()
const;
59 Control* controlAt(std::size_t n)
const;
61 std::size_t indexOf(Control& control)
const;
63 std::size_t current()
const;
65 void setCurrent(std::size_t n);
68 {
return _controlRemoved; }
71 {
return _currentChanged; }
74 virtual void onRemoveControl(Control& control);
76 virtual Gfx::SizeF onMeasure(
const SizePolicy& policy);
78 virtual void onLayout(
const Gfx::RectF& rect);
83 std::vector<Control*> _controls;