1b69bf52dSJason Hobbs /* 2b69bf52dSJason Hobbs * Copyright 2010-2011 Calxeda, Inc. 3b69bf52dSJason Hobbs * 4*1a459660SWolfgang Denk * SPDX-License-Identifier: GPL-2.0+ 5b69bf52dSJason Hobbs */ 6b69bf52dSJason Hobbs 7b69bf52dSJason Hobbs #ifndef __MENU_H__ 8b69bf52dSJason Hobbs #define __MENU_H__ 9b69bf52dSJason Hobbs 10b69bf52dSJason Hobbs struct menu; 11b69bf52dSJason Hobbs 12b41bc5a8SJason Hobbs struct menu *menu_create(char *title, int timeout, int prompt, 13fc9d64ffSPali Rohár void (*item_data_print)(void *), 14fc9d64ffSPali Rohár char *(*item_choice)(void *), 15fc9d64ffSPali Rohár void *item_choice_data); 16b69bf52dSJason Hobbs int menu_default_set(struct menu *m, char *item_key); 17b69bf52dSJason Hobbs int menu_get_choice(struct menu *m, void **choice); 18b69bf52dSJason Hobbs int menu_item_add(struct menu *m, char *item_key, void *item_data); 19b69bf52dSJason Hobbs int menu_destroy(struct menu *m); 20e0611dd9SHeiko Schocher void menu_display_statusline(struct menu *m); 216a3439fdSAnatolij Gustschin int menu_default_choice(struct menu *m, void **choice); 22b69bf52dSJason Hobbs 23317d6c57SHeiko Schocher #if defined(CONFIG_MENU_SHOW) 24317d6c57SHeiko Schocher int menu_show(int bootdelay); 25317d6c57SHeiko Schocher #endif 26b69bf52dSJason Hobbs #endif /* __MENU_H__ */ 27