增加省电模式界面的编码器效果
authorCaisking <3449750381@qq.com>
Mon, 30 Sep 2024 14:10:39 +0000 (22:10 +0800)
committerCaisking <3449750381@qq.com>
Mon, 30 Sep 2024 14:10:39 +0000 (22:10 +0800)
code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h
code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp
code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp

index 56a6e06..f42bc49 100644 (file)
@@ -2,7 +2,8 @@
  * @Date: 2024-04-15 10:55:58\r
  * @LastEditors: Caisking 3449750381@qq.com\r
  * @LastEditTime: 2024-08-09 15:01:58\r
- * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h\r
+ * @FilePath:\r
+ * /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h\r
  */\r
 #ifndef _SAVEELE_PRESENTER_H\r
 #define _SAVEELE_PRESENTER_H\r
 #include "Presenter.h"\r
 #include "SaveEleView.h"\r
 \r
-namespace OHOS\r
-{\r
-    static constexpr const char *SAVEBUTTONOK = "buttonok";\r
-    static constexpr const char *SAVEBUTTONNO = "buttonno";\r
+namespace OHOS {\r
+static constexpr const char *SAVEBUTTONOK = "buttonok";\r
+static constexpr const char *SAVEBUTTONNO = "buttonno";\r
 \r
-    class SaveEleView;\r
-    class SaveElePresenter : public Presenter<SaveEleView>,\r
-                             public UIView::OnClickListener,\r
-                             public UIView::OnDragListener,\r
-                             public RootView::OnKeyActListener\r
-    {\r
-    public:\r
-        SaveElePresenter();\r
-        virtual ~SaveElePresenter();\r
+class SaveEleView;\r
+class SaveElePresenter : public Presenter<SaveEleView>,\r
+                         public UIView::OnClickListener,\r
+                         public UIView::OnDragListener,\r
+                         public UIView::OnRotateListener,\r
+                         public RootView::OnKeyActListener {\r
+public:\r
+  SaveElePresenter();\r
+  virtual ~SaveElePresenter();\r
 \r
-        void OnStart() override;\r
-        void OnPause() override;\r
-        void OnResume() override;\r
-        void OnStop() override;\r
+  void OnStart() override;\r
+  void OnPause() override;\r
+  void OnResume() override;\r
+  void OnStop() override;\r
 \r
-        static SaveElePresenter *GetInstance();\r
+  static SaveElePresenter *GetInstance();\r
 \r
-    private:\r
-        // 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
-        bool OnClick(UIView &view, const ClickEvent &event) override;\r
-        bool OnDrag(UIView &view, const DragEvent &event) override;\r
-        bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
-    };\r
+private:\r
+  // 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
+  bool OnClick(UIView &view, const ClickEvent &event) override;\r
+  bool OnDrag(UIView &view, const DragEvent &event) override;\r
+  bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
+  bool OnRotateEnd(UIView &view, const RotateEvent &event);\r
+};\r
 } // namespace OHOS\r
 \r
 #endif // SLEEPDETAIL_PRESENTER_H
\ No newline at end of file
index 6c084ed..74f22b4 100644 (file)
-/*** \r
- * @Date: 2024-08-16 09:26:06\r
- * @LastEditors: Caisking 3449750381@qq.com\r
- * @LastEditTime: 2024-08-21 17:03:11\r
- * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp\r
- */\r
-/*** \r
- * @Date: 2024-05-30 15:59:37\r
- * @LastEditors: Caisking 3449750381@qq.com\r
- * @LastEditTime: 2024-08-20 16:04:44\r
- * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp\r
- */\r
+\r
 #include "AppViewIDs.h"\r
-#include "components/ui_label_ext.h"\r
-#include "ui_resource_string.h"\r
-#include "NativeAbility.h"\r
 #include "KeyInputListener.h"\r
-#include "custom_utils.h"\r
+#include "NativeAbility.h"\r
 #include "common/key_code.h"\r
+#include "components/ui_label_ext.h"\r
+#include "custom_utils.h"\r
+#include "ui_resource_string.h"\r
 \r
-#include "saveele/include/SaveElePresenter.h"\r
 #include "gfx_utils/mem_check.h"\r
-namespace OHOS\r
-{\r
+#include "saveele/include/SaveElePresenter.h"\r
+#include "vibrator_service.h"\r
+\r
+namespace OHOS {\r
 \r
-    // 当前Presenter属性实例化的内存指针\r
-    static SaveElePresenter *g_pSaveElePresenter = nullptr;\r
+// 当前Presenter属性实例化的内存指针\r
+static SaveElePresenter *g_pSaveElePresenter = nullptr;\r
 \r
-    SaveElePresenter::SaveElePresenter()\r
-    {\r
+SaveElePresenter::SaveElePresenter() {\r
 #ifdef MEM_CHECK\r
-        MemCheck::GetInstance()->EnableLeakCheck(true);\r
+  MemCheck::GetInstance()->EnableLeakCheck(true);\r
 #endif\r
-        g_pSaveElePresenter = this;\r
-    }\r
+  g_pSaveElePresenter = this;\r
+}\r
 \r
-    SaveElePresenter::~SaveElePresenter()\r
-    {\r
+SaveElePresenter::~SaveElePresenter() {\r
 #ifdef MEM_CHECK\r
-        MemCheck::GetInstance()->EnableLeakCheck(false);\r
+  MemCheck::GetInstance()->EnableLeakCheck(false);\r
 #endif\r
-        g_pSaveElePresenter = nullptr;\r
-    }\r
-\r
-    SaveElePresenter *SaveElePresenter::GetInstance()\r
-    {\r
-\r
-        return g_pSaveElePresenter;\r
-    }\r
-\r
-    void SaveElePresenter::OnStart()\r
-    {\r
-\r
-        Presenter<SaveEleView>::OnStart();\r
-    }\r
-\r
-    void SaveElePresenter::OnPause(void)\r
-    {\r
-\r
-        Presenter<SaveEleView>::OnPause();\r
-    }\r
-\r
-    void SaveElePresenter::OnResume(void)\r
-    {\r
-\r
-        Presenter<SaveEleView>::OnResume();\r
-    }\r
-\r
-    void SaveElePresenter::OnStop(void)\r
-    {\r
-\r
-        Presenter<SaveEleView>::OnStop();\r
-    }\r
-\r
-    bool SaveElePresenter::OnDrag(UIView &view, const DragEvent &event)\r
-    {\r
-\r
-        if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&\r
-            (event.GetDeltaX() > 20) && (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY()))))\r
-        {\r
-            NativeAbility::GetInstance().Back();\r
-        }\r
-        UNUSED(view);\r
-        return true;\r
-    }\r
-\r
-    bool SaveElePresenter::OnClick(UIView &view, const ClickEvent &event)\r
-    {\r
-        if (strcmp(view.GetViewId(), SAVEBUTTONNO) == 0)\r
-        {\r
-            NativeAbility::GetInstance().Back();\r
-        }\r
-        if (strcmp(view.GetViewId(), SAVEBUTTONOK) == 0)\r
-        {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SAVEBAT);\r
-        }\r
-        return true;\r
-    }\r
-    bool SaveElePresenter::OnKeyAct(UIView &view, const KeyEvent &event)\r
-    {\r
-        unsigned short keyID = event.GetKeyId();\r
-        unsigned short keyState = event.GetState();\r
-        // 如果是power键,且是亮屏状态,按键释放就返回上一级\r
-        if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0)\r
-        {\r
-            NativeAbility::GetInstance().Back();\r
-        }\r
-        return true;\r
-    }\r
-}
\ No newline at end of file
+  g_pSaveElePresenter = nullptr;\r
+}\r
+\r
+SaveElePresenter *SaveElePresenter::GetInstance() {\r
+\r
+  return g_pSaveElePresenter;\r
+}\r
+\r
+void SaveElePresenter::OnStart() { Presenter<SaveEleView>::OnStart(); }\r
+\r
+void SaveElePresenter::OnPause(void) { Presenter<SaveEleView>::OnPause(); }\r
+\r
+void SaveElePresenter::OnResume(void) { Presenter<SaveEleView>::OnResume(); }\r
+\r
+void SaveElePresenter::OnStop(void) { Presenter<SaveEleView>::OnStop(); }\r
+\r
+bool SaveElePresenter::OnDrag(UIView &view, const DragEvent &event) {\r
+\r
+  if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT &&\r
+      (event.GetDeltaX() > 20) &&\r
+      (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY())))) {\r
+    NativeAbility::GetInstance().Back();\r
+  }\r
+  UNUSED(view);\r
+  return true;\r
+}\r
+\r
+bool SaveElePresenter::OnClick(UIView &view, const ClickEvent &event) {\r
+  if (strcmp(view.GetViewId(), SAVEBUTTONNO) == 0) {\r
+    NativeAbility::GetInstance().Back();\r
+  }\r
+  if (strcmp(view.GetViewId(), SAVEBUTTONOK) == 0) {\r
+    NativeAbility::GetInstance().ChangeSlice(VIEW_SAVEBAT);\r
+  }\r
+  return true;\r
+}\r
+bool SaveElePresenter::OnKeyAct(UIView &view, const KeyEvent &event) {\r
+  unsigned short keyID = event.GetKeyId();\r
+  unsigned short keyState = event.GetState();\r
+  // 如果是power键,且是亮屏状态,按键释放就返回上一级\r
+  if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) &&\r
+      keyState == 1 && uapi_get_screen_state() == 0) {\r
+    NativeAbility::GetInstance().Back();\r
+  }\r
+  return true;\r
+}\r
+\r
+bool SaveElePresenter::OnRotateEnd(UIView &view, const RotateEvent &event) {\r
+  WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,\r
+                "VolumeSliderEventListener::OnRotateEnd");\r
+//   ui_api_vibrate_once_func(); \r
+  return true;\r
+}\r
+} // namespace OHOS
\ No newline at end of file
index 14bbc29..24a8a2c 100644 (file)
  * @Date: 2024-04-15 10:55:58\r
  * @LastEditors: Caisking 3449750381@qq.com\r
  * @LastEditTime: 2024-08-09 14:41:32\r
- * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp\r
+ * @FilePath:\r
+ * /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp\r
  */\r
 \r
 #include "saveele/include/SaveEleView.h"\r
 #include "saveele/include/SaveElePresenter.h"\r
 \r
-#include "common/image_cache_manager.h"\r
 #include "UiConfig.h"\r
-#include "ui_resource_image.h"\r
-#include <ui_scroll_view.h>\r
+#include "common/image_cache_manager.h"\r
 #include "components/ui_button.h"\r
-#include "uicomponents/UIComponents.h"\r
-#include "ui_resource_string.h"\r
 #include "components/ui_scroll_view.h"\r
+#include "ui_resource_image.h"\r
+#include "ui_resource_string.h"\r
+#include "uicomponents/UIComponents.h"\r
+#include <ui_scroll_view.h>\r
+\r
+namespace OHOS {\r
+\r
+static SaveEleView *g_pSaveEleView{nullptr};\r
+static const uint32_t BACK_GROUND_COLOR = 0xfff6f6f6;\r
+\r
+static constexpr char *iconImgPath = "/user/res/Save_Ele/SaveEle.bin";\r
+static constexpr char *butnoImgPath = "/user/res/Save_Ele/Save_Error.bin";\r
+static constexpr char *butokImgPath = "/user/res/Save_Ele/Save_Right.bin";\r
+\r
+SaveEleView::SaveEleView() { g_pSaveEleView = this; }\r
+\r
+SaveEleView::~SaveEleView() {\r
+  UIViewGroup *tmpGroup = dynamic_cast<UIViewGroup *>(container_);\r
+  UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup);\r
+  g_pSaveEleView = nullptr;\r
+}\r
+\r
+SaveEleView *SaveEleView::GetInstance() { return g_pSaveEleView; }\r
+\r
+void SaveEleView::InitView() {\r
+  if (container_ == nullptr) {\r
+    container_ = new UIScrollView();\r
+    container_->SetPosition(0, 0, 466, 466);\r
+    container_->SetStyle(STYLE_BACKGROUND_OPA, 0);\r
+  }\r
+\r
+  /*初始化label*/\r
+  InitRollLabel(labeltitle, 83, 50, 300, 35, "labletitle", STR_POWER_SAVE_MODE,\r
+               DEFAULT_VECTOR_FONT_FILENAME, 30);\r
+  InitLabelExt(labelnote, 53, 217, 360, 200, "labletitle", STR_SAVENOTE,\r
+               DEFAULT_VECTOR_FONT_FILENAME, 30);\r
+  InitLabelExt(labelkown, 53, 385, 360, 100, "labelrecord", STR_SAVEBACK,\r
+               DEFAULT_VECTOR_FONT_FILENAME, 30);\r
+  labelkown->SetTextColor(Color::Orange());\r
+\r
+  /*初始化图片*/\r
+  InitImageView(iamgeicon, 188, 121, 80, 90, "saveicon", iconImgPath);\r
+\r
+  /*初始化按键*/\r
+  InitButton(buttonno, 110, 501, 100, 100, SAVEBUTTONNO);\r
+  buttonno->SetImageSrc(butnoImgPath, butnoImgPath);\r
+  buttonno->SetOnClickListener(presenter_);\r
+\r
+  InitButton(buttonok, 255, 501, 100, 100, SAVEBUTTONOK);\r
+  buttonok->SetImageSrc(butokImgPath, butokImgPath);\r
+  buttonok->SetOnClickListener(presenter_);\r
+\r
+  container_->Add(labeltitle);\r
+  container_->Add(labelnote);\r
+  container_->Add(labelkown);\r
+  container_->Add(iamgeicon);\r
+  container_->Add(buttonno);\r
+  container_->Add(buttonok);\r
+}\r
+\r
+void SaveEleView::OnStart() {\r
+\r
+  View<SaveElePresenter>::OnStart();\r
+\r
+  container_ = new UIScrollView();\r
+  if (container_ == nullptr) {\r
+    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail");\r
+    return;\r
+  }\r
+  container_->SetScrollBlankSize(35);\r
+  container_->SetReboundSize(50);\r
+  container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(),\r
+                          Screen::GetInstance().GetHeight());\r
+\r
+  container_->SetOnDragListener(presenter_);\r
+  container_->SetOnRotateListener(presenter_);\r
+  container_->SetRotateFactor(2);\r
+  container_->RequestFocus();\r
+  container_->SetTouchable(true);\r
+  container_->SetDraggable(true);\r
+  container_->SetStyle(STYLE_BACKGROUND_COLOR, BACK_GROUND_COLOR);\r
+  container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);\r
+\r
+  InitView();\r
+  SetContainerView(container_);\r
+  RootView::GetInstance()->SetOnKeyActListener(presenter_);\r
+}\r
+\r
+void SaveEleView::OnSetUpView() {\r
+  View<SaveElePresenter>::OnSetUpView();\r
+  Draw();\r
+}\r
+\r
+void SaveEleView::OnTearDownView() {\r
+  View<SaveElePresenter>::OnTearDownView();\r
+  return;\r
+}\r
 \r
-namespace OHOS\r
-{\r
-\r
-    static SaveEleView *g_pSaveEleView{nullptr};\r
-    static const uint32_t BACK_GROUND_COLOR = 0xfff6f6f6;\r
-\r
-    static constexpr char *iconImgPath = "/user/res/Save_Ele/SaveEle.bin";\r
-    static constexpr char *butnoImgPath = "/user/res/Save_Ele/Save_Error.bin";\r
-    static constexpr char *butokImgPath = "/user/res/Save_Ele/Save_Right.bin";\r
-\r
-    SaveEleView::SaveEleView()\r
-    {\r
-        g_pSaveEleView = this;\r
-    }\r
-\r
-    SaveEleView::~SaveEleView()\r
-    {\r
-        UIViewGroup *tmpGroup = dynamic_cast<UIViewGroup *>(container_);\r
-        UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup);\r
-        g_pSaveEleView = nullptr;\r
-    }\r
-\r
-    SaveEleView *SaveEleView::GetInstance()\r
-    {\r
-        return g_pSaveEleView;\r
-    }\r
-\r
-    void SaveEleView::InitView()\r
-    {\r
-        if (container_ == nullptr)\r
-        {\r
-            container_ = new UIScrollView();\r
-            container_->SetPosition(0, 0, 466, 466);\r
-            container_->SetStyle(STYLE_BACKGROUND_OPA, 0);\r
-        }\r
-\r
-        /*初始化label*/\r
-        InitLabelExt(labeltitle, 83, 50, 300, 35, "labletitle", STR_POWER_SAVE_MODE, DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-        InitLabelExt(labelnote, 53, 217, 360, 200, "labletitle", STR_SAVENOTE, DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-        InitLabelExt(labelkown, 53, 385, 360, 100, "labelrecord", STR_SAVEBACK, DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-        labelkown->SetTextColor(Color::Orange());\r
-\r
-        /*初始化图片*/\r
-        InitImageView(iamgeicon, 188, 121, 80, 90, "saveicon", iconImgPath);\r
-\r
-        /*初始化按键*/\r
-        InitButton(buttonno, 110, 501, 100, 100, SAVEBUTTONNO);\r
-        buttonno->SetImageSrc(butnoImgPath, butnoImgPath);\r
-        buttonno->SetOnClickListener(presenter_);\r
-\r
-        InitButton(buttonok, 255, 501, 100, 100, SAVEBUTTONOK);\r
-        buttonok->SetImageSrc(butokImgPath, butokImgPath);\r
-        buttonok->SetOnClickListener(presenter_);\r
-\r
-        container_->Add(labeltitle);\r
-        container_->Add(labelnote);\r
-        container_->Add(labelkown);\r
-        container_->Add(iamgeicon);\r
-        container_->Add(buttonno);\r
-        container_->Add(buttonok);\r
-    }\r
-\r
-    void SaveEleView::OnStart()\r
-    {\r
-\r
-        View<SaveElePresenter>::OnStart();\r
-\r
-        container_ = new UIScrollView();\r
-        if (container_ == nullptr)\r
-        {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail");\r
-            return;\r
-        }\r
-        container_->SetScrollBlankSize(35);\r
-        container_->SetReboundSize(50);\r
-        container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());\r
-\r
-        container_->SetOnDragListener(presenter_);\r
-        container_->SetTouchable(true);\r
-        container_->SetDraggable(true);\r
-        container_->SetStyle(STYLE_BACKGROUND_COLOR, BACK_GROUND_COLOR);\r
-        container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);\r
-\r
-        InitView();\r
-        SetContainerView(container_);\r
-        RootView::GetInstance()->SetOnKeyActListener(presenter_);\r
-    }\r
-\r
-    void SaveEleView::OnSetUpView()\r
-    {\r
-        View<SaveElePresenter>::OnSetUpView();\r
-        Draw();\r
-    }\r
-\r
-    void SaveEleView::OnTearDownView()\r
-    {\r
-        View<SaveElePresenter>::OnTearDownView();\r
-        return;\r
-    }\r
-\r
-    void SaveEleView::OnStop()\r
-    {\r
-        View<SaveElePresenter>::OnStop();\r
-        if (container_ != nullptr)\r
-        {\r
-            container_->RemoveAll();\r
-            delete container_;\r
-            container_ = nullptr;\r
-        }\r
-        RootView::GetInstance()->RemoveAll();\r
-        return;\r
-    }\r
+void SaveEleView::OnStop() {\r
+  View<SaveElePresenter>::OnStop();\r
+  if (container_ != nullptr) {\r
+    container_->RemoveAll();\r
+    delete container_;\r
+    container_ = nullptr;\r
+  }\r
+  RootView::GetInstance()->RemoveAll();\r
+  return;\r
 }\r
+} // namespace OHOS\r