mcu_hi3321_watch/tjd/ui/app/message/details/TjdUiMessageDetailsView.cpp
2025-05-26 20:15:20 +08:00

113 lines
3.2 KiB
C++

/*----------------------------------------------------------------------------
* Copyright (c) TJD Technologies Co., Ltd. 2024. All rights reserved.
*
* Description:
*
* Author: huangshuyi
*
* Create: 2024-4
*--------------------------------------------------------------------------*/
#include <string>
#include "View.h"
#include "components/root_view.h"
#include "ChangeSliceListener.h"
#include "TjdUiMessageDetailsPresenter.h"
#include "TjdUiMessageDetailsView.h"
#include "TjdUiMemManage.h"
#include "sys_config.h"
#include "TjdUiAppMainView.h"
using namespace OHOS;
namespace TJD {
#define ENABLE_PRINT_INFO 1
#if ENABLE_PRINT_INFO
#define static_print_info(...) sys_ui_log_i(__VA_ARGS__) //一般信息打印宏控制
#define static_print_warn(...) sys_ui_log_w(__VA_ARGS__) //警告信息打印一般常开
#define static_print_error(...) sys_ui_log_e(__VA_ARGS__) //错误信息打印一般常开
#define static_print_debug(...) sys_ui_log_d(__VA_ARGS__)
#else
#define static_print_info(...)
#define static_print_warn(...)
#define static_print_error(...)
#define static_print_debug(...)
#endif
static TjdUiMessageDetailsView *g_pMessageDetailsView = nullptr;
TjdUiMessageDetailsView::TjdUiMessageDetailsView()
{
g_pMessageDetailsView = this;
}
TjdUiMessageDetailsView::~TjdUiMessageDetailsView()
{
static_print_debug("delete TjdUiMessageDetailsView\n");
g_pMessageDetailsView = nullptr;
// if (g_pMessageDetailsView) {
// //printf("delete children container:%p\n", g_pMenuCellularView->GetContainer());
// TjdUiMemManage::DeleteChildren(container_);
// }
if (MessageConfirmDelPage) {
delete MessageConfirmDelPage;
MessageConfirmDelPage = nullptr;
}
if (MessageNoMessagePage) {
delete MessageNoMessagePage;
MessageNoMessagePage = nullptr;
}
if (MessageDetailsPage) {
delete MessageDetailsPage;
MessageDetailsPage = nullptr;
}
if (container_) {
delete container_;
container_ = nullptr;
}
//RootView::GetInstance()->RemoveAll();
}
TjdUiMessageDetailsView *TjdUiMessageDetailsView::GetInstance(void)
{
return g_pMessageDetailsView;
}
void TjdUiMessageDetailsView::OnStart()
{
static_print_debug("TjdUiMessageDetailsView::OnStart\n");
container_ = new UIViewGroup();
container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
AddViewToRootContainer(container_);
MessageNoMessagePage = new TjdUiMessageNoMessagePage();
MessageDetailsPage = new TjdUiMessageDetailsPage();
MessageConfirmDelPage = new TjdUiMessageConfirmDelPage();
UIViewGroup *pageGroup = MessageDetailsPage->PageInit(container_);
MessageConfirmDelPage->PageInit(pageGroup);
MessageConfirmDelPage->SetParentPage(MessageDetailsPage);
MessageNoMessagePage->PageInit(pageGroup);
TjdUiAppMainView::SetMessageRead(0);
if (sql_message_get_message_num() == 0) {
MessageConfirmDelPage->hide();
MessageDetailsPage->hide();
MessageNoMessagePage->show();
} else {
MessageConfirmDelPage->hide();
MessageNoMessagePage->hide();
MessageDetailsPage->show();
}
}
void TjdUiMessageDetailsView::OnStop()
{
}
} // namespace OHOS