wlmaker
Loading...
Searching...
No Matches
container.h
Go to the documentation of this file.
1/* ========================================================================= */
20#ifndef __WLMTK_CONTAINER_H__
21#define __WLMTK_CONTAINER_H__
22
23#include <libbase/libbase.h>
24#include <wayland-server.h>
25
30
31#include "element.h"
32
33#ifdef __cplusplus
34extern "C" {
35#endif // __cplusplus
36
51 void (*update_layout)(wlmtk_container_t *container_ptr);
52};
53
84
93bool wlmtk_container_init(wlmtk_container_t *container_ptr,
94 wlmtk_env_t *env_ptr);
95
105 wlmtk_container_t *container_ptr,
106 const wlmtk_container_vmt_t *container_vmt_ptr);
107
118 wlmtk_container_t *container_ptr,
119 wlmtk_env_t *env_ptr,
120 struct wlr_scene_tree *root_wlr_scene_tree_ptr);
121
130 wlmtk_container_t *container_ptr);
131
142 wlmtk_container_t *container_ptr,
143 wlmtk_element_t *element_ptr);
144
155 wlmtk_container_t *container_ptr,
156 wlmtk_element_t *reference_element_ptr,
157 wlmtk_element_t *element_ptr);
158
168 wlmtk_container_t *container_ptr,
169 wlmtk_element_t *element_ptr);
170
180 wlmtk_container_t *container_ptr,
181 wlmtk_element_t *element_ptr);
182
189
199 wlmtk_container_t *container_ptr,
200 wlmtk_element_t *element_ptr);
201
208 wlmtk_container_t *container_ptr)
209{
210 container_ptr->vmt.update_layout(container_ptr);
211}
212
222struct wlr_scene_tree *wlmtk_container_wlr_scene_tree(
223 wlmtk_container_t *container_ptr);
224
226extern const bs_test_case_t wlmtk_container_test_cases[];
227
232
233#ifdef __cplusplus
234} // extern "C"
235#endif // __cplusplus
236
237#endif /* __WLMTK_CONTAINER_H__ */
238/* == End of container.h =================================================== */
void wlmtk_container_set_keyboard_focus_element(wlmtk_container_t *container_ptr, wlmtk_element_t *element_ptr)
Definition container.c:292
void wlmtk_container_remove_element(wlmtk_container_t *container_ptr, wlmtk_element_t *element_ptr)
Definition container.c:227
static void wlmtk_container_update_layout(wlmtk_container_t *container_ptr)
Definition container.h:207
wlmtk_container_vmt_t wlmtk_container_extend(wlmtk_container_t *container_ptr, const wlmtk_container_vmt_t *container_vmt_ptr)
Definition container.c:139
void wlmtk_container_destroy_fake_parent(wlmtk_container_t *container_ptr)
Definition container.c:786
struct wlr_scene_tree * wlmtk_container_wlr_scene_tree(wlmtk_container_t *container_ptr)
Definition container.c:316
void wlmtk_container_add_element(wlmtk_container_t *container_ptr, wlmtk_element_t *element_ptr)
Definition container.c:173
void wlmtk_container_raise_element_to_top(wlmtk_container_t *container_ptr, wlmtk_element_t *element_ptr)
Definition container.c:252
bool wlmtk_container_init_attached(wlmtk_container_t *container_ptr, wlmtk_env_t *env_ptr, struct wlr_scene_tree *root_wlr_scene_tree_ptr)
Definition container.c:119
void wlmtk_container_add_element_atop(wlmtk_container_t *container_ptr, wlmtk_element_t *reference_element_ptr, wlmtk_element_t *element_ptr)
Definition container.c:189
void wlmtk_container_update_pointer_focus(wlmtk_container_t *container_ptr)
Definition container.c:277
void wlmtk_container_fini(wlmtk_container_t *container_ptr)
Definition container.c:152
const bs_test_case_t wlmtk_container_test_cases[]
Definition container.c:817
bool wlmtk_container_init(wlmtk_container_t *container_ptr, wlmtk_env_t *env_ptr)
Definition container.c:101
wlmtk_container_t * wlmtk_container_create_fake_parent(void)
Definition container.c:760
Definition container.h:55
wlmtk_element_vmt_t orig_super_element_vmt
Definition container.h:59
wlmtk_element_t * keyboard_focus_element_ptr
Definition container.h:82
wlmtk_element_t * pointer_focus_element_ptr
Definition container.h:78
wlmtk_container_vmt_t vmt
Definition container.h:62
bs_dllist_t elements
Definition container.h:69
wlmtk_element_t super_element
Definition container.h:57
struct wlr_scene_tree * wlr_scene_tree_ptr
Definition container.h:72
struct wl_listener wlr_scene_tree_node_destroy_listener
Definition container.h:75
wlmtk_element_t * left_button_element_ptr
Definition container.h:80
Definition container.h:38
void(* update_layout)(wlmtk_container_t *container_ptr)
Definition container.h:51
Definition element.h:172
Definition element.h:54
Definition env.c:32