diff options
| author | JF <jf@codingfield.com> | 2020-02-16 17:32:36 (GMT) |
|---|---|---|
| committer | JF <jf@codingfield.com> | 2020-02-16 17:32:36 (GMT) |
| commit | 167a0ffc873a2442af43d0347efd00f84932b8cc (patch) | |
| tree | 2e131e3c97b1c67e0dff6bab516a1fe5958e1741 /src/DisplayApp/Screens/Screen.h | |
| parent | 52539a5ff1b6f52c65b032ef1668d43d4df2dc24 (diff) | |
Add touch panel port to lvgl.
PoC of user interaction with 3 screen (clock, menu and app).
Diffstat (limited to 'src/DisplayApp/Screens/Screen.h')
| -rw-r--r-- | src/DisplayApp/Screens/Screen.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/DisplayApp/Screens/Screen.h b/src/DisplayApp/Screens/Screen.h index 5e2fa43..57b8ea2 100644 --- a/src/DisplayApp/Screens/Screen.h +++ b/src/DisplayApp/Screens/Screen.h @@ -4,14 +4,21 @@ namespace Pinetime { namespace Applications { + class DisplayApp; namespace Screens { class Screen { public: - Screen(Components::Gfx& gfx) : gfx{gfx} {} + enum class NextScreen {None, Clock, Menu, App}; + Screen(DisplayApp* app, Components::Gfx& gfx) : app{app}, gfx{gfx} {} + virtual ~Screen() = default; virtual void Refresh(bool fullRefresh) = 0; + NextScreen GetNextScreen() {return nextScreen;} + virtual void OnButtonPushed() {}; protected: + DisplayApp* app; Components::Gfx& gfx; + NextScreen nextScreen = NextScreen::None; }; } } |
