Author: JF <jf@codingfield.com>
Re-order apps in application menu on 2 pages. Add firmware validation app.
src/DisplayApp/Apps.h | 2 src/DisplayApp/DisplayApp.cpp | 1 src/DisplayApp/Screens/ApplicationList.cpp | 28 ++++++++++++----------- src/DisplayApp/Screens/ApplicationList.h | 2 src/DisplayApp/Screens/Symbols.h | 1
diff --git a/src/DisplayApp/Apps.h b/src/DisplayApp/Apps.h index 2ee7429985395693187551bc310587e3a7140910..2666d905776f3692b94aed6564ea9fb5e4cd537d 100644 --- a/src/DisplayApp/Apps.h +++ b/src/DisplayApp/Apps.h @@ -2,6 +2,6 @@ #pragma once namespace Pinetime { namespace Applications { - enum class Apps {None, Launcher, Clock, SysInfo, Meter, Gauge, Brightness, Music}; + enum class Apps {None, Launcher, Clock, SysInfo, Meter, Gauge, Brightness, Music, FirmwareValidation}; } } \ No newline at end of file diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp index bbd99a3db20b67afc94ca377cbaff644680435b4..935578070e44eed06fdbdc4348dae18074b76678 100644 --- a/src/DisplayApp/DisplayApp.cpp +++ b/src/DisplayApp/DisplayApp.cpp @@ -190,6 +190,7 @@ 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; case Apps::Music : currentScreen.reset(new Screens::Music(this, systemTask.nimble().music())); break; + case Apps::FirmwareValidation: currentScreen.reset(new Screens::FirmwareValidation(this, validator)); break; } nextApp = Apps::None; } diff --git a/src/DisplayApp/Screens/ApplicationList.cpp b/src/DisplayApp/Screens/ApplicationList.cpp index c7c096f4152cb12d56a5b6e2efe4c0325059f771..575426f0c749a59fc315b1e0fe0c54edc3e82f84 100644 --- a/src/DisplayApp/Screens/ApplicationList.cpp +++ b/src/DisplayApp/Screens/ApplicationList.cpp @@ -11,7 +11,7 @@ ApplicationList::ApplicationList(Pinetime::Applications::DisplayApp *app) : Screen(app), screens{app, { [this]() -> std::unique_ptr<Screen> { return CreateScreen1(); }, - //[this]() -> std::unique_ptr<Screen> { return CreateScreen2(); }, + [this]() -> std::unique_ptr<Screen> { return CreateScreen2(); }, //[this]() -> std::unique_ptr<Screen> { return CreateScreen3(); } } } {} @@ -39,13 +39,15 @@ } std::unique_ptr<Screen> ApplicationList::CreateScreen1() { std::array<Screens::Tile::Applications, 6> applications { - {{Symbols::asterisk, Apps::Meter}, - {Symbols::tachometer, Apps::Gauge}, - {Symbols::clock, Apps::Clock}, - {Symbols::music, Apps::Music}, - {Symbols::list, Apps::SysInfo}, - {Symbols::sun, Apps::Brightness} + {{Symbols::clock, Apps::Clock}, + {Symbols::music, Apps::Music}, + {Symbols::sun, Apps::Brightness}, + {Symbols::list, Apps::SysInfo}, + {Symbols::check, Apps::FirmwareValidation}, + {Symbols::none, Apps::None} } + + }; return std::unique_ptr<Screen>(new Screens::Tile(app, applications)); @@ -53,12 +55,12 @@ } std::unique_ptr<Screen> ApplicationList::CreateScreen2() { std::array<Screens::Tile::Applications, 6> applications { - {{"0", Apps::Meter}, - {"1", Apps::Gauge}, - {"2", Apps::Clock}, - {"3", Apps::Music}, - {"4", Apps::SysInfo}, - {"5", Apps::Brightness} + {{Symbols::tachometer, Apps::Gauge}, + {Symbols::asterisk, Apps::Meter}, + {Symbols::none, Apps::None}, + {Symbols::none, Apps::None}, + {Symbols::none, Apps::None}, + {Symbols::none, Apps::None} } }; diff --git a/src/DisplayApp/Screens/ApplicationList.h b/src/DisplayApp/Screens/ApplicationList.h index 372cbb7aba384352a31340fa9acf18639f9e649e..a1e6811b3c3fcaaff970e6f3a69d7f1cf75f3d67 100644 --- a/src/DisplayApp/Screens/ApplicationList.h +++ b/src/DisplayApp/Screens/ApplicationList.h @@ -22,7 +22,7 @@ bool OnTouchEvent(TouchEvents event) override; private: bool running = true; - ScreenList<1> screens; + ScreenList<2> screens; std::unique_ptr<Screen> CreateScreen1(); std::unique_ptr<Screen> CreateScreen2(); std::unique_ptr<Screen> CreateScreen3(); diff --git a/src/DisplayApp/Screens/Symbols.h b/src/DisplayApp/Screens/Symbols.h index 940006d5dd50bac892d960c4fee0d3500c38a3d5..54c3f8f02b39b75667fc566e0b5534f5af82d90d 100644 --- a/src/DisplayApp/Screens/Symbols.h +++ b/src/DisplayApp/Screens/Symbols.h @@ -4,6 +4,7 @@ namespace Pinetime { namespace Applications { namespace Screens { namespace Symbols { + static constexpr char* none = ""; static constexpr char* batteryFull = "\xEF\x89\x80"; static constexpr char* batteryEmpty = "\xEF\x89\x84"; static constexpr char* batteryThreeQuarter = "\xEF\x89\x81";