InfiniTime.git

commit 7a1e6e6e5bf187846bd533f04ee58e04798f0035

Author: Adam Pigg <adam@piggz.co.uk>

Add start of music appliction

 src/CMakeLists.txt | 2 ++
 src/Components/Ble/NimbleController.cpp | 1 +
 src/Components/Ble/NimbleController.h | 5 +++++
 src/DisplayApp/DisplayApp.cpp | 2 ++
 src/DisplayApp/DisplayApp.h | 2 +-
 src/DisplayApp/Screens/Gauge.cpp | 1 +
 src/DisplayApp/Screens/Tile.cpp | 4 ++--
 src/SystemTask/SystemTask.h | 4 +++-


diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index a30fb568115c74cda4f5796ec1fdf7dc86deafae..8c702b8edc80c3cc9e979f7fbc640283ea4e886c 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -336,6 +336,7 @@   DisplayApp/Screens/Brightness.cpp
   DisplayApp/Screens/ScreenList.cpp
   DisplayApp/Screens/Label.cpp
   DisplayApp/Screens/FirmwareUpdate.cpp
+  DisplayApp/Screens/Music.cpp
   main.cpp
   drivers/St7789.cpp
   drivers/SpiNorFlash.cpp
@@ -356,6 +357,7 @@   Components/Ble/AlertNotificationClient.cpp
   Components/Ble/DfuService.cpp
   Components/Ble/CurrentTimeService.cpp
   Components/Ble/AlertNotificationService.cpp
+  Components/Ble/MusicService.cpp
   drivers/Cst816s.cpp
   FreeRTOS/port.c
   FreeRTOS/port_cmsis_systick.c




diff --git a/src/Components/Ble/NimbleController.cpp b/src/Components/Ble/NimbleController.cpp
index 561dbce4b38a3363cf60fe9afc6a6cbc8d639c8a..53458676f939e964968381bfc32848eda17f740b 100644
--- a/src/Components/Ble/NimbleController.cpp
+++ b/src/Components/Ble/NimbleController.cpp
@@ -80,6 +80,7 @@
   deviceInformationService.Init();
   currentTimeClient.Init();
   currentTimeService.Init();
+  musicService.Init();
 
   anService.Init();
 




diff --git a/src/Components/Ble/NimbleController.h b/src/Components/Ble/NimbleController.h
index cf50d78deaad9bf0b63dcef0dc6dd326ceeaa112..fab3df2b2a114c762a31be38b9b4c784aded678d 100644
--- a/src/Components/Ble/NimbleController.h
+++ b/src/Components/Ble/NimbleController.h
@@ -7,6 +7,7 @@ #include "DeviceInformationService.h"
 #include "CurrentTimeClient.h"
 #include "DfuService.h"
 #include "CurrentTimeService.h"
+#include "MusicService.h"
 #include <host/ble_gap.h>
 
 namespace Pinetime {
@@ -35,6 +36,9 @@         int OnANSDescriptorDiscoveryEventCallback(uint16_t connectionHandle, const ble_gatt_error *error,
                                                   uint16_t characteristicValueHandle, const ble_gatt_dsc *descriptor);
 
         void StartDiscovery();
+
+        Pinetime::Controllers::MusicService& music() {return musicService;};
+
       private:
         static constexpr char* deviceName = "Pinetime-JF";
         Pinetime::System::SystemTask& systemTask;
@@ -49,6 +53,7 @@         CurrentTimeClient currentTimeClient;
         AlertNotificationService anService;
         AlertNotificationClient alertNotificationClient;
         CurrentTimeService currentTimeService;
+        MusicService musicService;
 
         uint8_t addrType; // 1 = Random, 0 = PUBLIC
         uint16_t connectionHandle;




diff --git a/src/DisplayApp/DisplayApp.cpp b/src/DisplayApp/DisplayApp.cpp
index 8e35ef551de8692983266b9055fddc0a795854ff..7c822ee0a04ddd54cfc2d80fc0680582864e9e21 100644
--- a/src/DisplayApp/DisplayApp.cpp
+++ b/src/DisplayApp/DisplayApp.cpp
@@ -15,6 +15,7 @@ #include 
 #include <DisplayApp/Screens/Gauge.h>
 #include <DisplayApp/Screens/Brightness.h>
 #include <DisplayApp/Screens/ScreenList.h>
+#include <DisplayApp/Screens/Music.h>
 #include <Components/Ble/NotificationManager.h>
 #include <DisplayApp/Screens/FirmwareUpdate.h>
 #include "../SystemTask/SystemTask.h"
@@ -189,6 +190,7 @@       case Apps::SysInfo: currentScreen.reset(new Screens::ScreenList(this, dateTimeController, batteryController, brightnessController, bleController, 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;
+      case Apps::Music : currentScreen.reset(new Screens::Music(this)); break;
     }
     nextApp = Apps::None;
   }




diff --git a/src/DisplayApp/DisplayApp.h b/src/DisplayApp/DisplayApp.h
index b45a0beedce12bdc7f02302c11028c5aa0644d6e..671a40d0988132669013f8df157321191f38557d 100644
--- a/src/DisplayApp/DisplayApp.h
+++ b/src/DisplayApp/DisplayApp.h
@@ -43,7 +43,7 @@                    Pinetime::Controllers::NotificationManager& notificationManager);
         void Start();
         void PushMessage(Messages msg);
 
-        enum class Apps {None, Launcher, Clock, SysInfo, Meter, Gauge, Brightness};
+        enum class Apps {None, Launcher, Clock, SysInfo, Meter, Gauge, Brightness, Music};
         void StartApp(Apps app);
 
         void SetFullRefresh(FullRefreshDirections direction);




diff --git a/src/DisplayApp/Screens/Gauge.cpp b/src/DisplayApp/Screens/Gauge.cpp
index 4c4cccd99e21faa7fd7a67ee19d9fd8bfea6a32f..fd905231fd835b5b66d92cd2b3541c68061e53f4 100644
--- a/src/DisplayApp/Screens/Gauge.cpp
+++ b/src/DisplayApp/Screens/Gauge.cpp
@@ -19,6 +19,7 @@   style.line.width = 3;
   style.text.color = LV_COLOR_WHITE;
   style.line.color = LV_COLOR_RED;                  /*Line color after the critical value*/
 
+
   /*Describe the color for the needles*/
 
   needle_colors[0] = LV_COLOR_ORANGE;




diff --git a/src/DisplayApp/Screens/Tile.cpp b/src/DisplayApp/Screens/Tile.cpp
index 6c225c9d64067038b1d4fd7514332be148d61a54..88e5bff6cfb28c1159f9c486f4fe795542e44af4 100644
--- a/src/DisplayApp/Screens/Tile.cpp
+++ b/src/DisplayApp/Screens/Tile.cpp
@@ -16,7 +16,7 @@   uint32_t eventData = *eventDataPtr;
   screen->OnObjectEvent(obj, event, eventData);
 }
 
-static const char * btnm_map1[] = {"Meter", "Gauge", "Clock", "\n", "Soft\nversion", "App2", "Brightness", ""};
+static const char * btnm_map1[] = {"Meter", "Music", "Clock", "\n", "Soft\nversion", "App2", "Brightness", ""};
 
 Tile::Tile(DisplayApp* app) : Screen(app) {
   modal.reset(new Modal(app));
@@ -166,7 +166,7 @@   running = false;
 }
 
 void Tile::StartGaugeApp() {
-  app->StartApp(DisplayApp::Apps::Gauge);
+  app->StartApp(DisplayApp::Apps::Music);
   running = false;
 }
 




diff --git a/src/SystemTask/SystemTask.h b/src/SystemTask/SystemTask.h
index ab5f7010ab75cd2596a0f57cedede4defc328c2b..e2325bd60ff753c4e588e5487254422c0f2a4fc1 100644
--- a/src/SystemTask/SystemTask.h
+++ b/src/SystemTask/SystemTask.h
@@ -35,6 +35,8 @@         void OnTouchEvent();
 
         void OnIdle();
 
+        Pinetime::Controllers::NimbleController& nimble() {return nimbleController;};
+
       private:
         TaskHandle_t taskHandle;
 
@@ -74,4 +76,4 @@
         void GoToRunning();
     };
   }
-}
\ No newline at end of file
+}