/* --------------------------------自定义封装 set与get方法 ------------------------------- */
-
- bool GetRaiseToWake(void);
-
- unsigned GetScreenBrightnessValue(void);
-
- void SetScreenDuration(unsigned int value);
- unsigned int GetScreenDuration(void);
-
bool GetClassicBlueToothState(void);
void SetLanguage(int languageid);
void SetDnotdisturb(bool state);
bool GetDnotdisturb(void);
+ /* ----------------------------- 屏幕与亮度相关set与get ----------------------------- */
void SetBrightness(int level);
int GetBrightness(void);
+
+ void SetScreenDuration(unsigned int value);
+ unsigned int GetScreenDuration(void);
+
+ void SetRaiseToWake(bool value);
+ bool GetRaiseToWake(void);
// -------------------------------------------------------------------------- */
private:
configmodel_item configmodel_item_key_name[CONFIGMODEL_ITEM_MAX] =
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-04-17 09:32:03
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-17 14:52:37
+ * @LastEditTime: 2024-04-18 15:44:00
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h
*/
#ifndef _CONFIG_MODEL_C_H_
*/
void initializeScreenDuration(void);
+/*
+ * @brief 初始化抬腕亮屏
+ */
+void initializeRaiseToWake(void);
#ifdef __cplusplus
#if __cplusplus
}
/* -------------------------------- set与get方法 ------------------------------- */
- bool ConfigModel::GetRaiseToWake(void)
+ /*
+ * @brief 设置抬腕亮屏是否开启
+ */
+ void ConfigModel::SetRaiseToWake(bool value)
{
- return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE);
+ set_condigData_Bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE,value);
}
- /// @brief 获取亮度值
- unsigned ConfigModel::GetScreenBrightnessValue(void)
+
+ /*
+ * @brief 获取抬腕亮屏是否开启
+ */
+ bool ConfigModel::GetRaiseToWake(void)
{
- return get_configData_int(CONFIGMODEL_ITEM_SCREEN_BRIGHTNESS_VALUE) ;
+ return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE);
}
/*
unsigned int time = OHOS::ConfigModel::GetInstance()->GetScreenDuration();
uapi_setScreenDuration(time);
}
+
+void initializeRaiseToWake(void)
+{
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "initializeRaiseToWake");
+ bool isOpen = OHOS::ConfigModel::GetInstance()->GetRaiseToWake();
+ if(isOpen == true)
+ {
+ uapi_take_to_wake(1);
+ }
+ else
+ {
+ uapi_take_to_wake(2);
+ }
+}
#ifdef __cplusplus
#if __cplusplus
}
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-04-12 20:11:04\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 10:23:37\r
+ * @LastEditTime: 2024-04-18 15:36:31\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h\r
*/\r
#ifndef DISPLAY_BRIGHTNESS_MODEL_H_\r
{\r
public:\r
static DisplayBrightnessModel *GetInstance(void);\r
- void SetRaiseToBrightnessCheckBoxButtonStatus(bool value);\r
bool RaiseToBrightnessCheckBoxButtonStatusInit(void);\r
bool ScreenDurationRadioButtonSlectStatusInit(void);\r
bool SelectScreenDurationLabelInit(void);\r
void SetScreenDurationTime(unsigned int time);\r
unsigned int GetScreenDurationTime(void);\r
+\r
private:\r
DisplayBrightnessModel();\r
- DisplayBrightnessModel(const DisplayBrightnessModel &);\r
- DisplayBrightnessModel &operator=(const DisplayBrightnessModel &);\r
+ DisplayBrightnessModel(const DisplayBrightnessModel &) = delete;\r
+ DisplayBrightnessModel &operator=(const DisplayBrightnessModel &) = delete;\r
virtual ~DisplayBrightnessModel();\r
-\r
- private:\r
- bool RaiseToBrightnessCheckBoxButtonState{false}; // 抬腕按钮状态 ,默认补选中\r
- unsigned int ScreenDurationTime{10000};\r
};\r
}\r
\r
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-02-18 09:10:05\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 10:59:11\r
+ * @LastEditTime: 2024-04-18 15:53:53\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h\r
*/\r
#ifndef _DISPLAY_BRIGHTNESS_PRESENTER_H\r
\r
namespace OHOS\r
{\r
+ static constexpr uint8_t WRIST_RAISE_TO_WAKE_ENABLED = 1;\r
+ static constexpr uint8_t WRIST_RAISE_TO_WAKE_DISENABLED = 2;\r
typedef enum\r
{\r
DISPLAYBRIGHTNESSVIEW = 0, // 屏幕与亮度视图(slice)\r
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-04-12 20:11:04
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-18 10:55:38
+ * @LastEditTime: 2024-04-18 15:34:22
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp
*/
#include "displaybrightness/include/DisplayBrightnessModel.h"
#include "displaybrightness/include/DisplayBrightnessPresenter.h"
#include "wearable_log.h"
-#include "cat1_ctl.h"
+#include "config/include/ConfigModel.h"
namespace OHOS
{
DisplayBrightnessModel::DisplayBrightnessModel()
{
- ConfigModel *p_ConfigModel = ConfigModel::GetInstance();
- RaiseToBrightnessCheckBoxButtonState = p_ConfigModel->GetRaiseToWake();
}
DisplayBrightnessModel::~DisplayBrightnessModel() {}
return &instance;
}
- /// @brief 设置抬腕亮屏按钮状态
- /// @param value true 开启 false 关闭
- void DisplayBrightnessModel::SetRaiseToBrightnessCheckBoxButtonStatus(bool value)
- {
- RaiseToBrightnessCheckBoxButtonState = value;
- }
+
- /// @brief 显示与亮度及其子视图中的组件状态初始化
- /// @param value true 开启 false 关闭
- /// @return true 初始化成功 false 初始化失败
+ /*
+ * @brief 抬腕亮屏按钮状态设置
+ */
bool DisplayBrightnessModel::RaiseToBrightnessCheckBoxButtonStatusInit(void)
{
DisplayBrightnessPresenter *displayBrightnessPresent = DisplayBrightnessPresenter::GetInstance();
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DisplayBrightnessViewAndSubViewComponentsStatusInit DisplayBrightnessPresenter GetInstance fail");
return false;
}
- displayBrightnessPresent->SetRaiseToBrightnessState(RaiseToBrightnessCheckBoxButtonState); // 抬腕按钮的状态
+ displayBrightnessPresent->SetRaiseToBrightnessState(ConfigModel::GetInstance()->GetRaiseToWake()); // 抬腕按钮的状态
return true;
}
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-03-30 09:14:38\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 11:16:04\r
+ * @LastEditTime: 2024-04-18 15:54:44\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp\r
*/\r
#include "AppViewIDs.h"\r
#include <custom_utils.h>\r
#include "map"\r
#include "iostream"\r
+#include "config/include/ConfigModel.h"\r
namespace OHOS\r
{\r
// 当前Presenter属性实例化的内存指针\r
if (value != false)\r
{\r
displayBrightnessView->SetRaiseToBrightnessCheckBoxButtonState(UICheckBox::UICheckBoxState::SELECTED);\r
- DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false); // 将Model层保存的状态清除\r
}\r
}\r
\r
{\r
case UICheckBox::SELECTED:\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched on!");\r
+ uapi_take_to_wake(WRIST_RAISE_TO_WAKE_ENABLED);\r
+ ConfigModel::GetInstance()->SetRaiseToWake(true);\r
break;\r
case UICheckBox::UNSELECTED:\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched off!");\r
+ uapi_take_to_wake(WRIST_RAISE_TO_WAKE_DISENABLED);\r
+ ConfigModel::GetInstance()->SetRaiseToWake(false);\r
break;\r
default:\r
break;\r
delete RaiseToBrightnessImage;\r
RaiseToBrightnessImage = nullptr;\r
\r
- state = GetRaiseToBrightnessCheckBoxButtonState();\r
- if (state == UICheckBox::UICheckBoxState::SELECTED)\r
- {\r
- DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(true);\r
- ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, true);\r
- }\r
- else\r
- {\r
- DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false);\r
- ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, false);\r
- }\r
-\r
delete RaiseToBrightnessCheckBoxButton;\r
RaiseToBrightnessCheckBoxButton = nullptr;\r
\r
return true;\r
}\r
\r
- // 3.切换到“亮屏时长”视图\r
+ // 2.切换到“亮屏时长”视图\r
bool DisplayBrightnessView::ChangeScreenDurationView(int16_t thisView)\r
{\r
if (DisplayBrightnessScrollView[thisView] == nullptr)\r
BrightnessControlViewSlider->SetForegroundStyle(STYLE_BACKGROUND_OPA, 0xff);
BrightnessControlViewSlider->SetDraggable(true);
ConfigModel *p_ConfigModel = ConfigModel::GetInstance();
- unsigned int value = p_ConfigModel->GetScreenBrightnessValue();
+ unsigned int value = p_ConfigModel->GetBrightness();
BrightnessControlViewSlider->SetValue(value);
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-02-19 10:39:08\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-01 19:33:48\r
+ * @LastEditTime: 2024-04-18 18:05:12\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/include/SoundAndVibrationPresenter.h\r
*/\r
#ifndef SOUND_AND_VIBRATION_PRESENTER_H\r
#define SOUND_AND_VIBRATION_PRESENTER_H\r
\r
#include "Presenter.h"\r
+#include "View.h"\r
#include "SoundAndVibrationView.h"\r
-#include "KeyInputListener.h"\r
#include "soundandvibration/include/SoundAndVibrationModel.h"\r
\r
namespace OHOS\r
{\r
- class SoundAndVibrationViewOnChangeListener : public UICheckBox::OnChangeListener\r
- {\r
- public:\r
- SoundAndVibrationViewOnChangeListener(UIView *view)\r
- {\r
- view_ = view;\r
- }\r
-\r
- ~SoundAndVibrationViewOnChangeListener() {}\r
-\r
- bool OnChange(UICheckBox::UICheckBoxState state) override;\r
-\r
- private:\r
- UIView *view_{nullptr};\r
- };\r
\r
class SoundAndVibrationView;\r
class SoundAndVibrationPresenter : public Presenter<SoundAndVibrationView>,\r
public UIView::OnClickListener,\r
public RootView::OnKeyActListener,\r
+ public UICheckBox::OnChangeListener,\r
public UIView::OnDragListener\r
{\r
public:\r
void OnStop() override;\r
\r
static SoundAndVibrationPresenter *GetInstance();\r
- void VibrationReminderToggleButtonStateSetting(bool value);\r
void SilentModeToggleButtonStateSetting(bool value);\r
\r
private:\r
bool OnDrag(UIView &view, const DragEvent &event) override;\r
bool OnDragEnd(UIView &view, const DragEvent &event) override;\r
bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
-\r
- private:\r
- UIView *view_{nullptr};\r
+ bool OnChange(UICheckBox::UICheckBoxState state) override;\r
};\r
} // namespace OHOS\r
\r
#include "components/ui_button.h"\r
#include "components/ui_image_view.h"\r
#include "components/ui_toggle_button.h"\r
+#include "iostream"\r
namespace OHOS\r
{\r
/* ----------------------------------- 图片 ----------------------------------- */\r
static constexpr const char *PNG_CALL_VOLUME_IMAGE = "/user/res/SoundAndVibration/CALL_VOLUME.bin"; // 通话音量图片\r
static constexpr const char *PNG_MEDIA_VOLUME_IMAGE = "/user/res/SoundAndVibration/MEDIA_VOLUME.bin"; // 媒体音量图片\r
/* ---------------------------------- 组件ID ---------------------------------- */\r
- static const char *SYSTEM_VOLUME_BUTTON = "SystemVolumeButton"; // 系统音量按钮ID\r
- static const char *CALL_VOLUME_BUTTON = "CallVolumeButton"; // 通话音量按钮ID\r
- static const char *MEDIA_VOLUME_BUTTON = "MediaVolumeButton"; // åª\92ä½\93é\9f³é\87\8fæ\8c\89é\92®ID\r
+ static const char *SYSTEM_VOLUME_BUTTON = "SystemVolumeButton"; // 系统音量按钮ID\r
+ static const char *CALL_VOLUME_BUTTON = "CallVolumeButton"; // 通话音量按钮ID\r
+ static const char *VIBRATION_REMINDER_BUTTON = "VibrationReminderButton"; // é\9c\87å\8a¨æ¨¡å¼\8fæ\8c\89é\92®ID\r
class SoundAndVibrationPresenter;\r
class SoundAndVibrationView : public View<SoundAndVibrationPresenter>\r
{\r
int16_t height;\r
int16_t fontSize; // 字体大小\r
int16_t lineHeigh; // 行高\r
- const char *text; // 文本\r
+ std::string text; // 文本\r
uint8_t lineBreakMode; // 断行模式。\r
};\r
struct ButtonConfig\r
int16_t h;\r
const char *ViewId;\r
int64_t BackgroundColorValue; // 按钮背景颜色值\r
- int64_t TriggeredBackgroundColorValue; // 点击按钮触发的背景颜色值\r
};\r
SoundAndVibrationView();\r
virtual ~SoundAndVibrationView();\r
static SoundAndVibrationView *GetInstance(void);\r
\r
- void SetVibrationReminderToggleButtonState(bool value);\r
void SetSilentModeToggleButtonState(bool value);\r
- bool GetVibrationReminderToggleButtonState(void);\r
bool GetSilentModeToggleButtonState(void);\r
- UIToggleButton * GetVibrationReminderToggleButton();\r
- UIToggleButton * GetSilentModeToggleButton();\r
+ UIToggleButton *GetSilentModeToggleButton();\r
\r
void OnStart() override;\r
void OnSetUpView() override;\r
void ClearAll(void);\r
UIButton *SetUpButton(ButtonConfig &buttonconfig, UIView::OnClickListener *clickListener);\r
UIImageView *SetUpImageVIew(ImageConfig &imageconfig);\r
- UILabel *SetUpLabel(LabelConfig &labelConfig);\r
+ UILabelExt *SetUpLabel(LabelConfig &labelConfig);\r
bool InitSoundAndVibrationScrollView(void);\r
bool InitSoundAndVibrationViewTitleLabel(void);\r
bool InitSoundAndVibrationButtonView(void);\r
\r
private:\r
UIScrollView *SoundAndVibrationScrollView{nullptr};\r
- UILabel *Title{nullptr}; // 标题:“声音与震动”\r
- UIButton *SystemVolumeButton{nullptr}; // 系统音量按钮\r
- UIButton *CallVolumeButton{nullptr}; // 通话音量按钮\r
- UIButton *MediaVolumeButton{nullptr}; // 媒体音量按钮\r
- UILabel *SystemVolumeLabel{nullptr}; // 系统音量标签\r
- UILabel *CallVolumeLabel{nullptr}; // 通话音量标签\r
- UILabel *MediaVolumeLabel{nullptr}; // 媒体音量标签\r
- UILabel *VibrationReminderLabel{nullptr}; // 震动提醒标签\r
- UILabel *SilentModeLabel{nullptr}; // 静音模式标签\r
- UILabel *reminder[4]{nullptr}; // 提示标签\r
- UIImageView *nextImageView[3]{nullptr}; // 箭头图片\r
- UIImageView *VibrationReminderImageView{nullptr}; //\r
- UIImageView *SilentModeImageView{nullptr}; //\r
- UIToggleButton *VibrationReminderToggleButton{nullptr}; // 震动提醒切换按钮\r
- UIToggleButton *SilentModeToggleButton{nullptr}; // 静音模式切换按钮\r
- UICheckBox::OnChangeListener *VibrationReminderToggleButtonChangeListener{nullptr};\r
- UICheckBox::OnChangeListener *SilentModeToggleButtonChangeListener{nullptr};\r
+ UILabelExt *Title{nullptr}; // 标题:“声音与震动”\r
+ UIButton *SystemVolumeButton{nullptr}; // 系统音量按钮\r
+ UIButton *CallVolumeButton{nullptr}; // 通话音量按钮\r
+ UIButton *VibrationReminderButton{nullptr}; // 震动提醒按钮\r
+ UILabelExt *SystemVolumeLabel{nullptr}; // 系统音量标签\r
+ UILabelExt *CallVolumeLabel{nullptr}; // 通话音量标签\r
+ UILabelExt *VibrationReminderLabel{nullptr}; // 震动提醒标签\r
+ UILabelExt *SilentModeLabel{nullptr}; // 静音模式标签\r
+ // UILabelExt *reminder[4]{nullptr}; // 提示标签\r
+ UIImageView *nextImageView[3]{nullptr}; // 箭头图片\r
+ UIImageView *VibrationReminderImageView{nullptr}; //\r
+ UIImageView *SilentModeImageView{nullptr}; //\r
+ UIToggleButton *SilentModeToggleButton{nullptr}; // 静音模式切换按钮\r
bool initViewStatus{false};\r
};\r
} // namespace OHOS\r
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-02-23 09:17:00
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-01 18:19:45
+ * @LastEditTime: 2024-04-18 18:03:36
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationModel.cpp
*/
#include "soundandvibration/include/SoundAndVibrationModel.h"
VibrationReminderToggleButtonState = value;
}
- /// @brief “震动提醒”切换按钮状态初始化
- /// @param void
- /// @return true 初始化成功 false 初始化失败
- bool SoundAndVibrationModel::VibrationReminderToggleButtonStatusInit(void)
- {
- SoundAndVibrationPresenter *p_SoundAndVibrationPresenter = SoundAndVibrationPresenter::GetInstance();
- if (p_SoundAndVibrationPresenter == nullptr)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminderToggleButtonStatusInit SoundAndVibrationPresenter GetInstance fail!");
- return false;
- }
- p_SoundAndVibrationPresenter->VibrationReminderToggleButtonStateSetting(VibrationReminderToggleButtonState);
- return true;
- }
-
/// @brief 设置“静音模式”是否开启
/// @param value
void SoundAndVibrationModel::SetSilentModeToggleButtonStatus(bool value)
{
- SilentModeToggleButtonState = value;
+ ConfigModel::GetInstance()->SetSilentMode(value);
}
/// @brief “静音模式”切换按钮状态初始化
* @Author: luozheng 1732036298@qq.com\r
* @Date: 2024-02-19 10:39:11\r
* @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-02 09:14:23\r
+ * @LastEditTime: 2024-04-18 18:08:44\r
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationPresenter.cpp\r
*/\r
\r
#include "AppViewIDs.h"\r
#include "components/ui_label_ext.h"\r
-#include"language/font/ui_resource_string.h"\r
+#include "language/font/ui_resource_string.h"\r
#include "NativeAbility.h"\r
#include "graphic_math.h"\r
#include "string.h"\r
#include "common/key_code.h"\r
#include "custom_utils.h"\r
#include "config/include/ConfigModel.h"\r
+#include <ohos_types.h>\r
\r
namespace OHOS\r
{\r
return g_pSoundAndVibrationPresenter;\r
}\r
\r
- /// @brief "震动提醒"按钮状态设置\r
- /// @param value true 开启 false 关闭\r
- void SoundAndVibrationPresenter::VibrationReminderToggleButtonStateSetting(bool value)\r
- {\r
- SoundAndVibrationView *p_SoundAndVibrationView = SoundAndVibrationView::GetInstance();\r
- if (p_SoundAndVibrationView == nullptr)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminderToggleButtonStateSetting SoundAndVibrationView GetInstance fail!");\r
- return;\r
- }\r
- if (value != false)\r
- {\r
- p_SoundAndVibrationView->SetVibrationReminderToggleButtonState(true);\r
- }\r
- }\r
-\r
/// @brief "静音模式"按钮状态设置\r
/// @param value true 开启 false 关闭\r
void SoundAndVibrationPresenter::SilentModeToggleButtonStateSetting(bool value)\r
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationPresenter::OnDragEnd");\r
if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
+ NativeAbility::GetInstance().Back();\r
}\r
return true;\r
}\r
// 如果是power键,且是亮屏状态,按键释放就返回上一级\r
if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
+ NativeAbility::GetInstance().Back();\r
}\r
return true;\r
}\r
\r
bool SoundAndVibrationPresenter::OnClick(UIView &view, const ClickEvent &event)\r
{\r
-\r
- // 根据控件id查找是哪个控件触发了点击回调\r
UNUSED(event);\r
if (strcmp(view.GetViewId(), SYSTEM_VOLUME_BUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
- return true;\r
+ NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
}\r
else if (strcmp(view.GetViewId(), CALL_VOLUME_BUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
- return true;\r
+ NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
}\r
- else if (strcmp(view.GetViewId(), MEDIA_VOLUME_BUTTON) == 0)\r
+ else if (strcmp(view.GetViewId(), VIBRATION_REMINDER_BUTTON) == 0)\r
{\r
- NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
- return true;\r
+ NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
}\r
- return false;\r
+ return true;\r
}\r
\r
- bool SoundAndVibrationViewOnChangeListener::OnChange(UICheckBox::UICheckBoxState state)\r
+ bool SoundAndVibrationPresenter::OnChange(UICheckBox::UICheckBoxState state)\r
{\r
- SoundAndVibrationView *p_SoundAndVibrationView = SoundAndVibrationView::GetInstance();\r
- if (p_SoundAndVibrationView == nullptr)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::GetInstance fail!");\r
- return false;\r
- }\r
- SoundAndVibrationModel* p_SoundAndVibrationModel = SoundAndVibrationModel::GetInstance();\r
- ConfigModel *p_ConfigModel = ConfigModel::GetInstance();\r
+ SoundAndVibrationModel *p_SoundAndVibrationModel = SoundAndVibrationModel::GetInstance();\r
switch (state)\r
{\r
case UICheckBox::SELECTED:\r
- if (p_SoundAndVibrationView->GetVibrationReminderToggleButton() == (UIView *)view_)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminder is enable!");\r
- p_SoundAndVibrationModel->SetVibrationReminderToggleButtonStaus(true);\r
- p_ConfigModel->SetVibrationReminder(true);\r
- return true;\r
- }\r
- else if (p_SoundAndVibrationView->GetSilentModeToggleButton() == (UIView *)view_)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is enable!");\r
- p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(true);\r
- p_ConfigModel->SetSilentMode(true);\r
- return true;\r
- }\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is enable!");\r
+ p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(true);\r
break;\r
case UICheckBox::UNSELECTED:\r
- if (p_SoundAndVibrationView->GetVibrationReminderToggleButton() == (UIView *)view_)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminder is disable!");\r
- p_SoundAndVibrationModel->SetVibrationReminderToggleButtonStaus(false);\r
- p_ConfigModel->SetVibrationReminder(false);\r
- return true;\r
- }\r
- else if (p_SoundAndVibrationView->GetSilentModeToggleButton() == (UIView *)view_)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is disable!");\r
- p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(false);\r
- p_ConfigModel->SetSilentMode(false);\r
- return true;\r
- }\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is disable!");\r
+ p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(false);\r
break;\r
default:\r
break;\r
delete CallVolumeButton;\r
CallVolumeButton = nullptr;\r
\r
- delete MediaVolumeButton;\r
- MediaVolumeButton = nullptr;\r
+ delete VibrationReminderButton;\r
+ VibrationReminderButton = nullptr;\r
\r
delete SystemVolumeLabel;\r
SystemVolumeLabel = nullptr;\r
delete CallVolumeLabel;\r
CallVolumeLabel = nullptr;\r
\r
- delete MediaVolumeLabel;\r
- MediaVolumeLabel = nullptr;\r
-\r
delete VibrationReminderLabel;\r
VibrationReminderLabel = nullptr;\r
\r
delete SilentModeLabel;\r
SilentModeLabel = nullptr;\r
\r
- for (int i = 0; i < 4; i++)\r
- {\r
- delete reminder[i];\r
- reminder[i] = nullptr;\r
- }\r
+ // for (int i = 0; i < 4; i++)\r
+ // {\r
+ // delete reminder[i];\r
+ // reminder[i] = nullptr;\r
+ // }\r
\r
for (int i = 0; i < 3; i++)\r
{\r
delete SilentModeImageView;\r
SilentModeImageView = nullptr;\r
\r
- delete VibrationReminderToggleButtonChangeListener;\r
- VibrationReminderToggleButtonChangeListener = nullptr;\r
-\r
- delete SilentModeToggleButtonChangeListener;\r
- SilentModeToggleButtonChangeListener = nullptr;\r
-\r
- delete VibrationReminderToggleButton;\r
- VibrationReminderToggleButton = nullptr;\r
-\r
delete SilentModeToggleButton;\r
SilentModeToggleButton = nullptr;\r
\r
button->SetPosition(buttonconfig.x, buttonconfig.y, buttonconfig.w, buttonconfig.h);\r
button->SetViewId(buttonconfig.ViewId);\r
button->SetStyle(STYLE_BACKGROUND_COLOR, buttonconfig.BackgroundColorValue);\r
- button->SetStyleForState(STYLE_BACKGROUND_COLOR, buttonconfig.TriggeredBackgroundColorValue, UIButton::PRESSED);\r
+ button->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xffffffff, UIButton::PRESSED);\r
+ button->SetStyleForState(STYLE_BACKGROUND_OPA, 0x00, UIButton::PRESSED);\r
button->SetOnClickListener(clickListener);\r
return button;\r
}\r
}\r
\r
// 设置标签\r
- UILabel *SoundAndVibrationView::SetUpLabel(LabelConfig &labelConfig)\r
+ UILabelExt *SoundAndVibrationView::SetUpLabel(LabelConfig &labelConfig)\r
{\r
- UILabel *label = new UILabel();\r
+ UILabelExt *label = new UILabelExt();\r
if (label == nullptr)\r
{\r
return nullptr;\r
label->SetPosition(labelConfig.left, labelConfig.top, labelConfig.width, labelConfig.height); // 位置大小\r
label->SetStyle(STYLE_TEXT_FONT, labelConfig.fontSize); // 字体大小\r
label->SetStyle(STYLE_LINE_HEIGHT, labelConfig.lineHeigh); // 字体行高\r
- label->SetText(labelConfig.text); // 内容\r
+ label->SetText(labelConfig.text.c_str()); // 内容\r
label->SetLineBreakMode(labelConfig.lineBreakMode); // 断行模式。\r
- label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
+ //label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
+ label->SetRollSpeed(40);\r
label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, labelConfig.fontSize);\r
return label;\r
}\r
/// @return true 初始化成功 false 初始化失败\r
bool SoundAndVibrationView::InitSoundAndVibrationViewTitleLabel(void)\r
{\r
- Title = new UILabel();\r
+ Title = new UILabelExt();\r
if (Title == nullptr)\r
{\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::new Title fail!");\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::Title new fail!");\r
return false;\r
}\r
- Title->SetPosition(158, 52);\r
+ Title->SetPosition(93, 52, 280, 40);\r
Title->SetStyle(STYLE_TEXT_FONT, 30);\r
Title->SetStyle(STYLE_LINE_HEIGHT, 35);\r
Title->SetText("声音与震动");\r
- Title->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);\r
+ Title->SetLineBreakMode(UILabel::LINE_BREAK_MARQUEE);\r
Title->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
- Title->SetRollSpeed(6);\r
+ Title->SetRollSpeed(40);\r
Title->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);\r
\r
return true;\r
return false;\r
}\r
\r
- /* ---------------------------- MediaVolumeButton --------------------------- */\r
- if (!SetUpButtonAndCheck(MEDIA_VOLUME_BUTTON, 43, 360, MediaVolumeButton, ButtonClick))\r
+ /* ---------------------------- VibrationReminderButton --------------------------- */\r
+ if (!SetUpButtonAndCheck(VIBRATION_REMINDER_BUTTON, 43, 360, VibrationReminderButton, ButtonClick))\r
{\r
return false;\r
}\r
}\r
\r
/// @brief 为指定的按钮设置属性并进行错误检查\r
- /// @param viewId\r
- /// @param x\r
- /// @param y\r
- /// @param button\r
- /// @param listener\r
- /// @return true 设置成功 false 设置失败\r
bool SoundAndVibrationView::SetUpButtonAndCheck(const char *viewId, int x, int y, UIButton *&button, UIView::OnClickListener *listener)\r
{\r
ButtonConfig buttonconfig = {\r
.h = 100,\r
.ViewId = viewId,\r
.BackgroundColorValue = 0xff191919,\r
- .TriggeredBackgroundColorValue = 0xff29b862,\r
};\r
\r
button = SetUpButton(buttonconfig, listener);\r
return true;\r
}\r
\r
+ /*初始化声音与震动视图图片*/\r
bool SoundAndVibrationView::InitSoundAndVibrationImageView()\r
{\r
ImageConfig imageconfig = {\r
.x = 43,\r
- .y = 480,\r
+ .y = 360,\r
.w = 380,\r
.h = 100,\r
.ImageSrc = "/user/res/SETTING_BACKGROUND.bin",\r
return false;\r
}\r
\r
- imageconfig.y = 600;\r
+ imageconfig.y = 480;\r
SilentModeImageView = SetUpImageVIew(imageconfig);\r
if (SilentModeImageView == nullptr)\r
{\r
return true;\r
}\r
\r
+ /*初始化声音与震动视图标签*/\r
bool SoundAndVibrationView::InitSoundAndVibrationLabel(void)\r
{\r
LabelConfig labelConfig = {\r
.left = 90,\r
- .top = 140,\r
- .width = 120,\r
- .height = 35,\r
+ .top = 152,\r
+ .width = 250,\r
+ .height = 40,\r
.fontSize = 30,\r
.lineHeigh = 35,\r
- .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+ .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
};\r
/* ---------------------------- SystemVolumeLabel --------------------------- */\r
labelConfig.text = "系统音量";\r
return false;\r
}\r
/* ----------------------------- CallVolumeLabel ---------------------------- */\r
- labelConfig.top = 260;\r
+ labelConfig.top = 272;\r
labelConfig.text = "通话音量";\r
CallVolumeLabel = SetUpLabel(labelConfig);\r
if (CallVolumeLabel == nullptr)\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::CallVolumeLabel is nullptr!");\r
return false;\r
}\r
- /* ---------------------------- MediaVolumeLabel ---------------------------- */\r
- labelConfig.top = 380;\r
- labelConfig.text = "媒体音量";\r
- MediaVolumeLabel = SetUpLabel(labelConfig);\r
- if (MediaVolumeLabel == nullptr)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::MediaVolumeLabel is nullptr!");\r
- return false;\r
- }\r
- /* ------------------------- VibrationReminderLabel ------------------------- */\r
- labelConfig.top = 513;\r
- labelConfig.text = "震动提醒";\r
+ /* ---------------------------- VibrationReminderLabel ---------------------------- */\r
+ labelConfig.top = 392;\r
+ labelConfig.text = "震动模式";\r
VibrationReminderLabel = SetUpLabel(labelConfig);\r
if (VibrationReminderLabel == nullptr)\r
{\r
return false;\r
}\r
/* ----------------------------- SilentModeLabel ---------------------------- */\r
- labelConfig.top = 620;\r
+ labelConfig.top = 512;\r
labelConfig.text = "静音模式";\r
SilentModeLabel = SetUpLabel(labelConfig);\r
if (SilentModeLabel == nullptr)\r
return false;\r
}\r
/* -------------------------------------------------------------------------- */\r
- typedef struct\r
- {\r
- int top;\r
- char text[100];\r
- } LabelInfo;\r
-\r
- LabelInfo labelInfo[] = {\r
- {177, "闹钟、提醒、查找手表"},\r
- {297, "手表通话"},\r
- {417, "音乐、录音、训练"},\r
- {657, "系统音量不受影响"},\r
- };\r
- for (int i = 0; i < (int)(sizeof(labelInfo) / sizeof(labelInfo[0])); i++)\r
- {\r
- LabelConfig labelConfig = {\r
- .left = 90,\r
- .top = labelInfo[i].top,\r
- .width = 300,\r
- .height = 35,\r
- .fontSize = 20,\r
- .lineHeigh = 23,\r
- .text = labelInfo[i].text,\r
- .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
- };\r
-\r
- reminder[i] = SetUpLabel(labelConfig);\r
- if (reminder[i] == nullptr)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::reminder[%d] is nullptr!", i);\r
- return false;\r
- }\r
-\r
- reminder[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
- reminder[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
- reminder[i]->SetTextColor(Color::GetColorFromRGBA(0xfd, 0xfd, 0xfd, 0x7f));\r
- }\r
+ // typedef struct\r
+ // {\r
+ // int top;\r
+ // char text[100];\r
+ // } LabelInfo;\r
+\r
+ // LabelInfo labelInfo[] = {\r
+ // {177, "闹钟、提醒、查找手表"},\r
+ // {297, "手表通话"},\r
+ // {417, "音乐、录音、训练"},\r
+ // {657, "系统音量不受影响"},\r
+ // };\r
+ // for (int i = 0; i < (int)(sizeof(labelInfo) / sizeof(labelInfo[0])); i++)\r
+ // {\r
+ // LabelConfig labelConfig = {\r
+ // .left = 90,\r
+ // .top = labelInfo[i].top,\r
+ // .width = 300,\r
+ // .height = 35,\r
+ // .fontSize = 20,\r
+ // .lineHeigh = 23,\r
+ // .text = labelInfo[i].text,\r
+ // .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+ // };\r
+\r
+ // reminder[i] = SetUpLabel(labelConfig);\r
+ // if (reminder[i] == nullptr)\r
+ // {\r
+ // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::reminder[%d] is nullptr!", i);\r
+ // return false;\r
+ // }\r
+\r
+ // reminder[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
+ // reminder[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
+ // reminder[i]->SetTextColor(Color::GetColorFromRGBA(0xfd, 0xfd, 0xfd, 0x7f));\r
+ // }\r
return true;\r
}\r
\r
bool SoundAndVibrationView::InitSoundAndVibrationToggleButton(void)\r
{\r
- /* ---------------------- VibrationReminderToggleButton --------------------- */\r
- VibrationReminderToggleButton = new UIToggleButton();\r
- if (VibrationReminderToggleButton == nullptr)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::VibrationReminderToggleButton new fail!");\r
- return false;\r
- }\r
- VibrationReminderToggleButton->SetPosition(298, 505, 100, 50);\r
- VibrationReminderToggleButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);\r
- VibrationReminderToggleButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
- const char *ToggleButtonSelect = "/user/res/TOGGLEBUTTON_ON.bin";\r
- const char *ToggleButtonUnSelect = "/user/res/TOGGLEBUTTON_OFF.bin";\r
- VibrationReminderToggleButton->SetImages(ToggleButtonSelect, ToggleButtonUnSelect);\r
- VibrationReminderToggleButtonChangeListener = new SoundAndVibrationViewOnChangeListener(reinterpret_cast<UIView *>(VibrationReminderToggleButton));\r
- VibrationReminderToggleButton->SetOnChangeListener(VibrationReminderToggleButtonChangeListener);\r
/* ------------------------- SilentModeToggleButton ------------------------- */\r
SilentModeToggleButton = new UIToggleButton();\r
if (SilentModeToggleButton == nullptr)\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::SilentModeToggleButton new fail!");\r
return false;\r
}\r
- SilentModeToggleButton->SetPosition(298, 625, 100, 50);\r
+ SilentModeToggleButton->SetPosition(298, 505, 100, 50);\r
SilentModeToggleButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);\r
SilentModeToggleButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
+ const char *ToggleButtonSelect = "/user/res/TOGGLEBUTTON_ON.bin";\r
+ const char *ToggleButtonUnSelect = "/user/res/TOGGLEBUTTON_OFF.bin";\r
SilentModeToggleButton->SetImages(ToggleButtonSelect, ToggleButtonUnSelect);\r
- SilentModeToggleButtonChangeListener = new SoundAndVibrationViewOnChangeListener(reinterpret_cast<UIView *>(SilentModeToggleButton));\r
+ UICheckBox::OnChangeListener * SilentModeToggleButtonChangeListener = static_cast<UICheckBox::OnChangeListener *>(SoundAndVibrationPresenter::GetInstance());\r
SilentModeToggleButton->SetOnChangeListener(SilentModeToggleButtonChangeListener);\r
return true;\r
}\r
\r
- /// @brief 获取"震动提醒"按钮开,关状态\r
- /// @param void\r
- /// @return true 开 false 关\r
- bool SoundAndVibrationView::GetVibrationReminderToggleButtonState(void)\r
- {\r
- return VibrationReminderToggleButton->GetState();\r
- }\r
\r
/// @brief 获取"静音模式"按钮开,关状态\r
/// @param void\r
return SilentModeToggleButton->GetState();\r
}\r
\r
- /// @brief 设置"震动提醒"按钮开,关状态\r
- /// @param value\r
- void SoundAndVibrationView::SetVibrationReminderToggleButtonState(bool value)\r
- {\r
- VibrationReminderToggleButton->SetState(value);\r
- }\r
\r
/// @brief 设置"静音模式"按钮开,关状态\r
/// @param value\r
SilentModeToggleButton->SetState(value);\r
}\r
\r
- /// @brief 获取"震动提醒"切换按钮\r
- UIToggleButton *SoundAndVibrationView::GetVibrationReminderToggleButton(void)\r
- {\r
- return VibrationReminderToggleButton;\r
- }\r
\r
/// @brief 获取"静音模式"切换按钮\r
UIToggleButton *SoundAndVibrationView::GetSilentModeToggleButton(void)\r
{\r
return;\r
}\r
- if (SoundAndVibrationModel::GetInstance()->VibrationReminderToggleButtonStatusInit() == false)\r
- {\r
- return;\r
- }\r
if (SoundAndVibrationModel::GetInstance()->SilentModeToggleButtonStatusInit() == false)\r
{\r
return;\r
SoundAndVibrationScrollView->Add(Title);\r
SoundAndVibrationScrollView->Add(SystemVolumeButton);\r
SoundAndVibrationScrollView->Add(CallVolumeButton);\r
- SoundAndVibrationScrollView->Add(MediaVolumeButton);\r
+ SoundAndVibrationScrollView->Add(VibrationReminderButton);\r
SoundAndVibrationScrollView->Add(VibrationReminderImageView);\r
SoundAndVibrationScrollView->Add(SilentModeImageView);\r
SoundAndVibrationScrollView->Add(SystemVolumeLabel);\r
SoundAndVibrationScrollView->Add(CallVolumeLabel);\r
- SoundAndVibrationScrollView->Add(MediaVolumeLabel);\r
+ SoundAndVibrationScrollView->Add(VibrationReminderLabel);\r
SoundAndVibrationScrollView->Add(VibrationReminderLabel);\r
SoundAndVibrationScrollView->Add(SilentModeLabel);\r
- SoundAndVibrationScrollView->Add(reminder[0]);\r
- SoundAndVibrationScrollView->Add(reminder[1]);\r
- SoundAndVibrationScrollView->Add(reminder[2]);\r
- SoundAndVibrationScrollView->Add(reminder[3]);\r
+ // SoundAndVibrationScrollView->Add(reminder[0]);\r
+ // SoundAndVibrationScrollView->Add(reminder[1]);\r
+ // SoundAndVibrationScrollView->Add(reminder[2]);\r
+ // SoundAndVibrationScrollView->Add(reminder[3]);\r
SoundAndVibrationScrollView->Add(nextImageView[0]);\r
SoundAndVibrationScrollView->Add(nextImageView[1]);\r
SoundAndVibrationScrollView->Add(nextImageView[2]);\r
- SoundAndVibrationScrollView->Add(VibrationReminderToggleButton);\r
SoundAndVibrationScrollView->Add(SilentModeToggleButton);\r
RootView::GetInstance()->Add(SoundAndVibrationScrollView);\r
Draw();\r
* @Author: luozheng 1732036298@qq.com
* @Date: 2024-04-08 18:40:09
* @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-16 09:48:10
+ * @LastEditTime: 2024-04-18 18:42:24
* @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/weather/src/WeatherModel.cpp
*/
#include "weather/include/WeatherModel.h"
std::string WeatherModel::GetWeatherArea()
{
std::string city = Weather_data_t_address.city;
- std::string subLocality = Weather_data_t_address.city;
+ std::string subLocality = Weather_data_t_address.subLocality;
return (city + subLocality);
}
initScreenBrightness();
initializeScreenDuration();
+ initializeRaiseToWake();
LOS_Msleep(5000);
if ( poweron_cat1_on_bootup_flag() )