diff options
| author | Jonathan Gordon <rockbox@jdgordon.info> | 2007-03-27 06:38:11 +0000 |
|---|---|---|
| committer | Jonathan Gordon <rockbox@jdgordon.info> | 2007-03-27 06:38:11 +0000 |
| commit | 91e726a1c1cec64bcae64480db731da57db93f10 (patch) | |
| tree | 3edcdc1f8aa1a82b3ca029f5500a25ef0b466635 | |
| parent | 40595bd57ac138e1f6240a619a29a76c51b11b35 (diff) | |
| download | rockbox-91e726a1c1cec64bcae64480db731da57db93f10.zip rockbox-91e726a1c1cec64bcae64480db731da57db93f10.tar.gz rockbox-91e726a1c1cec64bcae64480db731da57db93f10.tar.bz2 rockbox-91e726a1c1cec64bcae64480db731da57db93f10.tar.xz | |
Move all valid menu return codes to a single file (root_menu.h) so we don't need to rely on GO_TO_ROOT == MENU_ATTACHED_USB.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@12937 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/menu.c | 2 | ||||
| -rw-r--r-- | apps/menu.h | 7 | ||||
| -rw-r--r-- | apps/root_menu.c | 9 | ||||
| -rw-r--r-- | apps/root_menu.h | 9 |
4 files changed, 17 insertions, 10 deletions
diff --git a/apps/menu.c b/apps/menu.c index a519c1a..0ac0166 100644 --- a/apps/menu.c +++ b/apps/menu.c @@ -737,7 +737,7 @@ int menu_show(int m) switch (value) { case MENU_ATTACHED_USB: - /* case GO_TO_ROOT: */ + case GO_TO_ROOT: return MENU_ATTACHED_USB; case GO_TO_PREVIOUS: return MENU_SELECTED_EXIT; diff --git a/apps/menu.h b/apps/menu.h index aab2365..365af53 100644 --- a/apps/menu.h +++ b/apps/menu.h @@ -23,6 +23,7 @@ #include <stdbool.h> #include "icon.h" #include "icons.h" +#include "root_menu.h" /* needed for MENU_* return codes */ enum menu_item_type { @@ -193,12 +194,8 @@ int menu_init(const struct menu_item* mitems, int count, const char *button1, const char *button2, const char *button3); void menu_exit(int menu); - /* Returns below define, or number of selected menu item*/ + /* Returns MENU_* define from root_menu.h, or number of selected menu item*/ int menu_show(int m); -#define MENU_ATTACHED_USB -1 -#define MENU_SELECTED_EXIT -2 -#define MENU_EXIT_ALL -3 -#define MENU_RETURN_TO_WPS -4 bool menu_run(int menu); int menu_count(int menu); diff --git a/apps/root_menu.c b/apps/root_menu.c index 12b2544..674f20e 100644 --- a/apps/root_menu.c +++ b/apps/root_menu.c @@ -429,16 +429,17 @@ void root_menu(void) { switch (ret_val) { + case MENU_ATTACHED_USB: + case MENU_SELECTED_EXIT: + check_boot(); + /* fall through */ case GO_TO_ROOT: if (last_screen != GO_TO_ROOT) selected = get_selection(last_screen); ret_val = do_menu(&root_menu_, &selected); - /* As long as MENU_ATTACHED_USB == GO_TO_ROOT this works */ if (ret_val <= GO_TO_ROOT) { - if (ret_val == MENU_ATTACHED_USB) - check_boot(); - else if (ret_val == GO_TO_PREVIOUS) + if (ret_val == GO_TO_PREVIOUS) { ret_val = last_screen; last_screen = GO_TO_ROOT; diff --git a/apps/root_menu.h b/apps/root_menu.h index e913a67..4551b62 100644 --- a/apps/root_menu.h +++ b/apps/root_menu.h @@ -17,9 +17,16 @@ * ****************************************************************************/ #include "config.h" +#ifndef __ROOT_MENU_H__ +#define __ROOT_MENU_H__ + void root_menu(void); enum { + /* from old menu api, but still required*/ + MENU_ATTACHED_USB = -10, + MENU_SELECTED_EXIT = -9, + GO_TO_PREVIOUS_MUSIC = -4, GO_TO_PREVIOUS_BROWSER = -3, GO_TO_PREVIOUS = -2, @@ -42,3 +49,5 @@ enum { }; extern const struct menu_item_ex root_menu_; + +#endif /* __ROOT_MENU_H__ */ |