From 692dea8cf2eda4af8fb8bb0fdf96b6875c9f2abe Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Thu, 22 Aug 2024 19:03:06 +0800 Subject: [PATCH] =?utf8?q?=E4=B8=8B=E6=8B=89=E7=95=8C=E9=9D=A2=E4=BC=98?= =?utf8?q?=E5=8C=96=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../dnotdisturb/src/DnotDisturbModel.cpp | 21 ++-- .../main/include/dropdown/DropDownCardPage1.h | 17 +++- .../nativeui/main/src/PullUpDownView.cpp | 4 +- .../main/src/dropdown/DropDownCardPage1.cpp | 96 ++++++++++++++++--- .../main/src/dropdown/DropDownCardPage2.cpp | 14 ++- .../config/target_config/brandy/config.py | 4 +- 6 files changed, 123 insertions(+), 33 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp index e3a78b104..fd110dcfc 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp @@ -1,21 +1,16 @@ -/*** - * @Date: 2024-08-12 10:11:33 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-08-20 14:05:51 - * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp - */ -/*** - * @Date: 2024-08-12 10:11:33 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-08-20 12:09:12 +/* + * @Author: luozheng 1732036298@qq.com + * @Date: 2024-08-20 19:16:00 + * @LastEditors: luozheng 1732036298@qq.com + * @LastEditTime: 2024-08-22 18:57:46 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/dnotdisturb/src/DnotDisturbModel.cpp */ #include "dnotdisturb/include/DnotDisturbModel.h" -#include "main/include/PullUpDownView.h" #include "main/include/MainViewSample.h" #include "MainModel.h" #include "ConfigModel.h" #include "../../../../../../../drivers/peripheral/utils/custom_runtime.h" +#include "main/include/dropdown/DropDownCardPage1.h" namespace OHOS { @@ -53,6 +48,10 @@ namespace OHOS if (PullUpDownView::GetInstance() != nullptr) { /*更新主界面下拉界面配置*/ + if(DropDownCardPage1::GetInstance() && DropDownCardPage1::GetInstance()->GetDropDownCardPage1_ToggleButton(DropDownCardPage1::toggleButton_DNOTDISTURB)) + { + DropDownCardPage1::GetInstance()->GetDropDownCardPage1_ToggleButton(DropDownCardPage1::toggleButton_DNOTDISTURB)->SetState(GetDoNotDisturbModeEnabled()); + } PullUpDownView::GetInstance()->UpdateDnotDisturbStatus(GetDoNotDisturbModeEnabled()); /*更新主界面配置*/ MainModel::GetInstance().setDialState(DialState::DO_NOT_DISTURB, GetDoNotDisturbModeEnabled()); diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/include/dropdown/DropDownCardPage1.h b/code/sdk/application/wearable/fd230app/nativeui/main/include/dropdown/DropDownCardPage1.h index 7e423a08b..0b9fa6740 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/include/dropdown/DropDownCardPage1.h +++ b/code/sdk/application/wearable/fd230app/nativeui/main/include/dropdown/DropDownCardPage1.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-21 11:54:00 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-21 16:10:27 + * @LastEditTime: 2024-08-22 17:38:26 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/include/dropdown/DropDownCardPage1.h */ #ifndef __DROPDOWN_CARD_PAGE1_H__ @@ -26,7 +26,20 @@ namespace OHOS const char *selectImg; const char *unselectImg; bool isTouchable; + bool state; }; + enum toggleButtonid : uint8_t + { + toggleButton_BT = 0, // 蓝牙开关 + toggleButton_4G, // 4G开关 + toggleButton_ALIPAY, // 支付宝 + toggleButton_SAVEPOWER, // 省电模式开关 + toggleButton_SLEEP, // 睡眠开关 + toggleButton_DNOTDISTURB, // 勿扰开关 + toggleButton_SETTING, // 设置 + toggleButton_MAX, + }; + DropDownCardPage1(); ~DropDownCardPage1(); static DropDownCardPage1 *GetInstance(void); @@ -39,7 +52,7 @@ namespace OHOS private: UIToggleButton *ToggleButtonInit(ToggleButtonConfig &toggleButtonConfig); - UIToggleButton *toggleButton[7]{nullptr}; + UIToggleButton *toggleButton[toggleButton_MAX]{nullptr}; }; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp index ad2ac85e9..74a243edb 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-26 18:14:24 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-22 16:35:46 + * @LastEditTime: 2024-08-22 17:53:56 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp */ @@ -683,7 +683,7 @@ namespace OHOS { // 获取各个组件的可见状态 bool mobileDataVisible = MobileData->IsVisible(); // 移动数据 - bool hdVisible = HD->IsVisible(); // HD + bool hdVisible = HD->IsVisible(); // HD [VoLTE开关] bool signal4Visible = Singal_4->IsVisible(); // 4G bool noSignalVisible = NoSignal->IsVisible(); // 无信号 diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage1.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage1.cpp index daeb928e5..cb118b07a 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage1.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage1.cpp @@ -2,14 +2,21 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-21 11:54:00 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-21 20:12:22 + * @LastEditTime: 2024-08-22 18:54:22 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage1.cpp */ #include "main/include/dropdown/DropDownCardPage1.h" #include "wearable_log.h" #include "iostream" #include "string" - +#include "AppViewIDs.h" +#include "NativeAbility.h" +#include "dnotdisturb/include/DnotDisturbModel.h" +#include "main/include/MainModel.h" +#include +#include "ConfigModel.h" +#include "../../../../../../../drivers/peripheral/slip/cat1Service/cat1_ctl.h" +#include namespace OHOS { // viewId @@ -63,9 +70,65 @@ namespace OHOS bool DropDownCardPage1::OnClick(UIView &view, const ClickEvent &event) { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DropDownCardPage1::OnClick"); std::string viewId = view.GetViewId(); - + bool state; + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DropDownCardPage1::OnClick %s ", view.GetViewId()); + if (viewId == DROPDOWN_BT_TOGGLEBUTTON_VIEWID) // 蓝牙开关 + { + state = toggleButton[DropDownCardPage1::toggleButton_BT]->GetState(); + if (state) + { + start_custom_ble_service(); // 主动开启蓝牙 + ConfigModel::GetInstance()->SetClassicBlueToothState(true); + } + else + { + stop_custom_ble_service(); + ConfigModel::GetInstance()->SetClassicBlueToothState(false); + } + } + else if (viewId == DROPDOWN_4G_TOGGLEBUTTON_VIEWID) // 4G开关 + { + state = toggleButton[DropDownCardPage1::toggleButton_4G]->GetState(); + if (state) + { + uapi_set4GCapability(true); + ConfigModel::GetInstance()->SetCat1_4Gability(uapi_cat1_get_power_stat()); + } + else + { +#if defined(A5133_DEMO_CLIENT) || defined(A5133_DEMO_SERVER) + uapi_set4GCapability(true); +#else + uapi_set4GCapability(false); +#endif + ConfigModel::GetInstance()->SetCat1_4Gability(uapi_cat1_get_power_stat()); + } + } + else if (viewId == DROPDOWN_ALIPAY_TOGGLEBUTTON_VIEWID) // 支付宝 + { +#ifdef SUPPORT_ALIPAY_SEC + NativeAbility::GetInstance().EnterSlice(VIEW_MAIN_ALIPAY); +#endif + } + else if (viewId == DROPDOWN_SAVEPOWER_TOGGLEBUTTON_VIEWID) // 省电模式开关 + { + state = toggleButton[DropDownCardPage1::toggleButton_SAVEPOWER]->GetState(); + NativeAbility::GetInstance().EnterSlice(VIEW_SAVEELE); + } + else if (viewId == DROPDOWN_SLEEP_TOGGLEBUTTON_VIEWID) // 睡眠开关 + { + state = toggleButton[DropDownCardPage1::toggleButton_SLEEP]->GetState(); + } + else if (viewId == DROPDOWN_DNOTDISTURB_TOGGLEBUTTON_VIEWID) // 勿扰开关 + { + state = toggleButton[DropDownCardPage1::toggleButton_DNOTDISTURB]->GetState(); + DnotDisturbModel::GetInstance().SetDoNotDisturbModeEnabled(state); + } + else if (viewId == DROPDOWN_SETTING_TOGGLEBUTTON_VIEWID) // 设置 + { + NativeAbility::GetInstance().EnterSlice(VIEW_SETTING); + } return true; } @@ -95,6 +158,7 @@ namespace OHOS toggleButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00); toggleButton->SetStyle(STYLE_BORDER_RADIUS, 200); toggleButton->SetImages(toggleButtonConfig.selectImg, toggleButtonConfig.unselectImg); + toggleButton->SetState(toggleButtonConfig.state); toggleButton->SetTouchable(toggleButtonConfig.isTouchable); toggleButton->SetOnClickListener(this); @@ -104,18 +168,24 @@ namespace OHOS bool DropDownCardPage1::InitPage(void) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DropDownCardPage1::InitPage"); - int size = sizeof(toggleButton) / sizeof(toggleButton[0]); + + bool state_bt = ConfigModel::GetInstance()->GetClassicBlueToothState(); // 传统蓝牙开关 + bool state_4g = uapi_cat1_get_power_stat(); + bool state_savepower = uapi_dev_runtime_get_saveele_status(); + bool state_sleep = uapi_dev_runtime_get_sleep_monitoring_status(); + bool state_dnotdisturb = DnotDisturbModel::GetInstance().GetDoNotDisturbModeEnabled(); + ToggleButtonConfig toggleButtonConfig[] = { - {0, 0, 100, 100, DROPDOWN_BT_TOGGLEBUTTON_VIEWID, DROPDOWN_BT_CONNECT_IMAGE, DROPDOWN_BT_DISCONNECT_IMAGE, true}, - {110, 0, 100, 100, DROPDOWN_4G_TOGGLEBUTTON_VIEWID, DROPDOWN_4G_ON_IMAGE, DROPDOWN_4G_OFF_IMAGE, true}, - {220, 0, 100, 100, DROPDOWN_ALIPAY_TOGGLEBUTTON_VIEWID, DROPDOWN_ALIPAY_IMAGE, DROPDOWN_ALIPAY_IMAGE, true}, - {330, 0, 100, 100, DROPDOWN_SAVEPOWER_TOGGLEBUTTON_VIEWID, DROPDOWN_SAVEPOWER_ON_IMAGE, DROPDOWN_SAVEPOWER_OFF_IMAGE, true}, - {55, 100, 100, 100, DROPDOWN_SLEEP_TOGGLEBUTTON_VIEWID, DROPDOWN_SLEEP_ON_IMAGE, DROPDOWN_SLEEP_OFF_IMAGE, true}, - {165, 100, 100, 100, DROPDOWN_DNOTDISTURB_TOGGLEBUTTON_VIEWID, DROPDOWN_DNOTDISTURB_ON_IMAGE, DROPDOWN_DNOTDISTURB_OFF_IMAGE, true}, - {275, 100, 100, 100, DROPDOWN_SETTING_TOGGLEBUTTON_VIEWID, DROPDOWN_SETTING_IMAGE, DROPDOWN_SETTING_IMAGE, true}, + {0, 0, 100, 100, DROPDOWN_BT_TOGGLEBUTTON_VIEWID, DROPDOWN_BT_CONNECT_IMAGE, DROPDOWN_BT_DISCONNECT_IMAGE, true, state_bt}, + {110, 0, 100, 100, DROPDOWN_4G_TOGGLEBUTTON_VIEWID, DROPDOWN_4G_ON_IMAGE, DROPDOWN_4G_OFF_IMAGE, true, state_4g}, + {220, 0, 100, 100, DROPDOWN_ALIPAY_TOGGLEBUTTON_VIEWID, DROPDOWN_ALIPAY_IMAGE, DROPDOWN_ALIPAY_IMAGE, true, true}, + {330, 0, 100, 100, DROPDOWN_SAVEPOWER_TOGGLEBUTTON_VIEWID, state_savepower ? DROPDOWN_SAVEPOWER_ON_IMAGE : DROPDOWN_SAVEPOWER_OFF_IMAGE, state_savepower ? DROPDOWN_SAVEPOWER_ON_IMAGE : DROPDOWN_SAVEPOWER_OFF_IMAGE, true, state_savepower}, + {55, 100, 100, 100, DROPDOWN_SLEEP_TOGGLEBUTTON_VIEWID, DROPDOWN_SLEEP_ON_IMAGE, DROPDOWN_SLEEP_OFF_IMAGE, true, state_sleep}, + {165, 100, 100, 100, DROPDOWN_DNOTDISTURB_TOGGLEBUTTON_VIEWID, DROPDOWN_DNOTDISTURB_ON_IMAGE, DROPDOWN_DNOTDISTURB_OFF_IMAGE, true, state_dnotdisturb}, + {275, 100, 100, 100, DROPDOWN_SETTING_TOGGLEBUTTON_VIEWID, DROPDOWN_SETTING_IMAGE, DROPDOWN_SETTING_IMAGE, true, true}, }; - for (int i = 0; i < size; i++) + for (int i = 0; i < toggleButton_MAX; i++) { if (toggleButton[i] == nullptr) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage2.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage2.cpp index b73e6a0a9..7647e2c83 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage2.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage2.cpp @@ -2,14 +2,15 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-21 11:54:00 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-21 16:44:08 + * @LastEditTime: 2024-08-22 19:01:37 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/dropdown/DropDownCardPage2.cpp */ #include "main/include/dropdown/DropDownCardPage2.h" #include "wearable_log.h" #include "iostream" #include "string" - +#include "AppViewIDs.h" +#include "NativeAbility.h" namespace OHOS { // viewId @@ -45,7 +46,14 @@ namespace OHOS { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DropDownCardPage2::OnClick"); std::string viewId = view.GetViewId(); - + if (viewId == DROPDOWN_FINDPHONE_TOGGLEBUTTON_VIEWID) + { + NativeAbility::GetInstance().EnterSlice(VIEW_FIND_PHONE); + } + else if (viewId == DROPDOWN_LIGHTING_TOGGLEBUTTON_VIEWID) + { + NativeAbility::GetInstance().EnterSlice(VIEW_FLASHLIGHT); + } return true; } diff --git a/code/sdk/build/config/target_config/brandy/config.py b/code/sdk/build/config/target_config/brandy/config.py index 450299e77..ed4299fdd 100755 --- a/code/sdk/build/config/target_config/brandy/config.py +++ b/code/sdk/build/config/target_config/brandy/config.py @@ -210,12 +210,12 @@ target = { }, 'brandy-native-js-ct': { 'base_target_name': 'brandy-native-js', - 'defines': ['SUPPORT_TELECOM_DMP'], + 'defines': ['SUPPORT_TELECOM_DMP'], #电信 'fs_image_path':'fd230', }, 'brandy-native-js-cm': { 'base_target_name': 'brandy-native-js', - 'defines': ['SUPPORT_CHINA_MOBILE_DMP'], + 'defines': ['SUPPORT_CHINA_MOBILE_DMP'], #移动 'fs_image_path':'fd230', }, 'brandy-native-js-obu': { -- 2.17.1