blob: 7af5fdb0edfa4302b3162f75518d02c63921ddb3 [file] [log] [blame]
Jason Hobbsb69bf522011-08-23 11:06:49 +00001/*
2 * Copyright 2010-2011 Calxeda, Inc.
3 *
4 * This program is free software; you can redistribute it and/or modify it
5 * under the terms of the GNU General Public License as published by the Free
6 * Software Foundation; either version 2 of the License, or (at your option)
7 * any later version.
8 *
9 * This program is distributed in the hope it will be useful, but WITHOUT
10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12 * more details.
13 *
14 * You should have received a copy of the GNU General Public License along with
15 * this program. If not, see <http://www.gnu.org/licenses/>.
16 */
17
18#ifndef __MENU_H__
19#define __MENU_H__
20
21struct menu;
22
Jason Hobbsb41bc5a2011-08-23 11:06:50 +000023struct menu *menu_create(char *title, int timeout, int prompt,
Jason Hobbsb69bf522011-08-23 11:06:49 +000024 void (*item_data_print)(void *));
25int menu_default_set(struct menu *m, char *item_key);
26int menu_get_choice(struct menu *m, void **choice);
27int menu_item_add(struct menu *m, char *item_key, void *item_data);
28int menu_destroy(struct menu *m);
Heiko Schochere0611dd2012-01-16 21:13:20 +000029void menu_display_statusline(struct menu *m);
Jason Hobbsb69bf522011-08-23 11:06:49 +000030
Heiko Schocher317d6c52012-01-16 21:13:35 +000031#if defined(CONFIG_MENU_SHOW)
32int menu_show(int bootdelay);
33#endif
Jason Hobbsb69bf522011-08-23 11:06:49 +000034#endif /* __MENU_H__ */