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

70 lines
2.1 KiB
C++

#ifndef TJDUI_APP_VIDEOCTRL_H
#define TJDUI_APP_VIDEOCTRL_H
#include "TjdUiAppVideoCtrlPresenter.h"
#include "View.h"
#include "components/ui_label.h"
#include "components/ui_list.h"
#include "components/ui_image_view.h"
#include "components/ui_scroll_view.h"
#include "components/ui_button.h"
#include "graphic_timer.h"
// extern "C" {
// void tjd_into_photo(void);
// }
using namespace OHOS;
namespace TJD {
typedef bool (TjdUiAppVideoCtrlView::*VideoCtrlChangeView)(VideoCtrlView hideView);
class TjdUiAppVideoCtrlPresenter;
class TjdUiAppVideoCtrlView : public OHOS::View<TjdUiAppVideoCtrlPresenter>, public OHOS::UIViewGroup
{
public:
TjdUiAppVideoCtrlView();
~TjdUiAppVideoCtrlView();
static TjdUiAppVideoCtrlView *GetInstance(void);
void OnStart() override;
void OnStop() override;
void ChangedView(VideoCtrlView view, VideoCtrlView hideView);
void TimerToReturn();
private:
OHOS::UIViewGroup *container_{nullptr};
OHOS::UIViewGroup *groupList_[VideoCtrlView::VIDEOCTRL_MAXTHVIEW]{nullptr};
OHOS::UIViewGroup *linkBleView_{nullptr};
OHOS::UIScrollView *ctrlView_{nullptr};
OHOS::UILabel *lblTitle_ctrlView{nullptr};
OHOS::UILabel *lblTip_linkBleView{nullptr};
OHOS::UIButton *playOrPause{nullptr};
OHOS::UIButton *nextTrack{nullptr};
OHOS::UIButton *previousTrack{nullptr};
OHOS::UIButton *volumeUp{nullptr};
OHOS::UIButton *volumeDown{nullptr};
OHOS::UIButton *like{nullptr};
OHOS::UIImageView *linkBleView{nullptr};
OHOS::UIImageView *ctrlViewBJ{nullptr};
OHOS::ImageInfo* imgInfo{nullptr};
UIView::OnClickListener *onClickListener_{nullptr};
UIView::OnDragListener *OnDragListener_{nullptr};
OHOS::GraphicTimer* timerToReturn_{nullptr};
OHOS::UIViewGroup *InitLinkBleView();
OHOS::UIViewGroup *InitVideoCtrlView();
bool ShowLinkBleView(VideoCtrlView hideView);
bool ShowVideoCtrlView(VideoCtrlView hideView);
VideoCtrlChangeView viewMapper_[VIDEOCTRL_MAXTHVIEW] = {
&TjdUiAppVideoCtrlView::ShowLinkBleView,
&TjdUiAppVideoCtrlView::ShowVideoCtrlView,
};
};
} // namespace TJD
#endif