Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Index: apps/plugins/random_folder_advance_config.c
- ===================================================================
- --- apps/plugins/random_folder_advance_config.c (Revision 21603)
- +++ apps/plugins/random_folder_advance_config.c (Arbeitskopie)
- @@ -20,6 +20,7 @@
- ****************************************************************************/
- #include "plugin.h"
- #include "file.h"
- +#include "lib/pluginlib_exit.h"
- PLUGIN_HEADER
- @@ -287,7 +288,7 @@
- int edit_list(void)
- {
- struct gui_synclist lists;
- - bool exit = false;
- + bool quit = false;
- int button,i;
- int selection, ret = 0;
- @@ -306,7 +307,7 @@
- rb->gui_synclist_limit_scroll(&lists,true);
- rb->gui_synclist_select_item(&lists, 0);
- - while (!exit)
- + while (!quit)
- {
- rb->gui_synclist_draw(&lists);
- button = rb->get_action(CONTEXT_LIST,TIMEOUT_BLOCK);
- @@ -359,7 +360,7 @@
- case 0:
- save_list();
- case 1:
- - exit = true;
- + quit = true;
- ret = -2;
- }
- }
- @@ -537,7 +538,7 @@
- int main_menu(void)
- {
- - bool exit = false;
- + bool quit = false;
- MENUITEM_STRINGLIST(menu, "Main Menu", NULL,
- "Generate Folder List",
- @@ -567,7 +568,7 @@
- rb->cpu_boost(true);
- #endif
- if (edit_list() < 0)
- - exit = true;
- + quit = true;
- #ifdef HAVE_ADJUSTABLE_CPU_FREQ
- rb->cpu_boost(false);
- #endif
- @@ -603,21 +604,26 @@
- rb->backlight_on();
- break;
- case 4:
- - start_shuffled_play();
- - exit=true;
- + {
- + int ret = start_shuffled_play();
- + if (!ret)
- + exit(PLUGIN_ERROR);
- + else
- + exit(PLUGIN_GOTO_WPS);
- break;
- + }
- case 5:
- return 1;
- }
- - return exit?1:0;
- + return quit?1:0;
- }
- enum plugin_status plugin_start(const void* parameter)
- {
- + PLUGINLIB_EXIT_INIT;
- (void)parameter;
- abort = false;
- -
- while (!main_menu())
- ;
- return PLUGIN_OK;
- Index: apps/plugins/lib/pluginlib_exit.h
- ===================================================================
- --- apps/plugins/lib/pluginlib_exit.h (Revision 21603)
- +++ apps/plugins/lib/pluginlib_exit.h (Arbeitskopie)
- @@ -30,18 +30,21 @@
- #endif
- /* PLUGINLIB_EXIT_INIT needs to be placed as the first line in plugin_start */
- -#define PLUGINLIB_EXIT_INIT switch(setjmp(__exit_env)) \
- - { \
- - case 1: \
- - return PLUGIN_OK; \
- - case 2: \
- - return PLUGIN_ERROR; \
- - case 0: \
- - default: \
- - break; \
- +#define PLUGINLIB_EXIT_INIT switch(setjmp(__exit_env)) \
- + { \
- + case -1: \
- + return PLUGIN_ERROR; \
- + case PLUGIN_OK+1: \
- + return PLUGIN_OK; \
- + case PLUGIN_GOTO_WPS+1: \
- + return PLUGIN_GOTO_WPS; \
- + case PLUGIN_USB_CONNECTED+1: \
- + return PLUGIN_USB_CONNECTED;\
- + default: \
- + break; \
- }
- extern jmp_buf __exit_env;
- -#define exit(status) longjmp(__exit_env, status != 0 ? 2 : 1)
- +#define exit(status) longjmp(__exit_env, (status < 0 || status >= PLUGIN_MAX_RETURNS) ? -1:status+1)
- #endif /* __PLUGINLIB_EXIT_H__ */
- Index: apps/plugins/properties.c
- ===================================================================
- --- apps/plugins/properties.c (Revision 21603)
- +++ apps/plugins/properties.c (Arbeitskopie)
- @@ -276,6 +276,7 @@
- int button;
- bool quit = false;
- char file[MAX_PATH];
- + int ret = PLUGIN_OK;
- rb->strcpy(file, (const char *) parameter);
- /* determine if it's a file or a directory */
- @@ -332,11 +333,13 @@
- while(!quit)
- {
- - button = rb->get_action(CONTEXT_LIST,TIMEOUT_BLOCK);
- + button = rb->get_action(CONTEXT_TREE,TIMEOUT_BLOCK);
- if (rb->gui_synclist_do_button(&properties_lists,&button,LIST_WRAP_ON))
- continue;
- switch(button)
- {
- + case ACTION_TREE_WPS:
- + return PLUGIN_GOTO_WPS;
- case ACTION_STD_CANCEL:
- quit = true;
- break;
- @@ -346,5 +349,5 @@
- }
- }
- - return PLUGIN_OK;
- + return ret;
- }
- Index: apps/plugins/pictureflow/pictureflow.c
- ===================================================================
- --- apps/plugins/pictureflow/pictureflow.c (Revision 21603)
- +++ apps/plugins/pictureflow/pictureflow.c (Arbeitskopie)
- @@ -54,6 +54,12 @@
- #define PF_CONTEXT ACTION_STD_CONTEXT
- #define PF_BACK ACTION_STD_CANCEL
- #define PF_MENU ACTION_STD_MENU
- +#define PF_WPS ACTION_TREE_WPS
- +
- +#if PF_PLAYBACK_CAPABLE
- +#define PF_STOP ACTION_TREE_STOP
- +#endif
- +
- #define PF_QUIT (LAST_ACTION_PLACEHOLDER + 1)
- #if !defined(HAVE_SCROLLWHEEL)
- @@ -122,8 +128,6 @@
- {PF_BACK, BUTTON_POWER|BUTTON_REL, BUTTON_POWER},
- {ACTION_NONE, BUTTON_POWER, BUTTON_NONE},
- #endif
- -#elif CONFIG_KEYPAD == SANSA_E200_PAD
- - {PF_QUIT, BUTTON_POWER, BUTTON_NONE},
- #elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD
- {PF_QUIT, BUTTON_EQ, BUTTON_NONE},
- #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \
- @@ -2008,6 +2012,10 @@
- void cleanup(void *parameter)
- {
- (void) parameter;
- +#ifdef HAVE_ADJUSTABLE_CPU_FREQ
- + rb->cpu_boost(false);
- +#endif
- + end_pf_thread();
- /* Turn on backlight timeout (revert to settings) */
- backlight_use_settings(); /* backlight control in lib/helper.c */
- @@ -2136,6 +2144,7 @@
- Show the main menu
- */
- enum {
- + PF_GOTO_WPS,
- #if PF_PLAYBACK_CAPABLE
- PF_MENU_PLAYBACK_CONTROL,
- #endif
- @@ -2154,12 +2163,15 @@
- #endif
- MENUITEM_STRINGLIST(main_menu,"PictureFlow Main Menu",NULL,
- + "Go to WPS",
- #if PF_PLAYBACK_CAPABLE
- "Playback Control",
- #endif
- "Settings", "Return", "Quit");
- while (1) {
- switch (rb->do_menu(&main_menu,&selection, NULL, false)) {
- + case PF_GOTO_WPS: /* WPS */
- + return -2;
- #if PF_PLAYBACK_CAPABLE
- case PF_MENU_PLAYBACK_CONTROL: /* Playback Control */
- playback_control(NULL);
- @@ -2169,10 +2181,8 @@
- result = settings_menu();
- if ( result != 0 ) return result;
- break;
- -
- case PF_MENU_RETURN:
- return 0;
- -
- case PF_MENU_QUIT:
- return -1;
- @@ -2400,6 +2410,16 @@
- old_shuffle = shuffle;
- }
- #endif
- +/*
- +int tracklist_context(void)
- +{
- + char* filename = get_track_filename(selected_track);
- + int attr = 0x300;
- + int context = CONTEXT_ID3DB;
- + return rb->onplay(filename, attr, context);
- +}
- +*/
- +
- /**
- Draw the current album name
- */
- @@ -2656,7 +2676,13 @@
- switch (button) {
- case PF_QUIT:
- return PLUGIN_OK;
- -
- + case PF_WPS:
- + return PLUGIN_GOTO_WPS;
- +#if PF_PLAYBACK_CAPABLE
- + case PF_STOP:
- + rb->audio_stop();
- + break;
- +#endif
- case PF_BACK:
- if ( pf_state == pf_show_tracks )
- {
- @@ -2668,12 +2694,12 @@
- if (pf_state == pf_idle || pf_state == pf_scrolling)
- return PLUGIN_OK;
- break;
- -
- case PF_MENU:
- #ifdef USEGSLIB
- grey_show(false);
- #endif
- ret = main_menu();
- + if ( ret == -2 ) return PLUGIN_GOTO_WPS;
- if ( ret == -1 ) return PLUGIN_OK;
- if ( ret != 0 ) return ret;
- #ifdef USEGSLIB
- @@ -2708,7 +2734,12 @@
- #endif
- }
- break;
- -
- + case PF_CONTEXT:
- +/*
- + if ( pf_state == pf_show_tracks)
- + tracklist_context();
- +*/
- + break;
- default:
- if (rb->default_event_handler_ex(button, cleanup, NULL)
- == SYS_USB_CONNECTED)
- @@ -2747,9 +2778,6 @@
- #endif
- #endif
- ret = main();
- -#ifdef HAVE_ADJUSTABLE_CPU_FREQ
- - rb->cpu_boost(false);
- -#endif
- if ( ret == PLUGIN_OK ) {
- if (configfile_save(CONFIG_FILE, config, CONFIG_NUM_ITEMS,
- CONFIG_VERSION))
- @@ -2759,7 +2787,6 @@
- }
- }
- - end_pf_thread();
- cleanup(NULL);
- return ret;
- }
- Index: apps/onplay.c
- ===================================================================
- --- apps/onplay.c (Revision 21603)
- +++ apps/onplay.c (Arbeitskopie)
- @@ -79,6 +79,7 @@
- static const struct menu_callback_with_desc name##__ = {callback,str,icon};\
- static const struct menu_item_ex name = \
- {MT_MENU|MENU_HAS_DESC|MENU_EXITAFTERTHISMENU| \
- + MENU_ALLOW_AUDIO_ACTIONS| \
- MENU_ITEM_COUNT(sizeof( name##_)/sizeof(*name##_)), \
- { (void*)name##_},{.callback_and_desc = & name##__}};
- @@ -135,12 +136,18 @@
- return action;
- }
- -static bool list_viewers(void)
- +static int list_viewers(void)
- {
- int ret = filetype_list_viewers(selected_file);
- - if (ret == PLUGIN_USB_CONNECTED)
- + if (ret == PLUGIN_USB_CONNECTED
- + ||ret == SYS_USB_CONNECTED)
- onplay_result = ONPLAY_RELOAD_DIR;
- - return false;
- + else if (ret == ACTION_TREE_WPS)
- + {
- + onplay_result = ONPLAY_START_PLAY;
- + return GO_TO_WPS;
- + }
- + return 0;
- }
- static bool shuffle_playlist(void)
- @@ -1017,7 +1024,7 @@
- properties, NULL, clipboard_callback, Icon_NOICON);
- MENUITEM_FUNCTION(create_dir_item, 0, ID2P(LANG_CREATE_DIR),
- create_dir, NULL, clipboard_callback, Icon_NOICON);
- -MENUITEM_FUNCTION(list_viewers_item, 0, ID2P(LANG_ONPLAY_OPEN_WITH),
- +MENUITEM_FUNCTION(list_viewers_item, MENU_FUNC_CHECK_RETVAL, ID2P(LANG_ONPLAY_OPEN_WITH),
- list_viewers, NULL, clipboard_callback, Icon_NOICON);
- #if LCD_DEPTH > 1
- MENUITEM_FUNCTION(set_backdrop_item, 0, ID2P(LANG_SET_AS_BACKDROP),
- @@ -1155,18 +1162,16 @@
- #endif
- &add_to_faves_item,
- );
- +
- static int onplaymenu_callback(int action,const struct menu_item_ex *this_item)
- {
- (void)this_item;
- switch (action)
- {
- case ACTION_TREE_STOP:
- + list_stop_handler();
- if (this_item == &wps_onplay_menu)
- - {
- - list_stop_handler();
- return ACTION_STD_CANCEL;
- - }
- - break;
- case ACTION_EXIT_MENUITEM:
- return ACTION_EXIT_AFTER_THIS_MENUITEM;
- break;
- @@ -1187,6 +1192,7 @@
- switch (do_menu(menu, NULL, NULL, false))
- {
- case GO_TO_WPS:
- + case GO_TO_PREVIOUS_MUSIC:
- return ONPLAY_START_PLAY;
- case GO_TO_ROOT:
- case GO_TO_MAINMENU:
- Index: apps/gui/list.c
- ===================================================================
- --- apps/gui/list.c (Revision 21603)
- +++ apps/gui/list.c (Arbeitskopie)
- @@ -838,8 +838,9 @@
- return simplelist_text[item];
- }
- -bool simplelist_show_list(struct simplelist_info *info)
- +int simplelist_show_list(struct simplelist_info *info)
- {
- + int retval = 0;
- struct gui_synclist lists;
- int action, old_line_count = simplelist_line_count;
- int oldbars = viewportmanager_set_statusbar(VP_SB_ALLSCREENS);
- @@ -880,7 +881,7 @@
- while(1)
- {
- - list_do_action(CONTEXT_STD, info->timeout,
- + list_do_action(CONTEXT_TREE, info->timeout,
- &lists, &action, wrap);
- /* We must yield in this case or no other thread can run */
- @@ -897,7 +898,6 @@
- info->selection = gui_synclist_get_sel_pos(&lists);
- break;
- }
- -
- if (info->get_name == NULL)
- gui_synclist_set_nb_items(&lists,
- simplelist_line_count*info->selection_size);
- @@ -919,11 +919,14 @@
- old_line_count = simplelist_line_count;
- }
- else if(default_event_handler(action) == SYS_USB_CONNECTED)
- - return true;
- + return SYS_USB_CONNECTED;
- + else if(action == ACTION_TREE_WPS ||
- + action == ACTION_TREE_STOP)
- + return action;
- }
- talk_shutup();
- viewportmanager_set_statusbar(oldbars);
- - return false;
- + return retval;
- }
- void simplelist_info_init(struct simplelist_info *info, char* title,
- Index: apps/gui/list.h
- ===================================================================
- --- apps/gui/list.h (Revision 21603)
- +++ apps/gui/list.h (Arbeitskopie)
- @@ -255,6 +255,6 @@
- /* show a list.
- if list->action_callback != NULL it is called with the action ACTION_REDRAW
- before the list is dislplayed for the first time */
- -bool simplelist_show_list(struct simplelist_info *info);
- +int simplelist_show_list(struct simplelist_info *info);
- #endif /* _GUI_LIST_H_ */
- Index: apps/menu.c
- ===================================================================
- --- apps/menu.c (Revision 21603)
- +++ apps/menu.c (Arbeitskopie)
- @@ -428,12 +428,14 @@
- done = true;
- }
- #endif
- - else if (action == ACTION_TREE_WPS)
- + else if (menu->flags & MENU_ALLOW_AUDIO_ACTIONS
- + && action == ACTION_TREE_WPS)
- {
- ret = GO_TO_PREVIOUS_MUSIC;
- done = true;
- }
- - else if (action == ACTION_TREE_STOP)
- + else if (menu->flags & MENU_ALLOW_AUDIO_ACTIONS
- + && action == ACTION_TREE_STOP)
- {
- redraw_lists = list_stop_handler();
- }
- Index: apps/menus/main_menu.c
- ===================================================================
- --- apps/menus/main_menu.c (Revision 21603)
- +++ apps/menus/main_menu.c (Arbeitskopie)
- @@ -394,10 +394,12 @@
- }
- return action;
- }
- -static bool show_info(void)
- +
- +static int show_info(void* ignored)
- {
- struct info_data data = {.new_data = true };
- struct simplelist_info info;
- + (void)ignored;
- simplelist_info_init(&info, str(LANG_ROCKBOX_INFO), INFO_COUNT, (void*)&data);
- info.hide_selection = !global_settings.talk_menu;
- if (info.hide_selection)
- @@ -409,7 +411,7 @@
- return simplelist_show_list(&info);
- }
- MENUITEM_FUNCTION(show_info_item, 0, ID2P(LANG_ROCKBOX_INFO),
- - (menu_function)show_info, NULL, NULL, Icon_NOICON);
- + show_info, NULL, NULL, Icon_NOICON);
- /* sleep Menu */
- @@ -441,6 +443,18 @@
- &sleep_timer_set, -5, 300, 0, sleep_timer_formatter);
- }
- +static int debug_callback(int action, const struct menu_item_ex *this_item)
- +{
- + switch(action)
- + {
- + case ACTION_TREE_WPS:
- + panicf("LOL");
- + return GO_TO_WPS;
- + default:
- + break;
- + }
- + return action;
- +}
- #if CONFIG_RTC
- int time_screen(void* ignored);
- @@ -456,10 +470,10 @@
- (menu_function)show_credits, NULL, NULL, Icon_NOICON);
- MENUITEM_FUNCTION(show_runtime_item, 0, ID2P(LANG_RUNNING_TIME),
- (menu_function)view_runtime, NULL, NULL, Icon_NOICON);
- -MENUITEM_FUNCTION(debug_menu_item, 0, ID2P(LANG_DEBUG),
- - (menu_function)debug_menu, NULL, NULL, Icon_NOICON);
- +MENUITEM_FUNCTION(debug_menu_item, MENU_FUNC_CHECK_RETVAL, ID2P(LANG_DEBUG),
- + debug_menu, NULL, NULL, Icon_NOICON);
- -MAKE_MENU(info_menu, ID2P(LANG_SYSTEM), 0, Icon_Questionmark,
- +MAKE_MENU(info_menu, ID2P(LANG_SYSTEM), debug_callback, Icon_Questionmark,
- #if CONFIG_RTC
- &timedate_item,
- #endif
- Index: apps/menu.h
- ===================================================================
- --- apps/menu.h (Revision 21603)
- +++ apps/menu.h (Arbeitskopie)
- @@ -61,6 +61,7 @@
- /* Flags for MT_FUNCTION_CALL */
- #define MENU_FUNC_USEPARAM 0x80
- #define MENU_FUNC_CHECK_RETVAL 0x100
- +#define MENU_ALLOW_AUDIO_ACTIONS 0x200
- #define MENU_COUNT_MASK 0xFFF
- #define MENU_COUNT_SHIFT 12
- Index: apps/filetree.c
- ===================================================================
- --- apps/filetree.c (Revision 21603)
- +++ apps/filetree.c (Arbeitskopie)
- @@ -552,22 +552,31 @@
- /* plugin file */
- case FILE_ATTR_ROCK:
- + {
- + int ret;
- if (global_settings.party_mode && audio_status()) {
- splash(HZ, ID2P(LANG_PARTY_MODE));
- break;
- }
- -
- - if (plugin_load(buf,NULL) == PLUGIN_USB_CONNECTED)
- + ret = plugin_load(buf,NULL);
- + switch (ret)
- {
- - if(*c->dirfilter > NUM_FILTER_MODES)
- - /* leave sub-browsers after usb, doing
- - otherwise might be confusing to the user */
- - exit_func = true;
- - else
- - reload_dir = true;
- + case PLUGIN_USB_CONNECTED:
- + break;
- + case PLUGIN_GOTO_WPS:
- + play = true;
- + break;
- + default:
- + if(*c->dirfilter > NUM_FILTER_MODES)
- + /* leave sub-browsers after usb, doing
- + otherwise might be confusing to the user */
- + exit_func = true;
- + else
- + reload_dir = true;
- + break;
- }
- break;
- -
- + }
- case FILE_ATTR_CUE:
- display_cuesheet_content(buf);
- break;
- @@ -584,8 +593,11 @@
- plugin = filetype_get_plugin(file);
- if (plugin)
- {
- - if (plugin_load(plugin,buf) == PLUGIN_USB_CONNECTED)
- + int ret = plugin_load(plugin,buf);
- + if (ret == PLUGIN_USB_CONNECTED)
- reload_dir = true;
- + else if (ret == PLUGIN_GOTO_WPS)
- + play = true;
- }
- break;
- }
- Index: apps/plugin.c
- ===================================================================
- --- apps/plugin.c (Revision 21603)
- +++ apps/plugin.c (Arbeitskopie)
- @@ -658,6 +658,7 @@
- appsversion,
- /* new stuff at the end, sort into place next time
- the API gets incompatible */
- + onplay,
- playlist_insert_directory,
- };
- @@ -804,8 +805,6 @@
- #endif /* LCD_DEPTH */
- #endif /* HAVE_LCD_BITMAP */
- - lcd_clear_display();
- - lcd_update();
- #ifdef HAVE_REMOTE_LCD
- #if LCD_REMOTE_DEPTH > 1
- @@ -814,12 +813,16 @@
- #else
- lcd_remote_set_drawmode(DRMODE_SOLID);
- #endif
- - lcd_remote_clear_display();
- + if (rc != PLUGIN_GOTO_WPS)
- + {
- + lcd_clear_display();
- + lcd_update();
- + lcd_remote_clear_display();
- + lcd_remote_update();
- + }
- - lcd_remote_update();
- -
- #endif
- viewportmanager_set_statusbar(oldbars);
- if (pfn_tsr_exit == NULL)
- @@ -827,19 +830,10 @@
- sim_plugin_close(pd);
- - switch (rc) {
- - case PLUGIN_OK:
- - break;
- + if (rc == PLUGIN_ERROR)
- + splash(HZ*2, str(LANG_PLUGIN_ERROR));
- - case PLUGIN_USB_CONNECTED:
- - return PLUGIN_USB_CONNECTED;
- -
- - default:
- - splash(HZ*2, str(LANG_PLUGIN_ERROR));
- - break;
- - }
- -
- - return PLUGIN_OK;
- + return rc;
- }
- /* Returns a pointer to the portion of the plugin buffer that is not already
- Index: apps/plugin.h
- ===================================================================
- --- apps/plugin.h (Revision 21603)
- +++ apps/plugin.h (Arbeitskopie)
- @@ -93,6 +93,7 @@
- #include "ata_idle_notify.h"
- #include "settings_list.h"
- #include "timefuncs.h"
- +#include "onplay.h"
- #ifdef HAVE_ALBUMART
- #include "albumart.h"
- @@ -139,6 +140,8 @@
- enum plugin_status {
- PLUGIN_OK = 0,
- PLUGIN_USB_CONNECTED,
- + PLUGIN_GOTO_WPS,
- + PLUGIN_MAX_RETURNS,
- PLUGIN_ERROR = -1,
- };
- @@ -351,7 +354,7 @@
- const struct text_message * no_message);
- void (*simplelist_info_init)(struct simplelist_info *info, char* title,
- int count, void* data);
- - bool (*simplelist_show_list)(struct simplelist_info *info);
- + int (*simplelist_show_list)(struct simplelist_info *info);
- /* button */
- long (*button_get)(bool block);
- @@ -821,6 +824,7 @@
- const char *appsversion;
- /* new stuff at the end, sort into place next time
- the API gets incompatible */
- + int (*onplay)(char* file, int attr, int from);
- int (*playlist_insert_directory)(struct playlist_info* playlist,
- const char *dirname, int position, bool queue,
- bool recurse);
- Index: apps/root_menu.c
- ===================================================================
- --- apps/root_menu.c (Revision 21603)
- +++ apps/root_menu.c (Arbeitskopie)
- @@ -414,6 +414,8 @@
- {
- switch (action)
- {
- + case ACTION_TREE_WPS:
- + return GO_TO_WPS;
- case ACTION_TREE_STOP:
- return ACTION_REDRAW;
- case ACTION_REQUEST_MENUITEM:
- @@ -434,6 +436,7 @@
- }
- return action;
- }
- +
- static int get_selection(int last_screen)
- {
- unsigned int i;
- Index: apps/debug_menu.c
- ===================================================================
- --- apps/debug_menu.c (Revision 21603)
- +++ apps/debug_menu.c (Arbeitskopie)
- @@ -2853,8 +2853,9 @@
- (void)data; (void)buffer; (void)buffer_len;
- return menuitems[item].desc;
- }
- -bool debug_menu(void)
- +int debug_menu(void* ignored)
- {
- + (void)ignored;
- struct simplelist_info info;
- simplelist_info_init(&info, "Debug Menu", ARRAYLEN(menuitems), NULL);
- Index: apps/debug_menu.h
- ===================================================================
- --- apps/debug_menu.h (Revision 21603)
- +++ apps/debug_menu.h (Arbeitskopie)
- @@ -21,7 +21,7 @@
- #ifndef _DEBUG_MENU_H
- #define _DEBUG_MENU_H
- -bool debug_menu(void);
- +int debug_menu(void* ignored);
- #ifndef SIMULATOR
- extern bool dbg_ports(void);
- Index: apps/tagtree.c
- ===================================================================
- --- apps/tagtree.c (Revision 21603)
- +++ apps/tagtree.c (Arbeitskopie)
- @@ -54,6 +54,11 @@
- #include "storage.h"
- #include "dir_uncached.h"
- +#ifdef HAVE_LCD_BITMAP
- +#include "plugin.h" /* to plugin_load() pictureflow */
- +#endif
- +
- +
- #define FILE_SEARCH_INSTRUCTIONS ROCKBOX_DIR "/tagnavi.config"
- static int tagtree_play_folder(struct tree_context* c);
- @@ -65,6 +70,9 @@
- NAVIBROWSE,
- ALLSUBENTRIES,
- PLAYTRACK,
- +#ifdef HAVE_LCD_BITMAP
- + PICTUREFLOW,
- +#endif
- };
- static const struct id3_to_search_mapping {
- @@ -1166,6 +1174,16 @@
- dptr++;
- current_entry_count++;
- }
- +#ifdef HAVE_LCD_BITMAP
- + if (offset <= 2 && tag == tag_album)
- + {
- + dptr->newtable = PICTUREFLOW;
- + dptr->name = "<By Covers>";
- + dptr++;
- + current_entry_count++;
- + special_entry_count++;
- + }
- +#endif
- special_entry_count+=2;
- }
- @@ -1366,7 +1384,9 @@
- case ROOT:
- count = load_root(c);
- break;
- -
- +#ifdef HAVE_LCD_BITMAP
- + case PICTUREFLOW:
- +#endif
- case ALLSUBENTRIES:
- case NAVIBROWSE:
- logf("navibrowse...");
- @@ -1416,6 +1436,23 @@
- }
- newextra = dptr->newtable;
- +#ifdef HAVE_LCD_BITMAP
- + /* Start pictureflow, and return as we're leaving the db browser
- + * and also we still want to be in the album node after exiting
- + */
- + if (newextra == PICTUREFLOW)
- + {
- + int retval = plugin_load(PLUGIN_DEMOS_DIR "/pictureflow.rock", NULL);
- + switch(retval)
- + {
- + case PLUGIN_GOTO_WPS:
- + return 2;
- + default:
- + return 0;
- + }
- + }
- +#endif
- +
- if (c->dirlevel >= MAX_DIR_LEVELS)
- return 0;
Add Comment
Please, Sign In to add comment