ref: e5b73212f6addcfdb5e306df63d7135e543c4f8d
src/displayapp/Apps.h
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
#pragma once #include <cstddef> #include <cstdint> namespace Pinetime { namespace Applications { enum class Apps : uint8_t { None, Launcher, Clock, SysInfo, FirmwareUpdate, FirmwareValidation, NotificationsPreview, Notifications, Timer, Alarm, FlashLight, BatteryInfo, Music, Paint, Paddle, Twos, HeartRate, Navigation, StopWatch, Metronome, Motion, Steps, PassKey, QuickSettings, Settings, SettingWatchFace, SettingTimeFormat, SettingDisplay, SettingWakeUp, SettingSteps, SettingSetDateTime, SettingChimes, SettingShakeThreshold, SettingBluetooth, Error, Weather }; enum class WatchFace : uint8_t { Digital, Analog, PineTimeStyle, Terminal, Infineat, CasioStyleG7710, }; template <Apps> struct AppTraits {}; template <WatchFace> struct WatchFaceTraits {}; 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); } } |