X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=blobdiff_plain;f=ui%2Fncurses%2Fnc-menu.h;h=4c3a43fcca978322d298b220afaf0232b9e98b4e;hp=693b96c8efd84b0988d79f006b2c089c8ed43545;hb=28926a0e2f144b09ac9e0a4d019c7f649fd9d5c1;hpb=ee9ff59ad99f65befc09cfe88ce5849269ac3ac6 diff --git a/ui/ncurses/nc-menu.h b/ui/ncurses/nc-menu.h index 693b96c..4c3a43f 100644 --- a/ui/ncurses/nc-menu.h +++ b/ui/ncurses/nc-menu.h @@ -67,10 +67,22 @@ static inline struct pmenu_item *pmenu_item_from_arg(void *arg) return item; } +static inline struct cui_opt_data *cod_from_item(struct pmenu_item *item) +{ + return item->data; +} + static inline struct pmenu_item *pmenu_item_init(struct pmenu *menu, unsigned int index, const char *name) { - return pmenu_item_setup(menu, pmenu_item_alloc(menu), index, name); + struct pmenu_item *item = pmenu_item_alloc(menu); + + if (pmenu_item_setup(menu, item, index, name)) { + talloc_free(item); + item = NULL; + } + + return item; } /** @@ -85,6 +97,8 @@ struct pmenu { ITEM **items; unsigned int item_count; unsigned int insert_pt; + const char *help_title; + const char *help_text; int (*hot_key)(struct pmenu *menu, struct pmenu_item *item, int c); void (*on_exit)(struct pmenu *menu); void (*on_new)(struct pmenu *menu);