libwtk-sdl2
0.0.1
include
bin.hpp
1
#ifndef LIBWTK_SDL2_BIN_HPP
2
#define LIBWTK_SDL2_BIN_HPP
3
4
#include "widget.hpp"
5
6
// Base class for containers that have a single child.
7
struct
bin
:
widget
8
{
9
bin
(widget_ptr child);
10
~
bin
()
override
;
11
12
void
on_draw
(
draw_context
& dc,
selection_context
const
& sc)
const override
;
13
void
on_mouse_down_event(
mouse_down_event
const
& me)
override
;
14
void
on_mouse_up_event(
mouse_up_event
const
& me)
override
;
15
void
on_mouse_move_event(
mouse_move_event
const
& e)
override
;
16
17
void
on_box_allocated
()
override
= 0;
18
19
widget
*
find_selectable
(navigation_type nt,
point
center)
override
;
20
widget
*
navigate_selectable_from_children
(navigation_type nt,
widget
* w,
point
center)
override
;
21
22
// Should be provided when the geometry of a child is not equal to the
23
// geometry of the bin (i.e. if there is some kind of padding).
24
size_hint
get_size_hint
(
int
width,
int
height)
const override
;
25
26
std::vector<widget *>
get_children
()
override
;
27
std::vector<widget const *>
get_children
()
const override
;
28
29
protected
:
30
31
widget_ptr _child;
32
};
33
34
#endif
bin::get_size_hint
size_hint get_size_hint(int width, int height) const override
mouse_up_event
Definition:
mouse_event.hpp:19
mouse_down_event
Definition:
mouse_event.hpp:8
bin
Definition:
bin.hpp:7
bin::find_selectable
widget * find_selectable(navigation_type nt, point center) override
draw_context
Definition:
draw_context.hpp:126
bin::on_box_allocated
void on_box_allocated() override=0
bin::navigate_selectable_from_children
widget * navigate_selectable_from_children(navigation_type nt, widget *w, point center) override
bin::on_draw
void on_draw(draw_context &dc, selection_context const &sc) const override
point
Definition:
geometry.hpp:6
selection_context
Definition:
selection_context.hpp:18
mouse_move_event
Definition:
mouse_event.hpp:26
widget
Definition:
widget.hpp:52
bin::get_children
std::vector< widget * > get_children() override
size_hint
Definition:
widget.hpp:35
Generated by
1.8.14