23 enum Orientation { Horizontal, Vertical };
32 TuiWidget *firstWidget()
const {
return _first; }
33 TuiWidget *secondWidget()
const {
return _second; }
37 double splitRatio()
const {
return _splitRatio; }
39 Orientation orientation()
const {
return _orientation; }
50 Orientation _orientation;
53 double _splitRatio = 0.5;
54 bool _dragging =
false;
56 void updateChildGeometry();
Event delivered when a key is pressed or released.
Definition keyevent.h:22
Dynamic array container wrapping std::vector.
Definition list.h:40
Event delivered for mouse input.
Definition mouseevent.h:23
Base object for promeki.
Definition objectbase.h:129
ObjectBase * parent() const
Returns the parent object, if one. nullptr if none.
Definition objectbase.h:258
Event delivered when a TUI widget needs to repaint.
Definition widget.h:28
Event delivered when a TUI widget is resized.
Definition widget.h:37
Resizable split between two child widgets.
Definition splitter.h:20
void keyEvent(KeyEvent *e) override
Called on keyboard input. Override in subclasses.
void resizeEvent(TuiResizeEvent *e) override
Called when the widget is resized. Override in subclasses.
void paintEvent(TuiPaintEvent *e) override
Called to paint the widget. Override in subclasses.
Size2Di32 sizeHint() const override
Returns the preferred size. Override in subclasses.
void setSplitRatio(double ratio)
Sets the split position (0.0 to 1.0).
void mouseEvent(MouseEvent *e) override
Called on mouse input. Override in subclasses.
#define PROMEKI_NAMESPACE_BEGIN
Starts a promeki namespace block.
Definition namespace.h:14
#define PROMEKI_NAMESPACE_END
Ends a promeki namespace block.
Definition namespace.h:19