wlmaker
Loading...
Searching...
No Matches
content.h
Go to the documentation of this file.
1/* ========================================================================= */
20#ifndef __WLMTK_CONTENT_H__
21#define __WLMTK_CONTENT_H__
22
23
30;
32
35
36#include "container.h"
37#include "surface.h"
38#include "util.h"
39
40#ifdef __cplusplus
41extern "C" {
42#endif // __cplusplus
43
58 uint32_t (*request_maximized)(wlmtk_content_t *content_ptr,
59 bool maximized);
60
74 uint32_t (*request_fullscreen)(wlmtk_content_t *content_ptr,
75 bool fullscreen);
76
90 uint32_t (*request_size)(wlmtk_content_t *content_ptr,
91 int width,
92 int height);
93
99 void (*request_close)(wlmtk_content_t *content_ptr);
100
107 void (*set_activated)(wlmtk_content_t *content_ptr, bool activated);
108};
109
144
155 wlmtk_content_t *content_ptr,
156 wlmtk_surface_t *surface_ptr,
157 wlmtk_env_t *env_ptr);
158
165 wlmtk_content_t *content_ptr);
166
174 wlmtk_content_t *content_ptr,
175 wlmtk_surface_t *surface_ptr);
176
186 wlmtk_content_t *content_ptr,
187 const wlmtk_content_vmt_t *content_vmt_ptr);
188
190static inline uint32_t wlmtk_content_request_maximized(
191 wlmtk_content_t *content_ptr,
192 bool maximized) {
193 if (NULL == content_ptr->vmt.request_maximized) return 0;
194 return content_ptr->vmt.request_maximized(content_ptr, maximized);
195}
196
198static inline uint32_t wlmtk_content_request_fullscreen(
199 wlmtk_content_t *content_ptr,
200 bool fullscreen) {
201 if (NULL == content_ptr->vmt.request_fullscreen) return 0;
202 return content_ptr->vmt.request_fullscreen(content_ptr, fullscreen);
203}
204
206static inline uint32_t wlmtk_content_request_size(
207 wlmtk_content_t *content_ptr,
208 int width,
209 int height) {
210 return content_ptr->vmt.request_size(content_ptr, width, height);
211}
212
214static inline void wlmtk_content_request_close(wlmtk_content_t *content_ptr) {
215 if (NULL == content_ptr->vmt.request_close) return;
216 return content_ptr->vmt.request_close(content_ptr);
217}
218
221 wlmtk_content_t *content_ptr,
222 bool activated) {
223 if (NULL == content_ptr->vmt.set_activated) return;
224 content_ptr->vmt.set_activated(content_ptr, activated);
225}
226
227
237 wlmtk_content_t *content_ptr,
238 wlmtk_window_t *window_ptr);
239
242 wlmtk_content_t *content_ptr,
243 int *width_ptr,
244 int *height_ptr);
245
248 wlmtk_content_t *content_ptr,
249 int width,
250 int height,
251 uint32_t serial);
252
255
263 wlmtk_content_t *content_ptr,
264 wlmtk_content_t *popup_content_ptr);
265
275 wlmtk_content_t *content_ptr,
276 wlmtk_content_t *popup_content_ptr);
277
280 wlmtk_content_t *content_ptr);
281
283extern const bs_test_case_t wlmtk_content_test_cases[];
284
304
307 wlmtk_fake_surface_t *fake_surface_ptr);
311void wlmtk_fake_content_commit(wlmtk_fake_content_t *fake_content_ptr);
312
313#ifdef __cplusplus
314} // extern "C"
315#endif // __cplusplus
316
317#endif /* __WLMTK_CONTENT_H__ */
318/* == End of content.h ===================================================== */
wlmtk_element_t * wlmtk_content_element(wlmtk_content_t *content_ptr)
Definition content.c:180
static void wlmtk_content_request_close(wlmtk_content_t *content_ptr)
Definition content.h:214
wlmtk_content_t * wlmtk_content_get_parent_content(wlmtk_content_t *content_ptr)
Definition content.c:221
void wlmtk_fake_content_commit(wlmtk_fake_content_t *fake_content_ptr)
Definition content.c:302
void wlmtk_content_set_window(wlmtk_content_t *content_ptr, wlmtk_window_t *window_ptr)
Definition content.c:172
void wlmtk_content_commit(wlmtk_content_t *content_ptr, int width, int height, uint32_t serial)
Definition content.c:158
static uint32_t wlmtk_content_request_fullscreen(wlmtk_content_t *content_ptr, bool fullscreen)
Definition content.h:198
const bs_test_case_t wlmtk_content_test_cases[]
Definition content.c:356
static uint32_t wlmtk_content_request_maximized(wlmtk_content_t *content_ptr, bool maximized)
Definition content.h:190
wlmtk_content_vmt_t wlmtk_content_extend(wlmtk_content_t *content_ptr, const wlmtk_content_vmt_t *content_vmt_ptr)
Definition content.c:117
void wlmtk_content_get_size(wlmtk_content_t *content_ptr, int *width_ptr, int *height_ptr)
Definition content.c:148
bool wlmtk_content_init(wlmtk_content_t *content_ptr, wlmtk_surface_t *surface_ptr, wlmtk_env_t *env_ptr)
Definition content.c:48
static void wlmtk_content_set_activated(wlmtk_content_t *content_ptr, bool activated)
Definition content.h:220
static uint32_t wlmtk_content_request_size(wlmtk_content_t *content_ptr, int width, int height)
Definition content.h:206
void wlmtk_content_fini(wlmtk_content_t *content_ptr)
Definition content.c:71
void wlmtk_content_add_popup(wlmtk_content_t *content_ptr, wlmtk_content_t *popup_content_ptr)
Definition content.c:186
wlmtk_fake_content_t * wlmtk_fake_content_create(wlmtk_fake_surface_t *fake_surface_ptr)
Definition content.c:275
void wlmtk_fake_content_destroy(wlmtk_fake_content_t *fake_content_ptr)
Definition content.c:295
void wlmtk_content_remove_popup(wlmtk_content_t *content_ptr, wlmtk_content_t *popup_content_ptr)
Definition content.c:204
void wlmtk_content_set_surface(wlmtk_content_t *content_ptr, wlmtk_surface_t *surface_ptr)
Definition content.c:91
Definition container.h:55
Definition content.h:111
wlmtk_content_vmt_t vmt
Definition content.h:115
int committed_width
Definition content.h:135
wlmtk_surface_t * surface_ptr
Definition content.h:121
wlmtk_element_vmt_t orig_super_element_vmt
Definition content.h:118
wlmtk_container_t super_container
Definition content.h:113
bs_dllist_t popups
Definition content.h:140
int committed_height
Definition content.h:137
bs_dllist_node_t dlnode
Definition content.h:142
wlmtk_content_t * parent_content_ptr
Definition content.h:132
wlmtk_window_t * window_ptr
Definition content.h:123
wlmtk_util_client_t client
Definition content.h:126
Definition content.h:45
uint32_t(* request_maximized)(wlmtk_content_t *content_ptr, bool maximized)
Definition content.h:58
void(* request_close)(wlmtk_content_t *content_ptr)
Definition content.h:99
uint32_t(* request_fullscreen)(wlmtk_content_t *content_ptr, bool fullscreen)
Definition content.h:74
void(* set_activated)(wlmtk_content_t *content_ptr, bool activated)
Definition content.h:107
uint32_t(* request_size)(wlmtk_content_t *content_ptr, int width, int height)
Definition content.h:90
Definition element.h:143
Definition element.h:51
Definition env.c:32
Definition content.h:286
int requested_width
Definition content.h:298
wlmtk_fake_surface_t * fake_surface_ptr
Definition content.h:290
bool activated
Definition content.h:302
int requested_height
Definition content.h:300
bool request_close_called
Definition content.h:293
wlmtk_content_t content
Definition content.h:288
uint32_t serial
Definition content.h:296
Definition surface.h:141
Definition surface.h:46
Definition window.c:68
Definition util.h:31