mcu_hi3321_watch/tjd/ui/app/message/particular/TjdUiMessageParticularPage.h
2025-05-26 20:15:20 +08:00

110 lines
3.4 KiB
C++

/*----------------------------------------------------------------------------
* Copyright (c) TJD Technologies Co., Ltd. 2024. All rights reserved.
*
* Description:
*
* Author: huangshuyi
*
* Create: 2024-4
*--------------------------------------------------------------------------*/
#ifndef TJDUI_MESSAGE_PARTICULAR_PAGE_H
#define TJDUI_MESSAGE_PARTICULAR_PAGE_H
#include <string>
#include <time.h>
#include "components/ui_view_group.h"
#include "View.h"
#include "components/ui_label.h"
#include "components/root_view.h"
#include "components/ui_view_group.h"
#include "components/ui_image_view.h"
#include "components/ui_label_button.h"
#include "font/ui_font_bitmap.h"
#include "font/ui_font.h"
#include "graphic_config.h"
#include "animator/animator_manager.h"
#include "time.h"
#include "sys/time.h"
#include "components/abstract_adapter.h"
#include "components/ui_scroll_view.h"
#include "sql_message.h"
// #include "TjdUiMessageCommon.h"
#include "TjdUiMessageConfirmDelPage.h"
#include "TjdUiMessageNoMessagePage.h"
namespace TJD {
class TjdUiMessageParticularPage : public TjdUiMessagePageCommon
{
public:
TjdUiMessageParticularPage();
virtual ~TjdUiMessageParticularPage();
static TjdUiMessageParticularPage *GetInstance(void);
void show(void) override;
void hide(void) override;
void DeleteMessage(uint8_t index) override;
bool OnClick(OHOS::UIView &view, const OHOS::ClickEvent &event);
OHOS::UIViewGroup *PageInit(OHOS::UIViewGroup *cont);
static uint8_t msgIndex;
private:
int16_t CreateMessageItem(OHOS::UIViewGroup*& cont, const uint8_t& index, const int16_t& x, const int16_t& y, OHOS::UIView::OnClickListener*itemClickListener);
void CreateMessagePageGroup(void);
OHOS::UIScrollView *scrollCont{nullptr};
OHOS::UIViewGroup *messagePageGroup{nullptr};
OHOS::UIViewGroup *pageGroup{nullptr};
OHOS::UIViewGroup *container_{nullptr};
class DelClickListener : public OHOS::UIView:: OnClickListener
{
public:
DelClickListener(const DelClickListener &) = delete;
DelClickListener &operator=(const DelClickListener &) = delete;
DelClickListener() {}
~DelClickListener() override
{
}
bool OnClick(OHOS::UIView& view, const OHOS::ClickEvent& event) override
{
printf("DelClick,type:%d,index:%d\n", view.GetViewType(), view.GetViewIndex());
if (TjdUiMessageParticularPage::GetInstance()) {
TjdUiMessageParticularPage::GetInstance()->hide();
}
if (TjdUiMessageConfirmDelPage::GetInstance()) {
TjdUiMessageConfirmDelPage::GetInstance()->show();
}
return true;
}
};
class ItemClickListener : public OHOS::UIView:: OnClickListener
{
public:
ItemClickListener(const ItemClickListener &) = delete;
ItemClickListener &operator=(const ItemClickListener &) = delete;
ItemClickListener() {}
~ItemClickListener() override
{
}
bool OnClick(OHOS::UIView& view, const OHOS::ClickEvent& event) override
{
printf("ItemClick,type:%d,index:%d\n", view.GetViewType(), view.GetViewIndex());
TjdUiMessageParticularPage::msgIndex = view.GetViewIndex();
OHOS::NativeAbility::GetInstance().ChangeSlice(TJD_APP_VIEW_MESSAGE_DETAILS);
return true;
}
};
//TjdUiMessageScreenDragListener* screenDragListener{nullptr};
OHOS::UIView::OnClickListener*itemClickListener{nullptr};
OHOS::UIView::OnClickListener*delClickListener{nullptr};
};
} // namespace OHOS
#endif