mcu_hi3321_watch/tjd/ui/app/game/TjdUiAppGameAdapter.h
2025-05-26 20:15:20 +08:00

63 lines
1.5 KiB
C++

#ifndef TJD_UI_APP_GAME_ADAPTER_H
#define TJD_UI_APP_GAME_ADAPTER_H
#include "TjdUiAppGamePresenter.h"
#include "TjdUiComponentList.h"
#include "components/abstract_adapter.h"
#include "components/ui_image_view.h"
#include "components/ui_label.h"
#include "components/ui_label_button.h"
#include "components/ui_toggle_button.h"
#include "components/ui_view.h"
#include "components/ui_view_group.h"
#include "components/ui_qrcode.h"
#include "gfx_utils/list.h"
#include "image_info.h"
#include "string"
namespace TJD {
enum GameItemIndex
{
GAME_AIRCRAFT_INDEX = 0, // 飞机大战
GAME_BIRDFLY_INDEX = 1, // 飞翔小鸟
GAME_MAX_INDEX
};
struct GameCaseInfo
{
GameItemIndex index;
OHOS::ImageInfo *imgInfo;
const char *name;
};
class GameCaseItemView : public TjdUIListView
{
public:
explicit GameCaseItemView(GameCaseInfo &info);
~GameCaseItemView() override;
void UpdateView(GameCaseInfo &info);
GameCaseItemView * GetItemView() { return this; }
bool OnClickEvent(const OHOS::ClickEvent &event) override;
private:
OHOS::UIImageView icon_;
OHOS::UILabel name_;
};
class TjdUiAppGameAdapter : public OHOS::AbstractAdapter
{
public:
TjdUiAppGameAdapter() {}
~TjdUiAppGameAdapter();
OHOS::UIView *GetView(OHOS::UIView *inView, int16_t index) override;
uint16_t GetCount() override;
private:
GameCaseItemView *itemView_{nullptr};
};
} // namespace TJD
#endif