From 99b2d774751041a5cfb5a48ac93292bb92acef98 Mon Sep 17 00:00:00 2001 From: Tao Bao Date: Fri, 23 Jun 2017 22:47:03 -0700 Subject: Add override specifier and member constness to RecoveryUI classes. Test: mmma bootable/recovery Change-Id: I66e328614423488a4027d7878f4569fbf3a3721e --- screen_ui.cpp | 14 ++++++------ screen_ui.h | 33 +++++++++++++++-------------- ui.h | 68 ++++++++++++++++++++++++++--------------------------------- wear_ui.cpp | 2 +- wear_ui.h | 7 +++--- 5 files changed, 58 insertions(+), 66 deletions(-) diff --git a/screen_ui.cpp b/screen_ui.cpp index 6172b631a..bcfaaa4be 100644 --- a/screen_ui.cpp +++ b/screen_ui.cpp @@ -82,14 +82,14 @@ ScreenRecoveryUI::ScreenRecoveryUI() max_stage(-1), updateMutex(PTHREAD_MUTEX_INITIALIZER) {} -GRSurface* ScreenRecoveryUI::GetCurrentFrame() { +GRSurface* ScreenRecoveryUI::GetCurrentFrame() const { if (currentIcon == INSTALLING_UPDATE || currentIcon == ERASING) { return intro_done ? loopFrames[current_frame] : introFrames[current_frame]; } return error_icon; } -GRSurface* ScreenRecoveryUI::GetCurrentText() { +GRSurface* ScreenRecoveryUI::GetCurrentText() const { switch (currentIcon) { case ERASING: return erasing_text; @@ -132,16 +132,16 @@ static constexpr int kLayouts[LAYOUT_MAX][DIMENSION_MAX] = { { 262, 52, 112, }, // LANDSCAPE_LARGE }; -int ScreenRecoveryUI::GetAnimationBaseline() { +int ScreenRecoveryUI::GetAnimationBaseline() const { return GetTextBaseline() - PixelsFromDp(kLayouts[layout_][ICON]) - gr_get_height(loopFrames[0]); } -int ScreenRecoveryUI::GetTextBaseline() { +int ScreenRecoveryUI::GetTextBaseline() const { return GetProgressBaseline() - PixelsFromDp(kLayouts[layout_][TEXT]) - gr_get_height(installing_text); } -int ScreenRecoveryUI::GetProgressBaseline() { +int ScreenRecoveryUI::GetProgressBaseline() const { return gr_fb_height() - PixelsFromDp(kLayouts[layout_][PROGRESS]) - gr_get_height(progressBarFill); } @@ -224,7 +224,7 @@ void ScreenRecoveryUI::draw_foreground_locked() { } } -void ScreenRecoveryUI::SetColor(UIElement e) { +void ScreenRecoveryUI::SetColor(UIElement e) const { switch (e) { case INFO: gr_color(249, 194, 0, 255); @@ -254,7 +254,7 @@ void ScreenRecoveryUI::SetColor(UIElement e) { } } -void ScreenRecoveryUI::DrawHorizontalRule(int* y) { +void ScreenRecoveryUI::DrawHorizontalRule(int* y) const { SetColor(MENU); *y += 4; gr_fill(0, *y, gr_fb_width(), *y + 2); diff --git a/screen_ui.h b/screen_ui.h index 2a3d8c30b..e8d3c3222 100644 --- a/screen_ui.h +++ b/screen_ui.h @@ -36,8 +36,8 @@ class ScreenRecoveryUI : public RecoveryUI { bool Init(const std::string& locale) override; // overall recovery state ("background image") - void SetBackground(Icon icon); - void SetSystemUpdateText(bool security_update); + void SetBackground(Icon icon) override; + void SetSystemUpdateText(bool security_update) override; // progress indicator void SetProgressType(ProgressType type) override; @@ -52,16 +52,17 @@ class ScreenRecoveryUI : public RecoveryUI { bool WasTextEverVisible() override; // printing messages - void Print(const char* fmt, ...) __printflike(2, 3); - void PrintOnScreenOnly(const char* fmt, ...) __printflike(2, 3); - void ShowFile(const char* filename); + void Print(const char* fmt, ...) override __printflike(2, 3); + void PrintOnScreenOnly(const char* fmt, ...) override __printflike(2, 3); + void ShowFile(const char* filename) override; // menu display - void StartMenu(const char* const* headers, const char* const* items, int initial_selection); - int SelectMenu(int sel); - void EndMenu(); + void StartMenu(const char* const* headers, const char* const* items, + int initial_selection) override; + int SelectMenu(int sel) override; + void EndMenu() override; - void KeyLongPress(int); + void KeyLongPress(int) override; void Redraw(); @@ -75,7 +76,7 @@ class ScreenRecoveryUI : public RecoveryUI { TEXT_FILL, INFO }; - void SetColor(UIElement e); + void SetColor(UIElement e) const; protected: // The margin that we don't want to use for showing texts (e.g. round screen, or screen with @@ -158,8 +159,8 @@ class ScreenRecoveryUI : public RecoveryUI { virtual void update_screen_locked(); virtual void update_progress_locked(); - GRSurface* GetCurrentFrame(); - GRSurface* GetCurrentText(); + GRSurface* GetCurrentFrame() const; + GRSurface* GetCurrentText() const; static void* ProgressThreadStartRoutine(void* data); void ProgressThreadLoop(); @@ -174,11 +175,11 @@ class ScreenRecoveryUI : public RecoveryUI { void LoadLocalizedBitmap(const char* filename, GRSurface** surface); int PixelsFromDp(int dp) const; - virtual int GetAnimationBaseline(); - virtual int GetProgressBaseline(); - virtual int GetTextBaseline(); + virtual int GetAnimationBaseline() const; + virtual int GetProgressBaseline() const; + virtual int GetTextBaseline() const; - virtual void DrawHorizontalRule(int* y); + virtual void DrawHorizontalRule(int* y) const; virtual void DrawHighlightBar(int x, int y, int width, int height) const; virtual void DrawTextLine(int x, int* y, const char* line, bool bold) const; void DrawTextLines(int x, int* y, const char* const* lines) const; diff --git a/ui.h b/ui.h index ef63e1d70..7eb04aec8 100644 --- a/ui.h +++ b/ui.h @@ -30,14 +30,14 @@ class RecoveryUI { virtual ~RecoveryUI() {} - // Initialize the object; called before anything else. UI texts will be - // initialized according to the given locale. Returns true on success. + // Initializes the object; called before anything else. UI texts will be initialized according to + // the given locale. Returns true on success. virtual bool Init(const std::string& locale); - // Show a stage indicator. Call immediately after Init(). + // Shows a stage indicator. Called immediately after Init(). virtual void SetStage(int current, int max) = 0; - // Set the overall recovery state ("background image"). + // Sets the overall recovery state ("background image"). enum Icon { NONE, INSTALLING_UPDATE, ERASING, NO_COMMAND, ERROR }; virtual void SetBackground(Icon icon) = 0; virtual void SetSystemUpdateText(bool security_update) = 0; @@ -46,13 +46,13 @@ class RecoveryUI { enum ProgressType { EMPTY, INDETERMINATE, DETERMINATE }; virtual void SetProgressType(ProgressType determinate) = 0; - // Show a progress bar and define the scope of the next operation: + // Shows a progress bar and define the scope of the next operation: // portion - fraction of the progress bar the next operation will use // seconds - expected time interval (progress bar moves at this minimum rate) virtual void ShowProgress(float portion, float seconds) = 0; - // Set progress bar position (0.0 - 1.0 within the scope defined - // by the last call to ShowProgress). + // Sets progress bar position (0.0 - 1.0 within the scope defined by the last call to + // ShowProgress). virtual void SetProgress(float fraction) = 0; // --- text log --- @@ -63,9 +63,8 @@ class RecoveryUI { virtual bool WasTextEverVisible() = 0; - // Write a message to the on-screen log (shown if the user has - // toggled on the text display). Print() will also dump the message - // to stdout / log file, while PrintOnScreenOnly() not. + // Writes a message to the on-screen log (shown if the user has toggled on the text display). + // Print() will also dump the message to stdout / log file, while PrintOnScreenOnly() not. virtual void Print(const char* fmt, ...) __printflike(2, 3) = 0; virtual void PrintOnScreenOnly(const char* fmt, ...) __printflike(2, 3) = 0; @@ -73,54 +72,48 @@ class RecoveryUI { // --- key handling --- - // Wait for a key and return it. May return -1 after timeout. + // Waits for a key and return it. May return -1 after timeout. virtual int WaitKey(); virtual bool IsKeyPressed(int key); virtual bool IsLongPress(); - // Returns true if you have the volume up/down and power trio typical - // of phones and tablets, false otherwise. + // Returns true if you have the volume up/down and power trio typical of phones and tablets, false + // otherwise. virtual bool HasThreeButtons(); - // Erase any queued-up keys. + // Erases any queued-up keys. virtual void FlushKeys(); - // Called on each key press, even while operations are in progress. - // Return value indicates whether an immediate operation should be - // triggered (toggling the display, rebooting the device), or if + // Called on each key press, even while operations are in progress. Return value indicates whether + // an immediate operation should be triggered (toggling the display, rebooting the device), or if // the key should be enqueued for use by the main thread. enum KeyAction { ENQUEUE, TOGGLE, REBOOT, IGNORE }; virtual KeyAction CheckKey(int key, bool is_long_press); - // Called when a key is held down long enough to have been a - // long-press (but before the key is released). This means that - // if the key is eventually registered (released without any other - // keys being pressed in the meantime), CheckKey will be called with - // 'is_long_press' true. + // Called when a key is held down long enough to have been a long-press (but before the key is + // released). This means that if the key is eventually registered (released without any other keys + // being pressed in the meantime), CheckKey will be called with 'is_long_press' true. virtual void KeyLongPress(int key); - // Normally in recovery there's a key sequence that triggers - // immediate reboot of the device, regardless of what recovery is - // doing (with the default CheckKey implementation, it's pressing - // the power button 7 times in row). Call this to enable or - // disable that feature. It is enabled by default. + // Normally in recovery there's a key sequence that triggers immediate reboot of the device, + // regardless of what recovery is doing (with the default CheckKey implementation, it's pressing + // the power button 7 times in row). Call this to enable or disable that feature. It is enabled by + // default. virtual void SetEnableReboot(bool enabled); // --- menu display --- - // Display some header text followed by a menu of items, which appears - // at the top of the screen (in place of any scrolling ui_print() - // output, if necessary). + // Display some header text followed by a menu of items, which appears at the top of the screen + // (in place of any scrolling ui_print() output, if necessary). virtual void StartMenu(const char* const* headers, const char* const* items, int initial_selection) = 0; - // Set the menu highlight to the given index, wrapping if necessary. - // Returns the actual item selected. + // Sets the menu highlight to the given index, wrapping if necessary. Returns the actual item + // selected. virtual int SelectMenu(int sel) = 0; - // End menu mode, resetting the text overlay so that ui_print() - // statements will be displayed. + // Ends menu mode, resetting the text overlay so that ui_print() statements will be displayed. virtual void EndMenu() = 0; protected: @@ -130,10 +123,9 @@ class RecoveryUI { std::string locale_; bool rtl_locale_; - // The normal and dimmed brightness percentages (default: 50 and 25, which means 50% and 25% - // of the max_brightness). Because the absolute values may vary across devices. These two - // values can be configured via subclassing. Setting brightness_normal_ to 0 to disable - // screensaver. + // The normal and dimmed brightness percentages (default: 50 and 25, which means 50% and 25% of + // the max_brightness). Because the absolute values may vary across devices. These two values can + // be configured via subclassing. Setting brightness_normal_ to 0 to disable screensaver. unsigned int brightness_normal_; unsigned int brightness_dimmed_; diff --git a/wear_ui.cpp b/wear_ui.cpp index adc316dfc..640f04a79 100644 --- a/wear_ui.cpp +++ b/wear_ui.cpp @@ -61,7 +61,7 @@ WearRecoveryUI::WearRecoveryUI() self = this; } -int WearRecoveryUI::GetProgressBaseline() { +int WearRecoveryUI::GetProgressBaseline() const { return progress_bar_y; } diff --git a/wear_ui.h b/wear_ui.h index e228f9fb5..e108d4d7e 100644 --- a/wear_ui.h +++ b/wear_ui.h @@ -47,12 +47,11 @@ class WearRecoveryUI : public ScreenRecoveryUI { // outer of window int outer_height, outer_width; - // Unusable rows when displaying the recovery menu, including the lines - // for headers (Android Recovery, build id and etc) and the bottom lines - // that may otherwise go out of the screen. + // Unusable rows when displaying the recovery menu, including the lines for headers (Android + // Recovery, build id and etc) and the bottom lines that may otherwise go out of the screen. int menu_unusable_rows; - int GetProgressBaseline() override; + int GetProgressBaseline() const override; bool InitTextParams() override; -- cgit v1.2.3