From d89a8ccb3d48d39f920b294c1966a3522ee8adbc Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期二, 23 二月 2021 17:17:37 +0800 Subject: [PATCH] 11 --- HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs | 162 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 99 insertions(+), 63 deletions(-) diff --git a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs index 5fdff81..8464dfc 100644 --- a/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs +++ b/HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs @@ -53,6 +53,7 @@ /// </summary> public void LoadFunctionDiv() { + //todo 澧炲姞璁惧锛屽鍔犲姛鑳藉垪琛ㄥ崱鐗� if (function == null) { this.RemoveFromParent(); @@ -60,36 +61,51 @@ } LoadDiv(); - if (function.functionCategory == FunctionCategory.Curtain || function.functionCategory == FunctionCategory.Music || function.functionCategory == FunctionCategory.Scene)//绐楀笜娌℃湁寮�鍏虫寜閽� + if (function.Spk_Prefix == FunctionCategory.Curtain//绐楀笜娌℃湁寮�鍏虫寜閽� + || function.Spk_Prefix == FunctionCategory.Music//闊充箰娌℃湁寮�鍏虫寜閽� + || function.Spk_Prefix == FunctionCategory.Sensor//浼犳劅鍣ㄦ病鏈夊紑鍏虫寜閽� + ) { - switch (function.functionCategory) + switch (function.Spk_Prefix) { case FunctionCategory.Curtain: - btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png"; + switch (function.spk) + { + case SPK.CurtainSwitch: + btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png"; + break; + case SPK.CurtainTrietex: + btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/MotorCurtainIcon.png"; + break; + case SPK.CurtainRoller: + btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/RollingShutterIcon.png"; + break; + } CurtainFragment(); + break; + case FunctionCategory.Sensor: + switch (function.spk) + { + case SPK.SensorPir: + btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorPirIcon.png"; + break; + case SPK.SensorWater: + btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorWaterImmersionIcon.png"; + break; + case SPK.SensorSmoke: + btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorSmokeIcon.png"; + break; + case SPK.SensorDoorWindow: + btnIcon.UnSelectedImagePath = "FunctionIcon/ArmSensor/ArmSensorDoorIcon.png"; + break; + + } break; case FunctionCategory.Music: btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicThinIcon.png"; MusicFragment(); break; - case FunctionCategory.Scene: - btnIcon.UnSelectedImagePath = "FunctionIcon/Scene/SceneIcon.png"; - if ((function as Scene).sceneType == SceneType.MovieScene) - { - var movieIcon = new Button() - { - X = Application.GetRealWidth(52), - Y = Application.GetRealHeight(14), - Width = Application.GetRealWidth(16), - Height = Application.GetRealWidth(16), - UnSelectedImagePath = "FunctionIcon/Scene/MovieMark.png", - }; - bodyDiv.AddChidren(movieIcon); - btnName.X = Application.GetRealWidth(52 + 16); - } - //鍔犺浇鍦烘櫙鎺у埗浜嬩欢 - LoadEvent_ControlScene(); - break; + } } else @@ -99,7 +115,7 @@ /// 寮�鍏虫寜閽� /// </summary> Button btnSwitch; - if (function.functionType == FunctionType.RGB || function.functionType == FunctionType.Dimmer) + if (function.spk == SPK.LightRGB || function.spk == SPK.LightDimming) { btnSwitch = new Button() { @@ -109,10 +125,12 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "Public/PowerClose.png", SelectedImagePath = "Public/PowerOpen.png", - IsSelected = function.trait_on_off.value.ToString() == "on", + IsSelected = function.trait_on_off.curValue.ToString() == "on", Tag = function.sid + "_Switch", }; bodyDiv.AddChidren(btnSwitch); + //鍔犺浇寮�鍏虫寜閽簨浠� + LoadEvent_SwitchFunction(btnSwitch, function.attributes.Find((obj) => obj.key == FunctionAttributeKey.FadeTime)); } else { @@ -124,24 +142,29 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "Public/PowerClose.png", SelectedImagePath = "Public/PowerOpen.png", - IsSelected = function.trait_on_off.value.ToString() == "on", + IsSelected = function.trait_on_off.curValue.ToString() == "on", Tag = function.sid + "_Switch", }; bodyDiv.AddChidren(btnSwitch); + //鍔犺浇寮�鍏虫寜閽簨浠� + LoadEvent_SwitchFunction(btnSwitch); } - //鍔犺浇寮�鍏虫寜閽簨浠� - LoadEvent_SwitchFunction(btnSwitch); - switch (function.functionCategory) + switch (function.Spk_Prefix) { - case FunctionCategory.Thermostat: - switch (function.functionType) + case FunctionCategory.AC: + switch (function.spk) { - case FunctionType.AC: + case SPK.AcStandard: btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcThinIcon1.png"; LoadLastStatesButton(); break; - case FunctionType.FloorHeating: + } + break; + case FunctionCategory.FloorHeat: + switch (function.spk) + { + case SPK.FloorHeatStandard: btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingThinIcon.png"; LoadLastStatesButton(); break; @@ -149,38 +172,39 @@ break; case FunctionCategory.Light: btnIcon.UnSelectedImagePath = "FunctionIcon/Light/LightThinIcon.png"; - btnSwitch.IsSelected = function.trait_on_off.value.ToString() == "on"; + btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; LoadLightControl(); break; - case FunctionCategory.SwitchDevice: - switch (function.functionType) + case FunctionCategory.Electric: + switch (function.spk) { - case FunctionType.Socket: + case SPK.ElectricSocket: btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketThinIcon.png"; break; - } - btnSwitch.IsSelected = function.trait_on_off.value.ToString() == "on"; - break; - case FunctionCategory.Electrical: - switch (function.functionType) - { - case FunctionType.Fan: + case SPK.ElectricFan: + case SPK.ElectricTuyaFan: btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanThinIcon.png"; break; - case FunctionType.TV: - btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVThinIcon.png"; + case SPK.ElectricTV: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVThinIcon.png"; + break; + case SPK.ElectricTuyaAirCleaner: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/AirCleanerThiinIcon.png"; + break; + case SPK.ElectricTuyaWeepRobot: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WeepRobotThinIcon.png"; + break; + case SPK.ElectricTuyaWaterValve: + btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/WaterValve/WaterValveIcon.png"; break; } - btnSwitch.IsSelected = function.trait_on_off.value.ToString() == "on"; + btnSwitch.IsSelected = function.trait_on_off.curValue.ToString() == "on"; break; } #endregion } - if (function.functionCategory != FunctionCategory.Scene) - { - LoadEvent_DivSkipEvent(); - } + LoadEvent_DivSkipEvent(); LoadEvent_FunctionCollection(); } @@ -232,9 +256,14 @@ Height = Application.GetMinRealAverage(40), SelectedImagePath = "Collection/CollectionIcon.png", UnSelectedImagePath = "Collection/CollectionGrayIcon.png", - IsSelected = function.collection + IsSelected = function.collect }; - bodyDiv.AddChidren(btnCollectionIcon); + //bodyDiv.AddChidren(btnCollectionIcon); + //2020-12-16 濡傛灉鏄垚鍛橀殣钘忔敹钘忓姛鑳� + if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare && function.Spk_Prefix != FunctionCategory.Sensor) + { + bodyDiv.AddChidren(btnCollectionIcon); + } } /// <summary> @@ -242,16 +271,16 @@ /// </summary> void LoadLightControl() { - switch (function.functionType) + switch (function.spk) { - case FunctionType.Dimmer: - case FunctionType.RGB: + case SPK.LightDimming: + case SPK.LightRGB: #region Dimmer var btnDimmerMinValues = new Button() { X = Application.GetRealWidth(14), Y = Application.GetRealHeight(85), - Width = Application.GetRealWidth(22), + Width = Application.GetRealWidth(30), Height = Application.GetRealHeight(21), Text = "0%", TextAlignment = TextAlignment.CenterLeft, @@ -269,7 +298,7 @@ SeekBarViewHeight = Application.GetRealHeight(8), ThumbImagePath = "Public/ThumbImage.png", ThumbImageHeight = Application.GetRealHeight(54), - ProgressBarColor = function.trait_on_off.value.ToString() == "on" ? CSS_Color.AuxiliaryColor1 : CSS_Color.PromptingColor2, + ProgressBarColor = function.trait_on_off.curValue.ToString() == "on" ? CSS_Color.AuxiliaryColor1 : CSS_Color.PromptingColor2, ProgressTextColor = CSS_Color.FirstLevelTitleColor, ProgressTextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, MaxValue = 100, @@ -283,7 +312,7 @@ { X = Application.GetRealWidth(14 + 22+180), Y = Application.GetRealHeight(85), - Width = Application.GetRealWidth(35), + Width = Application.GetRealWidth(45), Height = Application.GetRealHeight(21), Text = "100%", TextAlignment = TextAlignment.CenterLeft, @@ -312,7 +341,8 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainCloseIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainCloseOnIcon.png", - Tag = function.functionType + "_off_" + function.sid + IsSelected = function.trait_on_off.curValue.ToString() == "off", + Tag = function.sid + "_off" }; bodyDiv.AddChidren(btnCurtainClose); @@ -324,6 +354,8 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainStopIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainStopOnIcon.png", + Tag = function.sid + "_stop", + IsSelected = function.trait_on_off.curValue.ToString() == "stop" }; bodyDiv.AddChidren(btnCurtainStop); @@ -335,7 +367,8 @@ Height = Application.GetMinRealAverage(32), UnSelectedImagePath = "FunctionIcon/Curtain/CurtainOpenIcon.png", SelectedImagePath = "FunctionIcon/Curtain/CurtainOpenOnIcon.png", - Tag = function.functionType + "_on_" + function.sid + Tag = function.sid + "_on", + IsSelected = function.trait_on_off.curValue.ToString() == "on" }; bodyDiv.AddChidren(btnCurtainOpen); LoadEvent_ControlCurtain(btnCurtainStop, btnCurtainOpen, btnCurtainClose, function as Curtain); @@ -368,7 +401,7 @@ UnSelectedImagePath = "MusicIcon/pause.png", SelectedImagePath = "MusicIcon/play.png", IsSelected = (function as A31MusicModel).A31PlayStatus.status == "play" , - Tag = function.functionType + "_State_" + function.sid + Tag = function.spk + "_State_" + function.sid }; bodyDiv.AddChidren(btnPlay); @@ -386,12 +419,15 @@ #endregion } - /// <summary> /// 鍔犺浇鍔熻兘鐘舵�佷俊鎭寜閽� /// </summary> void LoadLastStatesButton() { + if(function.spk == SPK.LightSwitch) + { + return; + } var btnLastStates = new Button() { X = Application.GetRealWidth(10 + 32 + 8), @@ -403,8 +439,8 @@ SelectedTextColor = CSS_Color.PromptingColor1, TextColor = 0x00000000, TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, - Tag = function.functionType + "_laststates_" + function.sid, - IsSelected = function.trait_on_off.value.ToString() == "on" + Tag = function.spk + "_laststates_" + function.sid, + IsSelected = function.trait_on_off.curValue.ToString() == "on" }; bodyDiv.AddChidren(btnLastStates); } -- Gitblit v1.8.0