1
0
Fork 0
InfiniTime/src/displayapp/Apps.h

98 lines
2.5 KiB
C
Raw Normal View History

#pragma once
#include <cstddef>
#include <cstdint>
namespace Pinetime {
namespace Applications {
enum class Apps : uint8_t {
None,
Launcher,
Clock,
SysInfo,
FirmwareUpdate,
FirmwareValidation,
NotificationsPreview,
Notifications,
Timer,
2021-09-10 18:40:13 -04:00
Alarm,
FlashLight,
BatteryInfo,
Music,
Paint,
Paddle,
Twos,
HeartRate,
Navigation,
StopWatch,
Metronome,
Motion,
Steps,
PassKey,
QuickSettings,
Settings,
SettingWatchFace,
SettingTimeFormat,
SettingDisplay,
SettingWakeUp,
SettingSteps,
SettingSetDateTime,
2021-11-07 10:50:33 +00:00
SettingChimes,
SettingShakeThreshold,
SettingBluetooth,
Error,
Weather
};
2023-11-01 21:06:26 +01:00
enum class WatchFace : uint8_t {
Digital = 0,
Analog = 1,
PineTimeStyle = 2,
Terminal = 3,
Infineat = 4,
CasioStyleG7710 = 5,
};
template <Apps>
struct AppTraits {};
template <WatchFace>
struct WatchFaceTraits {};
2023-11-01 21:06:26 +01:00
template <Apps... As>
struct TypeList {
static constexpr size_t Count = sizeof...(As);
};
template <WatchFace... Ws>
struct WatchFaceTypeList {
static constexpr size_t Count = sizeof...(Ws);
};
using UserAppTypes = TypeList<Apps::StopWatch,
Apps::Alarm,
Apps::Timer,
Apps::Steps,
Apps::HeartRate,
Apps::Music,
Apps::Paint,
Apps::Paddle,
Apps::Twos,
Apps::Metronome,
Apps::Navigation
/*
Apps::Weather,
Apps::Motion
*/
>;
using UserWatchFaceTypes = WatchFaceTypeList<WatchFace::Digital,
WatchFace::Analog,
WatchFace::PineTimeStyle,
WatchFace::Terminal,
WatchFace::Infineat,
WatchFace::CasioStyleG7710>;
static_assert(UserWatchFaceTypes::Count >= 1);
}
2020-12-03 20:03:45 +05:30
}