From ea664e06476cb572bab2eadbb9c060902a95a34a Mon Sep 17 00:00:00 2001 From: Jonathan Gordon Date: Sat, 3 May 2008 12:30:40 +0000 Subject: Viewported quickscreen (take 2 :D) (FS#8553) - no customization support - no top item - much better use of the screen - deprecates 20 odd lang strings (the QS can now use the regular lang strings and user font) git-svn-id: svn://svn.rockbox.org/rockbox/trunk@17315 a1c6a512-1295-4272-9138-f99709370657 --- apps/gui/quickscreen.h | 47 +++++++++++++++-------------------------------- 1 file changed, 15 insertions(+), 32 deletions(-) (limited to 'apps/gui/quickscreen.h') diff --git a/apps/gui/quickscreen.h b/apps/gui/quickscreen.h index 179d619883..47361bd472 100644 --- a/apps/gui/quickscreen.h +++ b/apps/gui/quickscreen.h @@ -27,45 +27,28 @@ #include "option_select.h" #include "screen_access.h" -struct gui_quickscreen; -/* - * Callback function called each time the quickscreen gets modified - * - qs : the quickscreen that did the modification - */ -typedef void (quickscreen_callback)(struct gui_quickscreen * qs); +enum QUICKSCREEN_ITEM { + QUICKSCREEN_LEFT = 0, + QUICKSCREEN_RIGHT, + QUICKSCREEN_BOTTOM, + QUICKSCREEN_ITEM_COUNT, +}; struct gui_quickscreen { - struct option_select *left_option; - struct option_select *bottom_option; - struct option_select *right_option; - quickscreen_callback *callback; + const struct settings_list *items[QUICKSCREEN_ITEM_COUNT]; + void (*callback)(struct gui_quickscreen * qs); /* called after a + item is changed */ }; -/* - * Initializes a quickscreen - * - qs : the quickscreen - * - left_option, bottom_option, right_option : a list of choices - * for each option - * - left_right_title : the 2nd line of the title - * on the left and on the right - * - callback : a callback function called each time the quickscreen - * gets modified - */ -void gui_quickscreen_init(struct gui_quickscreen * qs, - struct option_select *left_option, - struct option_select *bottom_option, - struct option_select *right_option, - quickscreen_callback *callback); +bool gui_syncquickscreen_run(struct gui_quickscreen * qs, int button_enter); + +#ifdef BUTTON_F3 +extern bool quick_screen_f3(int button_enter); +#endif +extern bool quick_screen_quick(int button_enter); -/* - * Runs the quickscreen on all available screens, if button_enter is released, quits - * - qs : the quickscreen - * - button_enter : button pressed at the same time the quickscreen is displayed - * returns : true if usb was connected, false otherwise - */ -bool gui_syncquickscreen_run(struct gui_quickscreen * qs, int button_enter); #endif /*_GUI_QUICK_SCREEN_H_*/ #endif /* HAVE_QUICKSCREEN */ -- cgit v1.2.3