|
ELinks 0.18.0
|


Data Structures | |
| struct | menu_item |
| struct | menu |
Macros | |
| #define | FREE_ANY (FREE_LIST|FREE_TEXT|FREE_RTEXT|FREE_DATA) |
| #define | mi_is_selectable(mi) (!((mi)->flags & NO_SELECT)) |
| #define | mi_has_left_text(mi) ((mi)->text && *(mi)->text) |
| #define | mi_has_right_text(mi) ((mi)->rtext && *(mi)->rtext) |
| #define | mi_is_horizontal_bar(mi) (!mi_is_selectable(mi) && (mi)->text && !(mi)->text[0]) |
| #define | mi_is_submenu(mi) ((mi)->flags & SUBMENU) |
| #define | mi_text_translate(mi) (!((mi)->flags & NO_INTL)) |
| #define | mi_rtext_translate(mi) ((mi)->flags & RIGHT_INTL) |
| #define | mi_is_end_of_menu(mi) (!(mi)->text) |
| #define | foreach_menu_item(iterator, items) for (iterator = (struct menu_item *)(items); !mi_is_end_of_menu(iterator); (iterator)++) |
| #define | INIT_MENU_ITEM(text, rtext, action_id, func, data, flags) |
| #define | INIT_MENU_ACTION(text, action_id) INIT_MENU_ITEM(text, NULL, action_id, NULL, NULL, 0) |
| #define | NULL_MENU_ITEM INIT_MENU_ITEM(NULL, NULL, ACT_MAIN_NONE, NULL, NULL, 0) |
| #define | BAR_MENU_ITEM INIT_MENU_ITEM("", NULL, ACT_MAIN_NONE, NULL, NULL, NO_SELECT) |
| #define | SET_MENU_ITEM(e_, text_, rtext_, action_id_, func_, data_, flags_, hotkey_state_, hotkey_pos_) |
| #define | add_menu_separator(menu) add_to_menu(menu, "", NULL, ACT_MAIN_NONE, NULL, NULL, NO_SELECT) |
| #define | add_menu_action(menu, text, action_id) add_to_menu(menu, text, NULL, action_id, NULL, NULL, NO_FLAG) |
Typedefs | |
| typedef void(* | menu_func_T) (struct terminal *, void *, void *) |
| typedef int | menu_item_flags_T |
Enumerations | |
| enum | menu_item_flags { NO_FLAG = 0 , FREE_LIST = 1 , FREE_TEXT = 2 , FREE_RTEXT = 4 , FREE_DATA = 8 , MENU_FULLNAME = 16 , SUBMENU = 32 , NO_INTL = 64 , NO_SELECT = 128 , RIGHT_INTL = 256 } |
| enum | hotkey_state { HKS_SHOW = 0 , HKS_IGNORE , HKS_CACHED } |
Functions | |
| struct menu_item * | new_menu (menu_item_flags_T) |
| void | add_to_menu (struct menu_item **mi, const char *text, const char *rtext, main_action_T action_id, menu_func_T func, void *data, menu_item_flags_T flags) |
| void | do_menu (struct terminal *, struct menu_item *, void *, int) |
| void | do_menu_selected (struct terminal *, struct menu_item *, void *, int, int) |
| void | do_mainmenu (struct terminal *, struct menu_item *, void *, int) |
| void | deselect_mainmenu (struct terminal *term, struct menu *menu) |
| #define add_menu_action | ( | menu, | |
| text, | |||
| action_id | |||
| ) | add_to_menu(menu, text, NULL, action_id, NULL, NULL, NO_FLAG) |
| #define add_menu_separator | ( | menu | ) | add_to_menu(menu, "", NULL, ACT_MAIN_NONE, NULL, NULL, NO_SELECT) |
| #define BAR_MENU_ITEM INIT_MENU_ITEM("", NULL, ACT_MAIN_NONE, NULL, NULL, NO_SELECT) |
| #define foreach_menu_item | ( | iterator, | |
| items | |||
| ) | for (iterator = (struct menu_item *)(items); !mi_is_end_of_menu(iterator); (iterator)++) |
| #define FREE_ANY (FREE_LIST|FREE_TEXT|FREE_RTEXT|FREE_DATA) |
| #define INIT_MENU_ACTION | ( | text, | |
| action_id | |||
| ) | INIT_MENU_ITEM(text, NULL, action_id, NULL, NULL, 0) |
| #define INIT_MENU_ITEM | ( | text, | |
| rtext, | |||
| action_id, | |||
| func, | |||
| data, | |||
| flags | |||
| ) |
| #define mi_has_left_text | ( | mi | ) | ((mi)->text && *(mi)->text) |
| #define mi_has_right_text | ( | mi | ) | ((mi)->rtext && *(mi)->rtext) |
| #define mi_is_end_of_menu | ( | mi | ) | (!(mi)->text) |
| #define mi_is_horizontal_bar | ( | mi | ) | (!mi_is_selectable(mi) && (mi)->text && !(mi)->text[0]) |
| #define mi_is_selectable | ( | mi | ) | (!((mi)->flags & NO_SELECT)) |
| #define mi_is_submenu | ( | mi | ) | ((mi)->flags & SUBMENU) |
| #define mi_rtext_translate | ( | mi | ) | ((mi)->flags & RIGHT_INTL) |
| #define mi_text_translate | ( | mi | ) | (!((mi)->flags & NO_INTL)) |
| #define NULL_MENU_ITEM INIT_MENU_ITEM(NULL, NULL, ACT_MAIN_NONE, NULL, NULL, 0) |
| #define SET_MENU_ITEM | ( | e_, | |
| text_, | |||
| rtext_, | |||
| action_id_, | |||
| func_, | |||
| data_, | |||
| flags_, | |||
| hotkey_state_, | |||
| hotkey_pos_ | |||
| ) |
| typedef void(* menu_func_T) (struct terminal *, void *, void *) |
| typedef int menu_item_flags_T |
| enum hotkey_state |
| enum menu_item_flags |
| void add_to_menu | ( | struct menu_item ** | mi, |
| const char * | text, | ||
| const char * | rtext, | ||
| main_action_T | action_id, | ||
| menu_func_T | func, | ||
| void * | data, | ||
| menu_item_flags_T | flags | ||
| ) |
| void do_menu_selected | ( | struct terminal * | term, |
| struct menu_item * | items, | ||
| void * | data, | ||
| int | selected, | ||
| int | hotkeys | ||
| ) |
| struct menu_item * new_menu | ( | menu_item_flags_T | flags | ) |