黄学彪
2021-01-28 1fcf2302f79f9cbea5ef17c3688311ed65cfabb4
HDL_ON/UI/UI2/2-Classification/FunctionControlZone.cs
@@ -60,20 +60,20 @@
            }
            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)//窗帘没有开关按钮
            {
                switch (function.functionCategory)
                switch (function.Spk_Prefix)
                {
                    case FunctionCategory.Curtain:
                        switch(function.functionType)
                        switch (function.spk)
                        {
                            case FunctionType.Curtain:
                            case SPK.CurtainSwitch:
                                btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainThinIcon.png";
                                break;
                            case FunctionType.MotorCurtain:
                            case SPK.CurtainTrietex:
                                btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/MotorCurtainIcon.png";
                                break;
                            case FunctionType.RollingShutter:
                            case SPK.CurtainRoller:
                                btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/RollingShutterIcon.png";
                                break;
                        }
@@ -83,24 +83,7 @@
                        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
@@ -110,7 +93,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()
                    {
@@ -120,10 +103,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
                {
@@ -135,24 +120,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;
@@ -160,38 +150,36 @@
                        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;
                        }
                        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();
        }
@@ -243,9 +231,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)
            {
                bodyDiv.AddChidren(btnCollectionIcon);
            }
        }
        /// <summary>
@@ -253,16 +246,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,
@@ -280,7 +273,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,
@@ -294,7 +287,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,
@@ -323,7 +316,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);
@@ -335,6 +329,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);
@@ -346,7 +342,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);
@@ -379,7 +376,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);
@@ -403,6 +400,10 @@
        /// </summary>
        void LoadLastStatesButton()
        {
            if(function.spk == SPK.LightSwitch)
            {
                return;
            }
            var btnLastStates = new Button()
            {
                X = Application.GetRealWidth(10 + 32 + 8),
@@ -414,8 +415,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);
        }