| 35 |
35 |
| 36 #ifdef __cplusplus |
36 #ifdef __cplusplus |
| 37 extern "C" { |
37 extern "C" { |
| 38 #endif |
38 #endif |
| 39 |
39 |
| |
40 typedef struct UiStateMenuItem { |
| |
41 UiObject *obj; |
| |
42 HMENU menu; |
| |
43 uint64_t id; |
| |
44 UiVar *var; |
| |
45 ui_callback onchange; |
| |
46 void *userdata; |
| |
47 int index; |
| |
48 UiBool state; |
| |
49 } UiStateMenuItem; |
| |
50 |
| 40 typedef void(*ui_menu_add_f)(HMENU, int, UiMenuItemI*, UiObject*); |
51 typedef void(*ui_menu_add_f)(HMENU, int, UiMenuItemI*, UiObject*); |
| 41 |
52 |
| 42 HMENU ui_create_main_menu(UiObject *obj); |
53 HMENU ui_create_main_menu(UiObject *obj); |
| 43 |
54 |
| 44 void ui_add_menu(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
55 void ui_add_menu(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
| 48 void ui_add_menu_list(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
59 void ui_add_menu_list(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
| 49 void ui_add_menu_checklist(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
60 void ui_add_menu_checklist(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
| 50 void ui_add_menu_radiolist(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
61 void ui_add_menu_radiolist(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
| 51 void ui_add_menu_separator(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
62 void ui_add_menu_separator(HMENU parent, int pos, UiMenuItemI *item, UiObject *obj); |
| 52 |
63 |
| |
64 int64_t ui_checkitem_get(UiInteger *i); |
| |
65 void ui_checkitem_set(UiInteger *i, int64_t value); |
| |
66 |
| |
67 int64_t ui_radioitem_get(UiInteger *i); |
| |
68 void ui_radioitem_set(UiInteger *i, int64_t value); |
| |
69 |
| 53 #ifdef __cplusplus |
70 #ifdef __cplusplus |
| 54 } |
71 } |
| 55 #endif |
72 #endif |
| 56 |
73 |
| 57 #endif //MENU_H |
74 #endif //MENU_H |