/*---------------------------------------------------------------------------- * Copyright (c) TJD Technologies Co., Ltd. 2024. All rights reserved. * * Description: TjdUiWatchFaceBase.h * * Author: liuguanwu * * Create: 2024-10 *--------------------------------------------------------------------------*/ #ifndef TJD_UI_WATCH_FACE_BASE_H #define TJD_UI_WATCH_FACE_BASE_H #include "DialViewGroup.h" #include "View.h" #include "components/ui_card_page.h" namespace TJD { class TjdUiWfBase : public OHOS::UICardPage { public: TjdUiWfBase(); TjdUiWfBase(OHOS::DialViewGroup *dialViewGroup); virtual ~TjdUiWfBase(); virtual void SetPeriod(uint32_t period); virtual uint32_t GetPeriod(void); virtual void Update(); bool IsDialView(); OHOS::DialViewGroup *GetDialViewGroup(); void ScrollBegin(bool isActive) override; void ScrollEnd(bool isActive) override; void CoverBegin(bool isCovered) override; void CoverEnd(bool isCovered) override; void OnActive(void) override; void OnInactive(void) override; void OnCovered(void) override; void OnUncovered(void) override; void OnPause() override; virtual void OnResume(void) {}; enum class CardPageEvent { CARD_PAGE_EVENT_SCROLLBEGIN, CARD_PAGE_EVENT_SCROLLEND, CARD_PAGE_EVENT_COVERBEGIN, CARD_PAGE_EVENT_COVEREND, CARD_PAGE_EVENT_ONACTIVE, CARD_PAGE_EVENT_ONINACTIVE, }; void RegisterCardPageEvent(std::function event) { cardPageEvent_ = event; } private: void CallCardPageEvent(CardPageEvent event, bool eventValue); OHOS::DialViewGroup *dialViewGroup_{nullptr}; uint32_t period_ = OHOS::DEFAULT_TASK_PERIOD; bool isDialView_ = false; std::function cardPageEvent_; }; } // namespace TJD #endif // TJD_UI_WATCH_FACE_CTRL_H