From 592974441a4df95fffd9167c90192da1a390b1c2 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 06 六月 2023 11:51:12 +0800
Subject: [PATCH] Merge branch 'Dev-Branch'

---
 HDL_ON/UI/UI2/FuntionControlView/Electrical/SocketPage.cs |   39 +++++++++++++++++++++++++++++++++------
 1 files changed, 33 insertions(+), 6 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/Electrical/SocketPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Electrical/SocketPage.cs
index 72ba698..c5c93da 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Electrical/SocketPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Electrical/SocketPage.cs
@@ -154,7 +154,8 @@
                     TextAlignment = TextAlignment.Center,
                     TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                     TextColor = CSS_Color.TextualColor,
-                    TextID = StringId.InstantaneousValue
+                    TextID = StringId.InstantaneousValue,
+                    IsMoreLines = true
                 };
                 controlView.AddChidren(btnInstantaneousValueText);
                 EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
@@ -179,7 +180,7 @@
                     Text = function.GetAttrState("total_electricity"),
                     TextAlignment = TextAlignment.BottomLeft,
                 };
-                btnTotalElectricity.Width = btnTotalElectricity.GetTextWidth();
+                btnTotalElectricity.Width = btnTotalElectricity.GetTextWidth()+ Application.GetRealWidth(5);
                 controlView.AddChidren(btnTotalElectricity);
                 var btnTotalElectricityUnit = new Button()
                 {
@@ -198,12 +199,13 @@
                 {
                     X = Application.GetRealWidth(200),
                     Y = btnTotalElectricity.Bottom,
-                    Width = Application.GetRealWidth(235),
+                    Width = Application.GetRealWidth(100),
                     Height = Application.GetRealHeight(29),
                     TextAlignment = TextAlignment.CenterLeft,
                     TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                     TextColor = CSS_Color.TextualColor,
-                    TextID = StringId.CumulativePowerConsumption
+                    TextID = StringId.CumulativePowerConsumption,
+                    IsMoreLines = true
                 };
                 controlView.AddChidren(btnTotalElectricityText);
                 EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
@@ -288,28 +290,53 @@
         {
             btnSwitchIcon.MouseUpEventHandler += (sender, e) =>
             {
+                if (!function.online)
+                {
+                    new Tip()
+                    {
+                        CloseTime = 1,
+                        Text = Language.StringByID(StringId.DeviceOfflineCannotOption),
+                        Direction = AMPopTipDirection.None,
+                    }.Show(MainPage.BaseView);
+                    return;
+                }
                 btnSwitchIcon.IsSelected = btnSwitch.IsSelected = !btnSwitchIcon.IsSelected;
 
                 new System.Threading.Thread(() =>
                 {
                     function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off";
-                    //Control.Send(CommandType_A.write, this.function);
                     System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                     d.Add("on_off", function.trait_on_off.curValue.ToString());
+                    if (function.attributes.Find((obj) => obj.key == "on_off_usb") != null) {
+                        d.Add("on_off_usb", function.trait_on_off.curValue.ToString());
+                    }
                     Control.Ins.SendWriteCommand(function, d);
                 })
                 { IsBackground = true }.Start();
             };
             btnSwitch.MouseUpEventHandler += (sender, e) =>
             {
+                if (!function.online)
+                {
+                    new Tip()
+                    {
+                        CloseTime = 1,
+                        Text = Language.StringByID(StringId.DeviceOfflineCannotOption),
+                        Direction = AMPopTipDirection.None,
+                    }.Show(MainPage.BaseView);
+                    return;
+                }
                 btnSwitch.IsSelected = btnSwitchIcon.IsSelected = !btnSwitch.IsSelected;
 
                 new System.Threading.Thread(() =>
                 {
                     function.trait_on_off.curValue = btnSwitch.IsSelected ? "on" : "off";
-                    //Control.Send(CommandType_A.write, this.function);
                     System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                     d.Add("on_off", function.trait_on_off.curValue.ToString());
+                    if (function.attributes.Find((obj) => obj.key == "on_off_usb") != null)
+                    {
+                        d.Add("on_off_usb", function.trait_on_off.curValue.ToString());
+                    }
                     Control.Ins.SendWriteCommand(function, d);
                 })
                 { IsBackground = true }.Start();

--
Gitblit v1.8.0