Refactor watch face to enum (#1339)
change watch face from int to enum --------- Co-authored-by: minacode <minamoto9@web.de>
This commit is contained in:
parent
5f19f689f9
commit
020a7fd11d
5 changed files with 34 additions and 16 deletions
|
@ -604,6 +604,7 @@ set(INCLUDE_FILES
|
|||
displayapp/screens/ApplicationList.h
|
||||
displayapp/screens/CheckboxList.h
|
||||
displayapp/Apps.h
|
||||
displayapp/WatchFaces.h
|
||||
displayapp/screens/Notifications.h
|
||||
displayapp/screens/HeartRate.h
|
||||
displayapp/screens/Metronome.h
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#include <bitset>
|
||||
#include "components/brightness/BrightnessController.h"
|
||||
#include "components/fs/FS.h"
|
||||
#include "displayapp/WatchFaces.h"
|
||||
|
||||
namespace Pinetime {
|
||||
namespace Controllers {
|
||||
|
@ -61,15 +62,15 @@ namespace Pinetime {
|
|||
void Init();
|
||||
void SaveSettings();
|
||||
|
||||
void SetClockFace(uint8_t face) {
|
||||
if (face != settings.clockFace) {
|
||||
void SetWatchFace(Pinetime::Applications::WatchFace face) {
|
||||
if (face != settings.watchFace) {
|
||||
settingsChanged = true;
|
||||
}
|
||||
settings.clockFace = face;
|
||||
settings.watchFace = face;
|
||||
};
|
||||
|
||||
uint8_t GetClockFace() const {
|
||||
return settings.clockFace;
|
||||
Pinetime::Applications::WatchFace GetWatchFace() const {
|
||||
return settings.watchFace;
|
||||
};
|
||||
|
||||
void SetChimeOption(ChimesOption chimeOption) {
|
||||
|
@ -276,7 +277,7 @@ namespace Pinetime {
|
|||
ClockType clockType = ClockType::H24;
|
||||
Notification notificationStatus = Notification::On;
|
||||
|
||||
uint8_t clockFace = 0;
|
||||
Pinetime::Applications::WatchFace watchFace = Pinetime::Applications::WatchFace::Digital;
|
||||
ChimesOption chimesOption = ChimesOption::None;
|
||||
|
||||
PineTimeStyle PTS;
|
||||
|
|
14
src/displayapp/WatchFaces.h
Normal file
14
src/displayapp/WatchFaces.h
Normal file
|
@ -0,0 +1,14 @@
|
|||
#pragma once
|
||||
|
||||
namespace Pinetime {
|
||||
namespace Applications {
|
||||
enum class WatchFace : uint8_t {
|
||||
Digital = 0,
|
||||
Analog = 1,
|
||||
PineTimeStyle = 2,
|
||||
Terminal = 3,
|
||||
Infineat = 4,
|
||||
CasioStyleG7710 = 5,
|
||||
};
|
||||
}
|
||||
}
|
|
@ -15,6 +15,7 @@
|
|||
#include "displayapp/screens/WatchFaceCasioStyleG7710.h"
|
||||
|
||||
using namespace Pinetime::Applications::Screens;
|
||||
using namespace Pinetime::Applications;
|
||||
|
||||
Clock::Clock(Controllers::DateTime& dateTimeController,
|
||||
const Controllers::Battery& batteryController,
|
||||
|
@ -33,23 +34,23 @@ Clock::Clock(Controllers::DateTime& dateTimeController,
|
|||
motionController {motionController},
|
||||
filesystem {filesystem},
|
||||
screen {[this, &settingsController]() {
|
||||
switch (settingsController.GetClockFace()) {
|
||||
case 0:
|
||||
switch (settingsController.GetWatchFace()) {
|
||||
case WatchFace::Digital:
|
||||
return WatchFaceDigitalScreen();
|
||||
break;
|
||||
case 1:
|
||||
case WatchFace::Analog:
|
||||
return WatchFaceAnalogScreen();
|
||||
break;
|
||||
case 2:
|
||||
case WatchFace::PineTimeStyle:
|
||||
return WatchFacePineTimeStyleScreen();
|
||||
break;
|
||||
case 3:
|
||||
case WatchFace::Terminal:
|
||||
return WatchFaceTerminalScreen();
|
||||
break;
|
||||
case 4:
|
||||
case WatchFace::Infineat:
|
||||
return WatchFaceInfineatScreen();
|
||||
break;
|
||||
case 5:
|
||||
case WatchFace::CasioStyleG7710:
|
||||
return WatchFaceCasioStyleG7710();
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
#include "displayapp/DisplayApp.h"
|
||||
#include "displayapp/screens/Screen.h"
|
||||
#include "components/settings/Settings.h"
|
||||
#include "displayapp/WatchFaces.h"
|
||||
|
||||
using namespace Pinetime::Applications::Screens;
|
||||
|
||||
|
@ -47,9 +48,9 @@ std::unique_ptr<Screen> SettingWatchFace::CreateScreen(unsigned int screenNum) c
|
|||
nScreens,
|
||||
title,
|
||||
symbol,
|
||||
settingsController.GetClockFace(),
|
||||
[&settings = settingsController](uint32_t clockFace) {
|
||||
settings.SetClockFace(clockFace);
|
||||
static_cast<uint32_t>(settingsController.GetWatchFace()),
|
||||
[&settings = settingsController](uint32_t index) {
|
||||
settings.SetWatchFace(static_cast<WatchFace>(index));
|
||||
settings.SaveSettings();
|
||||
},
|
||||
watchfacesOnThisScreen);
|
||||
|
|
Loading…
Reference in a new issue