summaryrefslogtreecommitdiff
path: root/src/DisplayApp/DisplayApp.cpp
diff options
context:
space:
mode:
authorJF <jf@codingfield.com>2020-03-22 12:03:17 +0100
committerJF <jf@codingfield.com>2020-03-22 12:03:17 +0100
commitfb64ba8fb6953fe7e98db6874207a687d0d57bac (patch)
tree786d1b187697c927dfcdb684da48e2feca80e0ce /src/DisplayApp/DisplayApp.cpp
parent8ed6ffaaf8d0ad681c4f84b89e4a72792edb5a8f (diff)
Add new App : Sysinfo. It displays various info about the running system : version, date/time, battery, brightness and resetreason. It contains placeholder for future use (like mac address, uptime,...).
Diffstat (limited to 'src/DisplayApp/DisplayApp.cpp')
-rw-r--r--src/DisplayApp/DisplayApp.cpp21
1 files changed, 19 insertions, 2 deletions
diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp
index 14545d2e..e7187f1d 100644
--- a/src/DisplayApp/DisplayApp.cpp
+++ b/src/DisplayApp/DisplayApp.cpp
@@ -14,6 +14,7 @@
#include <DisplayApp/Screens/Meter.h>
#include <DisplayApp/Screens/Gauge.h>
#include <DisplayApp/Screens/Brightness.h>
+#include <DisplayApp/Screens/ScreenList.h>
#include "../SystemTask/SystemTask.h"
using namespace Pinetime::Applications;
@@ -24,13 +25,15 @@ DisplayApp::DisplayApp(Pinetime::Drivers::St7789& lcd,
Controllers::Battery &batteryController,
Controllers::Ble &bleController,
Controllers::DateTime &dateTimeController,
+ Pinetime::Drivers::WatchdogView& watchdog,
Pinetime::System::SystemTask& systemTask) :
lcd{lcd},
lvgl{lvgl},
- touchPanel{touchPanel},
batteryController{batteryController},
bleController{bleController},
dateTimeController{dateTimeController},
+ watchdog{watchdog},
+ touchPanel{touchPanel},
currentScreen{new Screens::Clock(this, dateTimeController, batteryController, bleController) },
systemTask{systemTask} {
msgQueue = xQueueCreate(queueSize, itemSize);
@@ -167,7 +170,8 @@ void DisplayApp::RunningState() {
currentScreen.reset(new Screens::Clock(this, dateTimeController, batteryController, bleController));
onClockApp = true;
break;
- case Apps::Test: currentScreen.reset(new Screens::Message(this)); break;
+// case Apps::Test: currentScreen.reset(new Screens::Message(this)); break;
+ case Apps::SysInfo: currentScreen.reset(new Screens::ScreenList(this, dateTimeController, batteryController, brightnessController, watchdog)); break;
case Apps::Meter: currentScreen.reset(new Screens::Meter(this)); break;
case Apps::Gauge: currentScreen.reset(new Screens::Gauge(this)); break;
case Apps::Brightness : currentScreen.reset(new Screens::Brightness(this, brightnessController)); break;
@@ -221,3 +225,16 @@ TouchEvents DisplayApp::OnTouchEvent() {
void DisplayApp::StartApp(DisplayApp::Apps app) {
nextApp = app;
}
+
+void DisplayApp::SetFullRefresh(DisplayApp::FullRefreshDirections direction) {
+ switch(direction){
+ case DisplayApp::FullRefreshDirections::Down:
+ lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Down);
+ break;
+ case DisplayApp::FullRefreshDirections::Up:
+ lvgl.SetFullRefresh(Components::LittleVgl::FullRefreshDirections::Up);
+ break;
+ default: break;
+ }
+
+}