wlmaker
Loading...
Searching...
No Matches
menu_item.h
Go to the documentation of this file.
1/* ========================================================================= */
20#ifndef __WLMTK_MENU_ITEM_H__
21#define __WLMTK_MENU_ITEM_H__
22
23#include <libbase/libbase.h>
24
31
32#include "buffer.h"
33#include "element.h"
34#include "env.h"
35#include "style.h"
36
37#ifdef __cplusplus
38extern "C" {
39#endif // __cplusplus
40
42typedef enum {
43 MENU_ITEM_ENABLED,
44 MENU_ITEM_HIGHLIGHTED,
45 MENU_ITEM_DISABLED
47
69
73 void (*clicked)(wlmtk_menu_item_t *menu_item_ptr);
74};
75
109
122 wlmtk_menu_item_t *menu_item_ptr,
123 const wlmtk_menu_item_style_t *style_ptr,
124 wlmtk_env_t *env_ptr);
125
135 wlmtk_menu_item_t *menu_item_ptr,
136 const wlmtk_menu_item_vmt_t *menu_item_vmt_ptr);
137
143void wlmtk_menu_item_fini(wlmtk_menu_item_t *menu_item_ptr);
144
152 wlmtk_menu_item_t *menu_item_ptr,
153 const char *text_ptr);
154
162 wlmtk_menu_item_t *menu_item_ptr,
163 bool enabled);
164
166bs_dllist_node_t *wlmtk_dlnode_from_menu_item(
167 wlmtk_menu_item_t *menu_item_ptr);
168
170wlmtk_menu_item_t *wlmtk_menu_item_from_dlnode(bs_dllist_node_t *dlnode_ptr);
171
174
184
189
191extern const bs_test_case_t wlmtk_menu_item_test_cases[];
192
193#ifdef __cplusplus
194} // extern "C"
195#endif // __cplusplus
196
197#endif /* __WLMTK_MENU_ITEM_H__ */
198/* == End of menu_item.h =================================================== */
bool wlmtk_menu_item_init(wlmtk_menu_item_t *menu_item_ptr, const wlmtk_menu_item_style_t *style_ptr, wlmtk_env_t *env_ptr)
Definition menu_item.c:73
wlmtk_menu_item_state_t
Definition menu_item.h:42
void wlmtk_menu_item_set_enabled(wlmtk_menu_item_t *menu_item_ptr, bool enabled)
Definition menu_item.c:141
wlmtk_menu_item_t * wlmtk_menu_item_from_dlnode(bs_dllist_node_t *dlnode_ptr)
Definition menu_item.c:170
bs_dllist_node_t * wlmtk_dlnode_from_menu_item(wlmtk_menu_item_t *menu_item_ptr)
Definition menu_item.c:163
wlmtk_element_t * wlmtk_menu_item_element(wlmtk_menu_item_t *menu_item_ptr)
Definition menu_item.c:176
wlmtk_menu_item_vmt_t wlmtk_menu_item_extend(wlmtk_menu_item_t *menu_item_ptr, const wlmtk_menu_item_vmt_t *menu_item_vmt_ptr)
Definition menu_item.c:98
void wlmtk_fake_menu_item_destroy(wlmtk_fake_menu_item_t *fake_menu_item_ptr)
Definition menu_item.c:382
wlmtk_fake_menu_item_t * wlmtk_fake_menu_item_create(void)
Definition menu_item.c:359
bool wlmtk_menu_item_set_text(wlmtk_menu_item_t *menu_item_ptr, const char *text_ptr)
Definition menu_item.c:127
const bs_test_case_t wlmtk_menu_item_test_cases[]
Definition menu_item.c:414
void wlmtk_menu_item_fini(wlmtk_menu_item_t *menu_item_ptr)
Definition menu_item.c:112
Definition buffer.h:40
Definition element.h:172
Definition element.h:54
Definition env.c:32
Definition menu_item.h:49
uint32_t enabled_text_color
Definition menu_item.h:61
wlmtk_style_font_t font
Definition menu_item.h:55
uint64_t height
Definition menu_item.h:57
uint32_t disabled_text_color
Definition menu_item.h:65
wlmtk_style_fill_t highlighted_fill
Definition menu_item.h:53
wlmtk_style_fill_t fill
Definition menu_item.h:51
uint64_t bezel_width
Definition menu_item.h:59
uint64_t width
Definition menu_item.h:67
uint32_t highlighted_text_color
Definition menu_item.h:63
Definition menu_item.h:77
bs_dllist_node_t dlnode
Definition menu_item.h:86
int width
Definition menu_item.h:91
struct wlr_buffer * highlighted_wlr_buffer_ptr
Definition menu_item.h:96
struct wlr_buffer * disabled_wlr_buffer_ptr
Definition menu_item.h:98
wlmtk_menu_item_state_t state
Definition menu_item.h:104
wlmtk_menu_item_vmt_t vmt
Definition menu_item.h:83
bool enabled
Definition menu_item.h:101
wlmtk_buffer_t super_buffer
Definition menu_item.h:79
wlmtk_menu_item_style_t style
Definition menu_item.h:107
wlmtk_element_vmt_t orig_super_element_vmt
Definition menu_item.h:81
struct wlr_buffer * enabled_wlr_buffer_ptr
Definition menu_item.h:94
char * text_ptr
Definition menu_item.h:89
Definition menu_item.h:71
void(* clicked)(wlmtk_menu_item_t *menu_item_ptr)
Definition menu_item.h:73
Definition menu_item.h:176
wlmtk_menu_item_vmt_t orig_vmt
Definition menu_item.h:180
bool clicked_called
Definition menu_item.h:182
wlmtk_menu_item_t menu_item
Definition menu_item.h:178
Definition style.h:73
Definition style.h:101