wlmaker
Loading...
Searching...
No Matches
include
toolkit
menu.h
Go to the documentation of this file.
1
/* ========================================================================= */
20
#ifndef __WLMTK_MENU_H__
21
#define __WLMTK_MENU_H__
22
24
typedef
struct
_wlmtk_menu_t
wlmtk_menu_t
;
25
26
enum
wlmtk_menu_mode
;
// IWYU pragma: keep
27
28
#include <libbase/libbase.h>
29
#include <stdbool.h>
30
#include <stddef.h>
31
#include <wayland-server-core.h>
32
33
#include "
base.h
"
34
#include "
box.h
"
// IWYU pragma: keep
35
#include "
element.h
"
36
#include "
menu_item.h
"
// IWYU pragma: keep
37
#include "
style.h
"
38
39
#ifdef __cplusplus
40
extern
"C"
{
41
#endif
// __cplusplus
42
44
typedef
struct
{
46
wlmtk_margin_style_t
margin
;
48
wlmtk_margin_style_t
border
;
50
wlmtk_menu_item_style_t
item
;
51
}
wlmtk_menu_style_t
;
52
54
enum
wlmtk_menu_mode
{
56
WLMTK_MENU_MODE_NORMAL
,
61
WLMTK_MENU_MODE_RIGHTCLICK
62
};
63
65
typedef
struct
{
70
struct
wl_signal
open_changed
;
72
struct
wl_signal
request_close
;
74
struct
wl_signal
destroy
;
75
}
wlmtk_menu_events_t
;
76
84
wlmtk_menu_t
*
wlmtk_menu_create
(
85
const
wlmtk_menu_style_t
*style_ptr);
86
92
void
wlmtk_menu_destroy
(
wlmtk_menu_t
*menu_ptr);
93
95
wlmtk_element_t
*
wlmtk_menu_element
(
wlmtk_menu_t
*menu_ptr);
96
98
wlmtk_base_t
*
wlmtk_menu_base
(
wlmtk_menu_t
*menu_ptr);
99
101
wlmtk_menu_events_t
*
wlmtk_menu_events
(
wlmtk_menu_t
*menu_ptr);
102
110
void
wlmtk_menu_set_open
(
wlmtk_menu_t
*menu_ptr,
bool
opened);
111
113
bool
wlmtk_menu_is_open
(
wlmtk_menu_t
*menu_ptr);
114
121
void
wlmtk_menu_set_mode
(
wlmtk_menu_t
*menu_ptr,
122
enum
wlmtk_menu_mode
mode);
123
125
enum
wlmtk_menu_mode
wlmtk_menu_get_mode
(
wlmtk_menu_t
*menu_ptr);
126
133
void
wlmtk_menu_add_item
(
wlmtk_menu_t
*menu_ptr,
134
wlmtk_menu_item_t
*menu_item_ptr);
135
142
void
wlmtk_menu_remove_item
(
wlmtk_menu_t
*menu_ptr,
143
wlmtk_menu_item_t
*menu_item_ptr);
144
153
void
wlmtk_menu_set_parent_item
(
wlmtk_menu_t
*menu_ptr,
154
wlmtk_menu_item_t
*menu_item_ptr);
155
157
wlmtk_menu_item_t
*
wlmtk_menu_get_parent_item
(
wlmtk_menu_t
*menu_ptr);
158
165
void
wlmtk_menu_request_item_highlight
(
166
wlmtk_menu_t
*menu_ptr,
167
wlmtk_menu_item_t
*menu_item_ptr);
168
174
size_t
wlmtk_menu_items_size
(
wlmtk_menu_t
*menu_ptr);
175
183
wlmtk_menu_item_t
*
wlmtk_menu_item_at
(
wlmtk_menu_t
*menu_ptr,
size_t
i);
184
186
extern
const
bs_test_case_t
wlmtk_menu_test_cases
[];
187
188
#ifdef __cplusplus
189
}
// extern "C"
190
#endif
// __cplusplus
191
192
#endif
/* __WLMTK_MENU_H__ */
193
/* == End of menu.h ======================================================== */
base.h
wlmtk_base_t
struct _wlmtk_base_t wlmtk_base_t
Definition
base.h:24
box.h
element.h
wlmtk_element_t
struct _wlmtk_element_t wlmtk_element_t
Definition
element.h:37
wlmtk_menu_items_size
size_t wlmtk_menu_items_size(wlmtk_menu_t *menu_ptr)
Definition
menu.c:270
wlmtk_menu_get_mode
enum wlmtk_menu_mode wlmtk_menu_get_mode(wlmtk_menu_t *menu_ptr)
Definition
menu.c:202
wlmtk_menu_add_item
void wlmtk_menu_add_item(wlmtk_menu_t *menu_ptr, wlmtk_menu_item_t *menu_item_ptr)
Definition
menu.c:208
wlmtk_menu_set_parent_item
void wlmtk_menu_set_parent_item(wlmtk_menu_t *menu_ptr, wlmtk_menu_item_t *menu_item_ptr)
Definition
menu.c:238
wlmtk_menu_mode
wlmtk_menu_mode
Definition
menu.h:54
WLMTK_MENU_MODE_RIGHTCLICK
@ WLMTK_MENU_MODE_RIGHTCLICK
Definition
menu.h:61
WLMTK_MENU_MODE_NORMAL
@ WLMTK_MENU_MODE_NORMAL
Definition
menu.h:56
wlmtk_menu_t
struct _wlmtk_menu_t wlmtk_menu_t
Definition
menu.h:24
wlmtk_menu_destroy
void wlmtk_menu_destroy(wlmtk_menu_t *menu_ptr)
Definition
menu.c:135
wlmtk_menu_events
wlmtk_menu_events_t * wlmtk_menu_events(wlmtk_menu_t *menu_ptr)
Definition
menu.c:162
wlmtk_menu_create
wlmtk_menu_t * wlmtk_menu_create(const wlmtk_menu_style_t *style_ptr)
Definition
menu.c:100
wlmtk_menu_request_item_highlight
void wlmtk_menu_request_item_highlight(wlmtk_menu_t *menu_ptr, wlmtk_menu_item_t *menu_item_ptr)
Definition
menu.c:251
wlmtk_menu_item_at
wlmtk_menu_item_t * wlmtk_menu_item_at(wlmtk_menu_t *menu_ptr, size_t i)
Definition
menu.c:276
wlmtk_menu_remove_item
void wlmtk_menu_remove_item(wlmtk_menu_t *menu_ptr, wlmtk_menu_item_t *menu_item_ptr)
Definition
menu.c:222
wlmtk_menu_set_mode
void wlmtk_menu_set_mode(wlmtk_menu_t *menu_ptr, enum wlmtk_menu_mode mode)
Definition
menu.c:190
wlmtk_menu_test_cases
const bs_test_case_t wlmtk_menu_test_cases[]
Definition
menu.c:502
wlmtk_menu_get_parent_item
wlmtk_menu_item_t * wlmtk_menu_get_parent_item(wlmtk_menu_t *menu_ptr)
Definition
menu.c:245
wlmtk_menu_element
wlmtk_element_t * wlmtk_menu_element(wlmtk_menu_t *menu_ptr)
Definition
menu.c:150
wlmtk_menu_set_open
void wlmtk_menu_set_open(wlmtk_menu_t *menu_ptr, bool opened)
Definition
menu.c:168
wlmtk_menu_is_open
bool wlmtk_menu_is_open(wlmtk_menu_t *menu_ptr)
Definition
menu.c:184
wlmtk_menu_base
wlmtk_base_t * wlmtk_menu_base(wlmtk_menu_t *menu_ptr)
Definition
menu.c:156
menu_item.h
wlmtk_menu_item_t
struct _wlmtk_menu_item_t wlmtk_menu_item_t
Definition
menu_item.h:31
_wlmtk_menu_t
Definition
menu.c:37
wlmtk_margin_style_t
Definition
style.h:112
wlmtk_menu_events_t
Definition
menu.h:65
wlmtk_menu_events_t::destroy
struct wl_signal destroy
Definition
menu.h:74
wlmtk_menu_events_t::open_changed
struct wl_signal open_changed
Definition
menu.h:70
wlmtk_menu_events_t::request_close
struct wl_signal request_close
Definition
menu.h:72
wlmtk_menu_item_style_t
Definition
style.h:126
wlmtk_menu_style_t
Definition
menu.h:44
wlmtk_menu_style_t::border
wlmtk_margin_style_t border
Definition
menu.h:48
wlmtk_menu_style_t::margin
wlmtk_margin_style_t margin
Definition
menu.h:46
wlmtk_menu_style_t::item
wlmtk_menu_item_style_t item
Definition
menu.h:50
style.h
Generated by
1.16.1