aboutsummaryrefslogtreecommitdiffstats
path: root/screen_ui.h
diff options
context:
space:
mode:
authorTom Marshall <tdm@cyngn.com>2014-03-27 09:18:00 -0700
committerTom Marshall <tdm@cyngn.com>2015-11-25 15:35:22 -0800
commit8e614b89838dda1adff952c0bfbb02721bb5db2b (patch)
tree1424980ad0021219328b3779eee9bae9380d9bc6 /screen_ui.h
parenta48fd33655b2d95c250f033eaf88999cfb66e8ea (diff)
downloadbootable_recovery-8e614b89838dda1adff952c0bfbb02721bb5db2b.zip
bootable_recovery-8e614b89838dda1adff952c0bfbb02721bb5db2b.tar.gz
bootable_recovery-8e614b89838dda1adff952c0bfbb02721bb5db2b.tar.bz2
sr: Touch UI
Change-Id: I4ee87f3474aec0496c47bb561ddecc74e151cbbf
Diffstat (limited to 'screen_ui.h')
-rw-r--r--screen_ui.h23
1 files changed, 21 insertions, 2 deletions
diff --git a/screen_ui.h b/screen_ui.h
index e198503..fff0f0e 100644
--- a/screen_ui.h
+++ b/screen_ui.h
@@ -54,14 +54,17 @@ class ScreenRecoveryUI : public RecoveryUI {
void DialogShowInfo(const char* text);
void DialogShowError(const char* text);
+ void DialogShowErrorLog(const char* text);
int DialogShowing() const { return (dialog_text != NULL); }
- bool DialogDismissable() const { return (dialog_icon == ERROR); }
+ bool DialogDismissable() const { return (dialog_icon == D_ERROR); }
void DialogDismiss();
// menu display
+ virtual int MenuItemStart() const { return menu_item_start_; }
+ virtual int MenuItemHeight() const { return 3 * char_height_; }
void StartMenu(const char* const * headers, const char* const * items,
int initial_selection);
- int SelectMenu(int sel);
+ int SelectMenu(int sel, bool abs = false);
void EndMenu();
void KeyLongPress(int);
@@ -80,6 +83,7 @@ class ScreenRecoveryUI : public RecoveryUI {
bool rtl_locale;
pthread_mutex_t updateMutex;
+ GRSurface* headerIcon;
GRSurface* backgroundIcon[NR_ICONS];
GRSurface* backgroundText[NR_ICONS];
GRSurface** installation;
@@ -96,6 +100,7 @@ class ScreenRecoveryUI : public RecoveryUI {
// true when both graphics pages are the same (except for the progress bar).
bool pagesIdentical;
+ size_t log_text_cols_, log_text_rows_;
size_t text_cols_, text_rows_;
// Log text overlay, displayed when a magic key is pressed.
@@ -107,15 +112,21 @@ class ScreenRecoveryUI : public RecoveryUI {
Icon dialog_icon;
char *dialog_text;
+ bool dialog_show_log;
char** menu_;
const char* const* menu_headers_;
bool show_menu;
int menu_items, menu_sel;
+ int menu_show_start_;
+ int max_menu_rows_;
+
// An alternate text screen, swapped with 'text_' when we're viewing a log file.
char** file_viewer_text_;
+ int menu_item_start_;
+
pthread_t progress_thread_;
int animation_fps;
@@ -128,8 +139,16 @@ class ScreenRecoveryUI : public RecoveryUI {
bool rainbow;
int wrap_count;
+ int log_char_height_, log_char_width_;
+ int char_height_, char_width_;
+
+ int header_height_, header_width_;
+ int text_first_row_;
+
void draw_background_locked(Icon icon);
void draw_progress_locked();
+ int draw_header_icon();
+ void draw_menu_item(int textrow, const char *text, int selected);
void draw_dialog();
void draw_screen_locked();
void update_screen_locked();