64 lines
1.8 KiB
C++
64 lines
1.8 KiB
C++
/*----------------------------------------------------------------------------
|
|
* 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<void(CardPageEvent, bool)> 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<void(CardPageEvent, bool)> cardPageEvent_;
|
|
};
|
|
|
|
} // namespace TJD
|
|
#endif // TJD_UI_WATCH_FACE_CTRL_H
|