/*---------------------------------------------------------------------------- * Copyright (c) TJD Technologies Co., Ltd. 2025. All rights reserved. * * Description: TjdUiAppMainModel.h * * Author: luziquan@ss-tjd.com * * Create: 2025-03-13 *--------------------------------------------------------------------------*/ #ifndef TJD_UI_APP_MAIN_MODEL_H #define TJD_UI_APP_MAIN_MODEL_H #include #include #include namespace TJD { typedef enum { TJD_CARD_FAVORITE, TJD_CARD_WATCH_FACE, TJD_CARD_HEALTH, TJD_CARD_TOOL, TJD_CARD_WEATHER, TJD_CARD_MUSIC, TJD_CARD_MAKE_FRIEND, TJD_CARD_MAP, TJD_CARD_FOUR_LEAF_CLOVER, TJD_CARD_MAX_CARD, } TjdCardId; typedef enum { TJD_VER_CARD_SHORTCUT, TJD_VER_CARD_WATCH_FACE, TJD_VER_CARD_MESSAGE, } TjdVerCardId; typedef enum { TJD_MAIN_PAGE_FAVORITE, TJD_MAIN_PAGE_WATCH_FACE, ////////editable component///////// TJD_MAIN_PAGE_HEALTH, TJD_MAIN_PAGE_TOOL, TJD_MAIN_PAGE_WEATHER, TJD_MAIN_PAGE_MUSIC, TJD_MAIN_PAGE_MAKE_FRIEND, TJD_MAIN_PAGE_MAP, TJD_MAIN_PAGE_FOUR_LEAF_CLOVER, ////////editable component///////// TJD_MAIN_MAX_CARD, } MainCardId; struct MainCardInfo { MainCardId id; std::string name; int resId; }; class TjdUiAppMainModel { public: TjdUiAppMainModel(); virtual ~TjdUiAppMainModel(); static TjdUiAppMainModel &GetInstance(void); void Init(); void DeleteCardSetting(uint8_t index); void AddCardSetting(uint8_t index); const std::vector &GetCardSettings(void); const MainCardInfo *GetCardInfo(MainCardId id); bool IsFromSetCardView(void) const; void SetFromSetCardView(bool isFrom); void SetFromCardId(uint8_t cardId); uint8_t GetFromCardId(void); void InitCardSettings(); private: std::vector cardSettings; std::vector cardInfos; bool isFromSetCardView{false}; uint8_t fromCardId{TjdCardId::TJD_CARD_MAX_CARD}; }; } // namespace TJD #endif