--- /dev/null
+/*
+ * @Author: luozheng 1732036298@qq.com
+ * @Date: 2024-04-16 14:37:08
+ * @LastEditors: luozheng 1732036298@qq.com
+ * @LastEditTime: 2024-04-16 16:08:41
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/brightnesslevel/include/BrightnessLevelPresenter.h
+ */
+
+#ifndef BRIGHTNESS_LEVEL_PRESENTER_H
+#define BRIGHTNESS_LEVEL_PRESENTER_H
+
+#include "Presenter.h"
+#include "View.h"
+#include "brightnesslevel/include/BrightnessLevelView.h"
+#include "brightnesslevel/include/BrightnessLevelPresenter.h"
+
+namespace OHOS
+{
+ class BrightnessLevelView;
+ class BrightnessLevelPresenter : public Presenter<BrightnessLevelView>,
+ public UIView::OnClickListener,
+ public RootView::OnKeyActListener,
+ public UIView::OnDragListener
+ {
+ public:
+ BrightnessLevelPresenter();
+ virtual ~BrightnessLevelPresenter();
+
+ void OnStart() override;
+ void OnPause() override;
+ void OnResume() override;
+ void OnStop() override;
+
+ static BrightnessLevelPresenter *GetInstance();
+
+ private:
+ bool OnClick(UIView &view, const ClickEvent &event) override;
+ bool OnDrag(UIView &view, const DragEvent &event) override;
+ bool OnDragEnd(UIView &view, const DragEvent &event) override;
+ bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件
+ };
+}
+
+#endif
\ No newline at end of file
--- /dev/null
+/*
+ * @Author: luozheng 1732036298@qq.com
+ * @Date: 2024-04-16 14:37:15
+ * @LastEditors: luozheng 1732036298@qq.com
+ * @LastEditTime: 2024-06-18 15:30:17
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/brightnesslevel/include/BrightnessLevelView.h
+ */
+#ifndef BRIGHTNESS_LEVEL_VIEW_H
+#define BRIGHTNESS_LEVEL_VIEW_H
+
+
+#include "View.h"
+#include "displaybrightness/include/BrightnessControlView.h"
+#include "brightnesslevel/include/BrightnessLevelView.h"
+#include "brightnesslevel/include/BrightnessLevelPresenter.h"
+#include "components/ui_scroll_view.h"
+namespace OHOS
+{
+
+ class BrightnessLevelPresenter;
+ class BrightnessLevelView : public View<BrightnessLevelPresenter>
+ {
+
+ public:
+ BrightnessLevelView();
+ virtual ~BrightnessLevelView();
+ static BrightnessLevelView *GetInstance(void);
+ BrightnessControlView *GetBrightnessControlView(void)
+ {
+ return p_BrightnessControlView;
+ }
+
+ void OnStart() override;
+
+ private:
+ void BrightnessLevelViewInit(void);
+ void ClearAll(void);
+ UIScrollView *scorllView{nullptr};
+ BrightnessControlView *p_BrightnessControlView{nullptr};
+ };
+}
+#endif
\ No newline at end of file
--- /dev/null
+/*
+ * @Author: luozheng 1732036298@qq.com
+ * @Date: 2024-04-16 14:36:45
+ * @LastEditors: luozheng 1732036298@qq.com
+ * @LastEditTime: 2024-06-18 15:19:37
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/brightnesslevel/src/BrightnessLevelPresenter.cpp
+ */
+#include "brightnesslevel/include/BrightnessLevelPresenter.h"
+#include "AppViewIDs.h"
+#include "NativeAbility.h"
+#include "common/key_code.h"
+#include <custom_utils.h>
+
+#include "NativeRegisterManager.h"
+
+namespace OHOS
+{
+ REGIST_SLICE(VIEW_BRIGHTNESSLEVEL, BrightnessLevelView, BrightnessLevelPresenter);
+
+ // 当前Presenter属性实例化的内存指针
+ static BrightnessLevelPresenter *g_pBrightnessLevelPresenter = nullptr;
+
+ BrightnessLevelPresenter::BrightnessLevelPresenter()
+ {
+ g_pBrightnessLevelPresenter = this;
+ }
+
+ BrightnessLevelPresenter::~BrightnessLevelPresenter()
+ {
+ g_pBrightnessLevelPresenter = nullptr;
+ }
+
+ BrightnessLevelPresenter *BrightnessLevelPresenter::GetInstance()
+ {
+ return g_pBrightnessLevelPresenter;
+ }
+
+ void BrightnessLevelPresenter::OnStart()
+ {
+ Presenter<BrightnessLevelView>::OnStart();
+ }
+
+ void BrightnessLevelPresenter::OnPause(void)
+ {
+ Presenter<BrightnessLevelView>::OnPause();
+ }
+
+ void BrightnessLevelPresenter::OnResume(void)
+ {
+ Presenter<BrightnessLevelView>::OnResume();
+ }
+
+ void BrightnessLevelPresenter::OnStop(void)
+ {
+ Presenter<BrightnessLevelView>::OnStop();
+ }
+
+ bool BrightnessLevelPresenter::OnClick(UIView &view, const ClickEvent &event)
+ {
+
+ return true;
+ }
+
+ bool BrightnessLevelPresenter::OnDrag(UIView &view, const DragEvent &event)
+ {
+ UNUSED(view);
+ UNUSED(event);
+ return true;
+ }
+
+ bool BrightnessLevelPresenter::OnDragEnd(UIView &view, const DragEvent &event)
+ {
+ UNUSED(view);
+ if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)
+ {
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
+ }
+ return true;
+ }
+
+ bool BrightnessLevelPresenter::OnKeyAct(UIView &view, const KeyEvent &event) // 增加按键事件
+ {
+ UNUSED(view);
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DisplayBrightnessPresenter::OnKeyAct");
+ unsigned short keyID = event.GetKeyId();
+ unsigned short keyState = event.GetState();
+ // 如果是power键,且是亮屏状态,按键释放就返回上一级
+ if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)
+ {
+ NativeAbility::GetInstance().Back(TransitionType::TRANSITION_BACK_TO_HEXAGONS);
+ }
+ return true;
+ }
+}
\ No newline at end of file
--- /dev/null
+/*
+ * @Author: luozheng 1732036298@qq.com
+ * @Date: 2024-04-16 14:36:13
+ * @LastEditors: luozheng 1732036298@qq.com
+ * @LastEditTime: 2024-06-18 15:28:04
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/brightnesslevel/src/BrightnessLevelView.cpp
+ */
+#include "brightnesslevel/include/BrightnessLevelView.h"
+#include "brightnesslevel/include/BrightnessLevelPresenter.h"
+#include "wearable_log.h"
+
+namespace OHOS
+{
+
+ static BrightnessLevelView *g_pBrightnessLevelView{nullptr};
+
+ BrightnessLevelView::BrightnessLevelView()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BrightnessLevelView::BrightnessLevelView");
+ g_pBrightnessLevelView = this;
+ }
+
+ BrightnessLevelView::~BrightnessLevelView()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BrightnessLevelView::~BrightnessLevelView");
+ g_pBrightnessLevelView = nullptr;
+ }
+
+ BrightnessLevelView *BrightnessLevelView::GetInstance()
+ {
+ return g_pBrightnessLevelView;
+ }
+
+ void BrightnessLevelView::ClearAll(void)
+ {
+ if (p_BrightnessControlView != nullptr)
+ {
+ scorllView = nullptr;
+
+ delete p_BrightnessControlView;
+ p_BrightnessControlView = nullptr;
+ }
+ }
+
+ void BrightnessLevelView::BrightnessLevelViewInit(void)
+ {
+ p_BrightnessControlView = new BrightnessControlView();
+ if (p_BrightnessControlView == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[BrightnessLevelView::BrightnessLevelViewInit] p_BrightnessControlView is nullptr!!");
+ return;
+ }
+ scorllView = p_BrightnessControlView->BrightnessControlViewInit();
+ if (scorllView == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[BrightnessLevelView::BrightnessLevelViewInit] scorllView == nullptr");
+ return;
+ }
+ }
+
+ void BrightnessLevelView::OnStart()
+ {
+
+
+ BrightnessLevelViewInit();
+ // 增加按键监听
+ RootView::OnKeyActListener *keyactListener = (RootView::OnKeyActListener *)OHOS::BrightnessLevelPresenter::GetInstance();
+ //RootView::GetInstance()->SetOnKeyActListener(keyactListener);
+
+ AddViewToRootContainer(scorllView);
+ }
+
+
+}
\ No newline at end of file