tzy
2021-03-23 132ef8524e38d06da8cf74292a3ac1eff065bb1b
HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddControlComplete.cs
@@ -4,13 +4,28 @@
using Shared;
namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice
{
    public class AddControlComplete:FrameLayout
    public class AddControlComplete : FrameLayout
    {
        public AddControlComplete()
        {
            Tag = "Pir";
            Tag = "PirView";
        }
        public void Show(Control control) {
        public void Show(Control control, bool bool_library)
        {
            //数据转换
            Entity.Function function = new Entity.Function();
            {
                function.sid = control.sid;
                function.deviceId = control.deviceId;
                function.name = control.name;
                function.spk = control.spk;
                //function.attributes.AddRange(control.status);
                //遥控器添加到列表;
                if (null == Pir.currPir.FunctioList.Find((c) => c.sid == function.sid))
                {
                    Pir.currPir.FunctioList.Add(function);
                }
            }
            #region 界面布局
            this.BackgroundColor = CSS.CSS_Color.viewMiddle;
            PirDevice.View.TopView topView = new View.TopView();
@@ -18,16 +33,16 @@
            this.AddChidren(topView.FLayoutView());
            topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); };
            FrameLayout fLayout = new FrameLayout
            FrameLayout fLayout = new FrameLayout
            {
                Y =Application.GetRealHeight(64),
                Y = Application.GetRealHeight(64),
                BackgroundColor = CSS.CSS_Color.textWhiteColor,
                Height = Application.GetRealHeight(224),
                Width = Application.GetRealWidth(375),
            };
            this.AddChidren(fLayout);
            //
            Button iconBtn = new Button
            Button iconBtn = new Button
            {
                Y = Application.GetRealHeight(28),
                X = Application.GetRealWidth(137),
@@ -40,7 +55,7 @@
            //添加成功
            Button text1Btn = new Button
            {
                Width = Application.GetRealWidth(375-32),
                Width = Application.GetRealWidth(375 - 32),
                Height = Application.GetRealHeight(22),
                Y = Application.GetRealHeight(158),
                X = Application.GetRealWidth(16),
@@ -50,7 +65,7 @@
                TextAlignment = TextAlignment.Center,
            };
            fLayout.AddChidren(text1Btn);
            //可到分类-功能-电器操作使用
            //可到分类-功能-操作使用
            Button text2Btn = new Button
            {
                Width = Application.GetRealWidth(375 - 32),
@@ -65,7 +80,7 @@
            fLayout.AddChidren(text2Btn);
            //所属分类
            View.PatchView fenlei = new View.PatchView();
            fenlei.frameLayout.Y = fLayout.Bottom+ Application.GetRealHeight(8);
            fenlei.frameLayout.Y = fLayout.Bottom + Application.GetRealHeight(8);
            this.AddChidren(fenlei.FLayoutView(false));
            fenlei.btnText1.TextID = StringId.suoshufenlei;
            fenlei.btnText2.TextID = StringId.dianqi;
@@ -75,19 +90,20 @@
            this.AddChidren(namePatchView.FLayoutView());
            namePatchView.btnText1.TextID = StringId.yaokongqimingcheng;
            namePatchView.btnText2.Text = control.name;
            //所属区域
            View.PatchView quyuPatchView = new View.PatchView();
            quyuPatchView.frameLayout.Y = namePatchView.frameLayout.Bottom;
            this.AddChidren(quyuPatchView.FLayoutView());
            quyuPatchView.btnText1.TextID = StringId.suoshuquyu;
            quyuPatchView.btnText2.TextID = StringId.dianqi;
            quyuPatchView.btnText2.Text=Intelligence.Automation.LogicMethod.GetGetRoomName(function);
            //继续添加
            Button addBtn = new Button
            {
                Y = quyuPatchView.frameLayout.Bottom + Application.GetRealHeight(125),
                X = Application.GetRealWidth(16),
                Width = Application.GetRealWidth(375-32),
                Width = Application.GetRealWidth(375 - 32),
                Height = Application.GetRealHeight(20),
                TextID = StringId.jixutianjia,
                TextSize = TextSize.text14,
@@ -102,18 +118,67 @@
            #endregion
            #region  界面点击事件
            //遥控器名称点击事件
            namePatchView.btnClick.MouseUpEventHandler += (sender,e) => { };
            //所属区域点击事件
            quyuPatchView.btnClick.MouseUpEventHandler += (sender, e) => { };
            //继续添加点击事件
            addBtn.MouseUpEventHandler += (sender, e) => {
            namePatchView.btnClick.MouseUpEventHandler += (sender, e) =>
            {
                List<string> list = new List<string>();
                for (int i = 0; i < Pir.currPir.FunctioList.Count; i++)
                {
                    list.Add(Pir.currPir.FunctioList[i].name);
                }
                Method method = new Method();
                method.AddControl();
                method.EditControlName(StringId.editName, list, control.name, (name, dialog) =>
                {
                    Method.ThreadSend(new Control { deviceId = control.deviceId, name = name }, (responsePackNew) =>
                    {
                        dialog.Close();
                        namePatchView.btnText2.Text = name;
                        function.name = name;
                    }, "修改名称", "dialog", null, dialog);
                }, () => { });
            };
            //所属区域点击事件
            quyuPatchView.btnClick.MouseUpEventHandler += (sender, e) =>
            {
                Method method = new Method();
                method.ManagementPosition(function, () =>
                {
                    //更新区域
                    quyuPatchView.btnText2.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(function);
                });
            };
            //继续添加点击事件
            addBtn.MouseUpEventHandler += (sender, e) =>
            {
                if (bool_library)
                {
                    this.RemoveFromParent();
                }
                else
                {
                    Method method = new Method();
                    method.AddControl(this, (controlDevice) => {
                        AddButton addButton = new AddButton();
                        MainPage.BasePageView.AddChidren(addButton);
                        addButton.Show(controlDevice);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    });
                }
            };
            //完成点击事件
            saveView.btnClick.MouseUpEventHandler += (sender, e) => {
                MainPage.BasePageView.RemoveViewByTag("AddControl");
                MainPage.BasePageView.RemoveViewByTag("Pir");
            saveView.btnClick.MouseUpEventHandler += (sender, e) =>
            {
                //移除所有界面
                MainPage.BasePageView.RemoveViewByTag("PirView");
                //移除红外宝根界面
                MainPage.BasePageView.RemoveViewByTag("PirMain");
                //重新加载界面
                var page = new PirMain();
                MainPage.BasePageView.AddChidren(page);
                page.Show();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
            };
            #endregion
        }