wxr
2024-09-30 dc9a1b15bb69227e19afc070adf58156a362d2a2
HDL_ON/UI/UI2/FuntionControlView/FunctionBaseInfoSetPage.cs
@@ -72,15 +72,179 @@
        public void LoadPage(bool locationSetting = true)
        {
            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
            new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView();
            var topView = new TopViewDiv(bodyView, Language.StringByID(StringId.Setting));
            topView.maginY = 10;
            topView.LoadTopView();
            var contentView = new VerticalScrolViewLayout()
            {
                Y = Application.GetRealHeight(64),
                Y = Application.GetRealHeight(64+10),
                Height = Application.GetRealHeight(600),
                ScrollEnabled = false,
            };
            bodyView.AddChidren(contentView);
            //可视对讲
            if (function.spk == SPK.LinphoneXiMo)
            {
                var linphoneConnectView = new FrameLayout()
                {
                    Height = Application.GetRealHeight(55),
                    BackgroundColor = CSS_Color.MainBackgroundColor,
                };
                contentView.AddChidren(linphoneConnectView);
                var linphoneConnectTitle = new Button()
                {
                    X = Application.GetRealWidth(16),
                    Width = Application.GetRealWidth(160),
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    TextID = StringId.ConnectionMode,
                };
                linphoneConnectView.AddChidren(linphoneConnectTitle);
                var linphoneConnectValues = new Button()
                {
                    X = Application.GetRealWidth(86),
                    Width = Application.GetRealWidth(237),
                    TextAlignment = TextAlignment.CenterRight,
                    TextColor = CSS_Color.PromptingColor1,
                    TextSize = CSS_FontSize.TextFontSize,
                    Text = DB_ResidenceData.Instance.linphoneConnectType.ToString()
                };
                linphoneConnectView.AddChidren(linphoneConnectValues);
                var linphoneConnectRight = new Button()
                {
                    X = Application.GetRealWidth(339),
                    Gravity = Gravity.CenterVertical,
                    Width = Application.GetMinRealAverage(16),
                    Height = Application.GetMinRealAverage(16),
                    UnSelectedImagePath = "Public/RightIcon.png",
                };
                linphoneConnectView.AddChidren(linphoneConnectRight);
                linphoneConnectView.AddChidren(
                    new Button()
                    {
                        Gravity = Gravity.CenterHorizontal,
                        BackgroundColor = CSS_Color.DividingLineColor,
                        Width = Application.GetRealWidth(343),
                        Height = Application.GetRealHeight(1)
                    });
                EventHandler<MouseEventArgs> linphoneHandler = (senderBase, senderBasee) =>
                {
                    Dialog dialog = new Dialog();
                    var pView = new FrameLayout()
                    {
                        BackgroundColor = CSS_Color.DialogTransparentColor1,
                    };
                    dialog.AddChidren(pView);
                    var optionBaseView = new FrameLayout()
                    {
                        Y = Application.GetRealHeight(500),
                        Height = Application.GetRealHeight(160),
                        AnimateSpeed = 0.3f,
                        Animate = Animate.DownToUp,
                    };
                    pView.AddChidren(optionBaseView);
                    var optionView = new VerticalScrolViewLayout()
                    {
                        Gravity = Gravity.CenterHorizontal,
                        Width = Application.GetRealWidth(343),
                        Height = Application.GetRealHeight(100),
                        BackgroundColor = CSS_Color.MainBackgroundColor,
                        Radius = (uint)Application.GetRealWidth(12),
                        ScrollEnabled = false,
                    };
                    optionBaseView.AddChidren(optionView);
                    var btnUdp = new Button()
                    {
                        Height = Application.GetRealHeight(50),
                        TextAlignment = TextAlignment.Center,
                        TextColor = CSS_Color.TextualColor,
                        SelectedTextColor = CSS_Color.MainColor,
                        TextSize = CSS_FontSize.SubheadingFontSize,
                        Text = "UDP",
                        IsSelected = DB_ResidenceData.Instance.linphoneConnectType == LinphoneConnectType.UDP
                    };
                    optionView.AddChidren(btnUdp);
                    optionView.AddChidren(new Button() { Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
                    var btnTcp = new Button()
                    {
                        Height = Application.GetRealHeight(50),
                        TextAlignment = TextAlignment.Center,
                        TextColor = CSS_Color.TextualColor,
                        SelectedTextColor = CSS_Color.MainColor,
                        TextSize = CSS_FontSize.SubheadingFontSize,
                        Text = "TCP",
                        IsSelected = DB_ResidenceData.Instance.linphoneConnectType == LinphoneConnectType.TCP
                    };
                    optionView.AddChidren(btnTcp);
                    var btnCancel = new Button()
                    {
                        Gravity = Gravity.CenterHorizontal,
                        Y = Application.GetRealHeight(8) + optionView.Bottom,
                        Width = Application.GetRealWidth(343),
                        Height = Application.GetRealHeight(50),
                        BackgroundColor = CSS_Color.MainBackgroundColor,
                        Radius = (uint)Application.GetRealWidth(12),
                        TextID = StringId.Cancel,
                        TextColor = CSS_Color.WarningColor,
                        TextSize = CSS_FontSize.SubheadingFontSize,
                    };
                    optionBaseView.AddChidren(btnCancel);
                    dialog.Show();
                    pView.MouseUpEventHandler = (sender, e) =>
                    {
                        dialog.Close();
                    };
                    btnCancel.MouseUpEventHandler = (sender, e) =>
                    {
                        dialog.Close();
                    };
                    btnUdp.MouseUpEventHandler = (sender, e) =>
                    {
                        DB_ResidenceData.Instance.linphoneConnectType = LinphoneConnectType.UDP;
                        DB_ResidenceData.Instance.SaveResidenceData();
                        linphoneConnectValues.Text = LinphoneConnectType.UDP.ToString();
                        dialog.Close();
                        new PublicAssmebly().TipMsg(StringId.Tip, StringId.ConnectionModeChangeTip);
                    };
                    btnTcp.MouseUpEventHandler = (sender, e) =>
                    {
                        DB_ResidenceData.Instance.linphoneConnectType = LinphoneConnectType.TCP;
                        DB_ResidenceData.Instance.SaveResidenceData();
                        linphoneConnectValues.Text = LinphoneConnectType.TCP.ToString();
                        dialog.Close();
                        new PublicAssmebly().TipMsg(StringId.Tip, StringId.ConnectionModeChangeTip);
                    };
                };
                linphoneConnectValues.MouseUpEventHandler = linphoneHandler;
                linphoneConnectRight.MouseUpEventHandler = linphoneHandler;
                return;
            }
            #region name view
            var nameView = new FrameLayout()
@@ -465,6 +629,7 @@
                EventHandler<MouseEventArgs> ClickEvent = (sener, e) =>
                {
                    new HDL_ON.UI.Music.View.TipView().TipBox(-1, StringId.AreYouSureToDeleteThisDevice, () =>
                    {
                        UI2.FuntionControlView.VideoDoorLock.VideDoorLockSend.Current.DelDevice(this.function, (isBool) =>
@@ -498,38 +663,76 @@
            }
            #endregion
#if stage2
            #region 添加到桌面
            var addToDesktopView = new FrameLayout()
            {
                Height = Application.GetRealHeight(55),
                BackgroundColor = CSS_Color.MainBackgroundColor,
            };
            contentView.AddChidren(addToDesktopView);
            var btnAddToDesktopText = new Button()
            #region 删除海信电视设备
            if (this.function.spk == SPK.ElectricalTvHisense)
            {
                X = Application.GetRealWidth(16),
                Width = Application.GetRealWidth(160),
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextID = StringId.AddToDesktop,
            };
            addToDesktopView.AddChidren(btnAddToDesktopText);
                contentView.AddChidren(new Button()
                {
                    Height = Application.GetRealWidth(8),
                });
            var btnAddToDesktopRight = new Button()
            {
                X = Application.GetRealWidth(339),
                Gravity = Gravity.CenterVertical,
                Width = Application.GetMinRealAverage(16),
                Height = Application.GetMinRealAverage(16),
                UnSelectedImagePath = "Public/RightIcon.png",
            };
            addToDesktopView.AddChidren(btnAddToDesktopRight);
                #region 删除设备行
                contentView.AddChidren(new Button()
                {
                    Height = Application.GetRealHeight(48),
                });
                var delTextBtn = new Button()
                {
                    Gravity = Gravity.CenterHorizontal,
                    Width = Application.GetRealWidth(220),
                    Height = Application.GetRealWidth(44),
                    TextAlignment = TextAlignment.Center,
                    TextColor = CSS_Color.WarningColor,
                    TextSize = CSS_FontSize.SubheadingFontSize,
                    TextID = StringId.jiebangshebei,
                    Radius = (uint)Application.GetRealWidth(22),
                    BackgroundColor = CSS_Color.MainBackgroundColor,
                };
                //如果是成员隐藏收藏功能
                if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare)
                {
                    contentView.AddChidren(delTextBtn);
                }
                EventHandler<MouseEventArgs> ClickEvent = (sener, e) =>
                {
                    new HDL_ON.UI.Music.View.TipView().TipBox(-1, StringId.AreYouSureToDeleteThisDevice, () =>
                    {
                        HDL_ON.UI.UI2.FuntionControlView.HisenseTV.Send.Current.DelDevice(this.function.deviceId, (isBool) =>
                            {
                                Application.RunOnMainThread(() =>
                                {
                                    if (!isBool)
                                    {
                                        new Tip()
                                        {
                                            CloseTime = 1,
                                            Text = Language.StringByID(StringId.delFail),
                                            Direction = AMPopTipDirection.None,
                                        }.Show(bodyView);
                                        return;
                                    }
                                //删除本地文件
                                UI2.FuntionControlView.VideoDoorLock.CommonMethod.Current.DeleteFunction(this.function);
                                    this.RemoveFromParent();
                                    this.actionDel?.Invoke();
                                });
                            });
                    });
                };
                delTextBtn.MouseUpEventHandler = ClickEvent;
                #endregion
            }
            #endregion
#endif
            if (function.spk == SPK.ElectricEnergy)
            {