summaryrefslogtreecommitdiff
path: root/src/displayapp/screens/Screen.h
diff options
context:
space:
mode:
authorJF <jf@codingfield.com>2020-10-27 21:55:18 +0100
committerJF <jf@codingfield.com>2020-10-27 21:55:18 +0100
commit7de43a16608e599369867cb3cfa7d5776a5b6380 (patch)
tree1750edfed02f547102e468eca485caab3b08e98d /src/displayapp/screens/Screen.h
parent5983e33b8d7702800dc91a3229b9a7cee75eb006 (diff)
parentc5bf09d21b2ed8e2435ec625e351594f58713924 (diff)
Fix conflicts
Diffstat (limited to 'src/displayapp/screens/Screen.h')
-rw-r--r--src/displayapp/screens/Screen.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/displayapp/screens/Screen.h b/src/displayapp/screens/Screen.h
index dbf81a44..6b1d0eec 100644
--- a/src/displayapp/screens/Screen.h
+++ b/src/displayapp/screens/Screen.h
@@ -9,16 +9,28 @@ namespace Pinetime {
namespace Screens {
class Screen {
public:
- Screen(DisplayApp* app) : app{app} {}
+ explicit Screen(DisplayApp* app) : app{app} {}
virtual ~Screen() = default;
- // Return false if the app can be closed, true if it must continue to run
+ /**
+ * Most of the time, apps only react to events (touch events, for example).
+ * In this case you don't need to do anything in this method.
+ *
+ * For example, InfiniPaint does nothing in Refresh().
+ * But, if you want to update your display periodically, draw an animation...
+ * you cannot do it in a touch event handler because these handlers are not
+ * called if the user does not touch the screen.
+ *
+ * That's why Refresh() is there: update the display periodically.
+ *
+ * @return false if the app can be closed, true if it must continue to run
+ **/
virtual bool Refresh() = 0;
- // Return false if the button hasn't been handled by the app, true if it has been handled
+ /** @return false if the button hasn't been handled by the app, true if it has been handled */
virtual bool OnButtonPushed() { return false; }
- // Return false if the event hasn't been handled by the app, true if it has been handled
+ /** @return false if the event hasn't been handled by the app, true if it has been handled */
virtual bool OnTouchEvent(TouchEvents event) { return false; }
virtual bool OnTouchEvent(uint16_t x, uint16_t y) { return false; }