using System; using Shared; using System.Collections.Generic; using HDL_ON.UI.UI2.PersonalCenter.PirDevice.View; namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice { public class EditControl : FrameLayout { public EditControl() { } public void Show(Entity.Function control, Pir pir, Action action) { this.BackgroundColor = CSS.CSS_Color.viewMiddle; PirDevice.View.TopView topView = new View.TopView(); topView.topNameBtn.TextID = StringId.pipeiyaokongqi; this.AddChidren(topView.FLayoutView()); topView.clickBackBtn.MouseUpEventHandler += (e, sen) => { action(control); RemoveFromParent(); }; topView.topNameBtn.TextID = StringId.bianjixinxi; FrameLayout viewLayout = new FrameLayout { Y = Application.GetRealHeight(64), Width = Application.GetRealWidth(375), Height = Application.GetRealHeight(667 - 64), BackgroundColor = CSS.CSS_Color.viewMiddle, }; this.AddChidren(viewLayout); FrameLayout50 editNameFLayout = new FrameLayout50(); editNameFLayout.btnText.Text = Language.StringByID(StringId.yaokongqimingcheng) + ":"; editNameFLayout.btnEditText.Text = control.name; editNameFLayout.btnNextIcon.Height = Application.GetRealWidth(28); editNameFLayout.btnNextIcon.Width = Application.GetRealWidth(28); editNameFLayout.btnNextIcon.UnSelectedImagePath = "LogicIcon/editname.png"; viewLayout.AddChidren(editNameFLayout.FLayoutView()); FrameLayout50 areaFLayout = new FrameLayout50(); areaFLayout.btnText.Text = Language.StringByID(StringId.yaokongqiquyu); areaFLayout.btnEditText.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(control); areaFLayout.frameLayout.Y = editNameFLayout.frameLayout.Bottom; viewLayout.AddChidren(areaFLayout.FLayoutView()); editNameFLayout.btnClick.MouseUpEventHandler += (sender, e) => { List list = new List(); for (int i = 0; i < pir.FunctioList.Count; i++) { list.Add(pir.FunctioList[i].name); } Method method = new Method(); method.EditControlName(StringId.editName,list, control.name, (name,view) => { //加载log Loading loading = new Loading(); view.AddChidren(loading); HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null; loading.Start(); new System.Threading.Thread(() => { try { responsePackNew = PirSend.DeviceRename(control.deviceId, control.name); } catch { } finally { Application.RunOnMainThread(() => { loading.Hide(); if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") { view.Close(); editNameFLayout.btnEditText.Text = name; control.name = name; } else { Method methodError = new Method(); methodError.ErrorShow(responsePackNew); } }); } }) { IsBackground = true }.Start(); },()=> { }); }; areaFLayout.btnClick.MouseUpEventHandler += (sender, e) => { Method method = new Method(); method.ManagementPosition(control, () => { //更新区域 areaFLayout.btnEditText.Text = Intelligence.Automation.LogicMethod.GetGetRoomName(control); }); }; } } }