/*---------------------------------------------------------------------------- * Copyright (c) TJD Technologies Co., Ltd. 2025. All rights reserved. * * Description: TjdUiAppDockView.h * * Author: luziquan@ss-tjd.com * * Create: 2024-06-15 *--------------------------------------------------------------------------*/ #ifndef TJD_UI_APP_DOCK_VIEW_H #define TJD_UI_APP_DOCK_VIEW_H #include "TjdUiAppDockPresenter.h" #include "View.h" #include "components/ui_button.h" #include "components/ui_image_view.h" #include "components/ui_label_button_ext.h" #include "components/ui_label_ext.h" #include "components/ui_list.h" #include "components/ui_scroll_view.h" #include "components/tjd_ui_custom_slipflow_view.h" #include "components/ui_view_group.h" #include namespace TJD { struct SliceInfo { uint16_t sliceId; uint32_t resId; uint16_t nameId; }; class TjdUiAppDockPresenter; class TjdUiAppDockView : public OHOS::View, public OHOS::UIViewGroup, public OHOS::UISlipflowView::OnSlipflowScrollListener { public: TjdUiAppDockView(); ~TjdUiAppDockView(); static TjdUiAppDockView *GetInstance(void); void OnStart() override; void OnStop() override; OHOS::ImageInfo *FindImageInfo(int16_t id); void InitZeroView(); void UITestSlipflowView(); void UITestSlipflowViewInitFlow(); bool OnScroll(int16_t distance) override; void OnScrollUpStart() override; void OnScrollUpEnd() override; bool OnRemove(OHOS::UIView *view) override; void OnRefreshPageOpaScale(OHOS::UIView *view, int16_t xOffset, int16_t yOffset) override; private: void InitDockItemInfo(); std::vector dockItemInfo_; OHOS::UIViewGroup *zeroGroup_ = nullptr; OHOS::UIImageView *bg_ = nullptr; OHOS::UILabel *zeroLabel_ = nullptr; OHOS::UIScrollView *container_ = nullptr; TjdUICustomSlipflowView *slipflow_ = nullptr; OHOS::UILabelExt *label_ = nullptr; OHOS::UILabel *slipUpNoticelabel_ = nullptr; uint16_t lastIndex_ = 0; bool isShowBtnGrp_ = false; uint8_t loadNum_ = 0; }; } // namespace TJD #endif