| | |
| | | { |
| | | common = commondevice; |
| | | editdeviceConditionsInfo = editdeviceConditions; |
| | | |
| | | #region 界面布局代码 |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | this.BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor; |
| | | #region 最上面的布局代码 |
| | | var topRowLayout = new RowLayout |
| | | { |
| | | BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor, |
| | | Height = Application.GetRealHeight(184), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor, |
| | | }; |
| | | this.AddChidren(topRowLayout); |
| | | |
| | | var titleName = new Button |
| | | { |
| | | TextSize = 17, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | X = Application.GetRealWidth(176), |
| | | Width = Application.GetRealWidth(600), |
| | | Height = Application.GetRealHeight(69), |
| | | Y = Application.GetRealHeight(92), |
| | | TextID = MyInternationalizationString.userlist, |
| | | IsBold = true, |
| | | }; |
| | | topRowLayout.AddChidren(titleName); |
| | | |
| | | var clickBtn = new Button |
| | | { |
| | | Width = Application.GetRealWidth(81 + 51), |
| | | Height = Application.GetRealHeight(58 + 40), |
| | | Y = Application.GetRealHeight(98 - 40), |
| | | }; |
| | | topRowLayout.AddChidren(clickBtn); |
| | | clickBtn.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | RemoveFromParent(); |
| | | }; |
| | | |
| | | var back = new Button |
| | | { |
| | | Width = Application.GetRealWidth(30), |
| | | Height = Application.GetRealHeight(51), |
| | | X = Application.GetRealWidth(81), |
| | | Y = Application.GetRealHeight(98), |
| | | //Gravity = Gravity.CenterVertical; |
| | | UnSelectedImagePath = "ZigeeLogic/back.png", |
| | | }; |
| | | topRowLayout.AddChidren(back); |
| | | back.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | RemoveFromParent(); |
| | | }; |
| | | #endregion |
| | | |
| | | TopView view = new TopView(); |
| | | this.AddChidren(view.TopRowView()); |
| | | view.toptitleNameBtn.TextID = MyInternationalizationString.userlist; |
| | | view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); }; |
| | | middle = new VerticalRefreshLayout |
| | | { |
| | | Y = topRowLayout.Bottom, |
| | | Y = view.topRowLayout.Bottom, |
| | | Height = Application.GetRealHeight(1920 - 184), |
| | | BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, |
| | | }; |
| | | this.AddChidren(middle); |
| | | #endregion |
| | | |
| | | middle.BeginHeaderRefreshingAction += () => |
| | | { |
| | | //重新刷新logic列表 |
| | |
| | | /// <param name="macport"></param> |
| | | public void UserList(string macport) |
| | | { |
| | | foreach (var user in Send.LockList) |
| | | for (int i=0;i<Send.LockList.Count;i++) |
| | | { |
| | | var user = Send.LockList[i]; |
| | | if (user.DoorLockMacPort != macport) |
| | | { |
| | | continue; |
| | | } |
| | | var userFramelayout = new FrameLayout |
| | | |
| | | FunView userView = new FunView(); |
| | | userView.iconBtn.Visible = false; |
| | | userView.funnameBtn.X = Application.GetRealWidth(81); |
| | | userView.funnameBtn.Text = user.UserName; |
| | | userView.funnextBtn.X = Application.GetRealWidth(1080 - 81 - 58); |
| | | userView.lineBtn.X = Application.GetRealWidth(81); |
| | | userView.lineBtn.Width = Application.GetRealWidth(1080 - 81 - 58); |
| | | if (Send.LockList.Count - 1 == i) |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | // LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | }; |
| | | middle.AddChidren(userFramelayout); |
| | | |
| | | |
| | | var userRow = new RowLayout |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(1080 - 81 - 58), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(81), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | userFramelayout.AddChidren(userRow); |
| | | |
| | | var userBtn = new Button |
| | | { |
| | | Text = user.UserName, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextSize = 14, |
| | | }; |
| | | userRow.AddChidren(userBtn); |
| | | |
| | | var userBack = new Button |
| | | { |
| | | Width = Application.GetRealWidth(58), |
| | | Height = Application.GetRealHeight(58), |
| | | UnSelectedImagePath = "ZigeeLogic/next.png", |
| | | X = Application.GetRealWidth(1080 - 81 - 58 - 58), |
| | | Gravity = Gravity.CenterVertical, |
| | | }; |
| | | userRow.AddChidren(userBack); |
| | | |
| | | EventHandler<MouseEventArgs> useridclick = (sender, e) => |
| | | { |
| | | User(user); |
| | | |
| | | }; |
| | | userBtn.MouseUpEventHandler += useridclick; |
| | | userBack.MouseUpEventHandler += useridclick; |
| | | userFramelayout.MouseUpEventHandler += useridclick; |
| | | userRow.MouseUpEventHandler += useridclick; |
| | | userView.funFrameLayout.Height = Application.GetRealHeight(160 + 20);//最后一行增加20高度; |
| | | userView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | } |
| | | middle.AddChidren(userView.FunFrameView()); |
| | | userView.clickviewBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | User(user); |
| | | }; |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 当前成员信息的方法 |
| | | /// </summary> |
| | | /// <param name="user"></param> |
| | | public void User(Send.MembershipIfon user) |
| | | { |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; |
| | | this.AddChidren(flMain); |
| | | flMain.MouseUpEventHandler += (sender1, e1) => |
| | | |
| | | //元素超出9个就用上下滑动控件; |
| | | VerticalScrolViewLayout vV = null; |
| | | int count = user.UserIdMode.Count; |
| | | if (count > 9) |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | var lockcolorfra = new FrameLayout |
| | | { |
| | | Width = Application.GetRealWidth(1080), |
| | | Height = Application.GetRealHeight(100), |
| | | Y = Application.GetRealHeight(1920 - 100), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | }; |
| | | flMain.AddChidren(lockcolorfra); |
| | | |
| | | var lockcolorfra1 = new FrameLayout |
| | | { |
| | | |
| | | Width = Application.GetRealWidth(1080), |
| | | Height = Application.GetRealHeight(530), |
| | | Y = Application.GetRealHeight(1920 - 530), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | Radius = (uint)Application.GetRealHeight(60), |
| | | }; |
| | | flMain.AddChidren(lockcolorfra1); |
| | | ///元素超出9个; |
| | | count = 6; |
| | | //元素超出9个就用上下滑动控件; |
| | | vV = new VerticalScrolViewLayout |
| | | { |
| | | Y = Application.GetRealHeight(140 + 20), |
| | | Height = Application.GetRealHeight(160 * count), |
| | | }; |
| | | //清除之前的控件; |
| | | vV.RemoveAll(); |
| | | } |
| | | |
| | | #region -------取消 完成 |
| | | var lockRow = new RowLayout |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor }; |
| | | this.AddChidren(flMain); |
| | | CompleteView completeView = new CompleteView(); |
| | | flMain.AddChidren(completeView.Show(count)); |
| | | completeView.Btntitle.Text = user.UserName; |
| | | EventHandler<MouseEventArgs> clickcancel = (sender, e) => |
| | | { |
| | | Height = Application.GetRealHeight(140), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | lockcolorfra1.AddChidren(lockRow); |
| | | var Btncancel = new Button |
| | | { |
| | | TextID = MyInternationalizationString.cancel, |
| | | TextColor = ZigbeeColor.Current.LogicBtnCancelColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(200), |
| | | X = Application.GetRealWidth(80), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextSize = 14, |
| | | }; |
| | | lockRow.AddChidren(Btncancel); |
| | | Btncancel.MouseUpEventHandler += (sender16, e16) => |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | flMain.MouseUpEventHandler += clickcancel; |
| | | completeView.Btncancel.MouseUpEventHandler += clickcancel; |
| | | |
| | | var Btntitle = new Button |
| | | { |
| | | TextID = MyInternationalizationString.security, |
| | | TextColor = ZigbeeColor.Current.LogicBtnTypeColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(320), |
| | | TextAlignment = TextAlignment.Center, |
| | | X = Btncancel.Right + Application.GetRealWidth(100), |
| | | TextSize = 16, |
| | | Text = user.UserName, |
| | | }; |
| | | lockRow.AddChidren(Btntitle); |
| | | var Btncomplete = new Button |
| | | { |
| | | TextID = MyInternationalizationString.complete, |
| | | TextColor = ZigbeeColor.Current.LogicBtnCompleteColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(200), |
| | | TextAlignment = TextAlignment.CenterRight, |
| | | X = Btntitle.Right + Application.GetRealWidth(100), |
| | | TextSize = 14, |
| | | |
| | | }; |
| | | lockRow.AddChidren(Btncomplete); |
| | | #endregion |
| | | ///定两个变量记录之前的只值; |
| | | string userId = ""; |
| | | string openMode = ""; |
| | | string accountname = ""; |
| | | string accountName = ""; |
| | | string SelectedDeviceStatuscondition = ""; |
| | | lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * user.UserIdMode.Count) - 20 - 50); |
| | | lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * user.UserIdMode.Count) + 20 + 50); |
| | | if (user.UserIdMode.Count > 9) |
| | | { |
| | | ///元素超出10个,暂时默认显示10; |
| | | lockcolorfra1.Y = Application.GetRealHeight(1920 - 140 - (160 * 9) - 20 - 50); |
| | | lockcolorfra1.Height = Application.GetRealHeight(140 + (160 * 9) + 20 + 50); |
| | | } |
| | | |
| | | for (int i = 0; i < user.UserIdMode.Count; i++) |
| | | { |
| | | var userifon = user.UserIdMode[i]; |
| | | var doorlockfra = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | Y = lockRow.Bottom + Application.GetRealHeight(20 + 160 * i), |
| | | }; |
| | | lockcolorfra1.AddChidren(doorlockfra); |
| | | |
| | | var doorlockRow = new RowLayout |
| | | mFunView lockView = new mFunView(); |
| | | if (user.UserIdMode.Count > 9) |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(920), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(80), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | doorlockfra.AddChidren(doorlockRow); |
| | | |
| | | var doorlockBtn = new Button |
| | | //元素超出9个就用上下滑动控件; |
| | | completeView.Show(count).AddChidren(vV); |
| | | vV.AddChidren(lockView.Show()); |
| | | } |
| | | else |
| | | { |
| | | Width = Application.GetRealWidth(600), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor, |
| | | Text = userifon.ModeName, |
| | | TextSize = 14, |
| | | }; |
| | | doorlockRow.AddChidren(doorlockBtn); |
| | | lockView.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160 * i); |
| | | completeView.Show(count).AddChidren(lockView.Show()); |
| | | } |
| | | lockView.titleBtn.Text = userifon.ModeName; |
| | | |
| | | var doorlockSelected = new Button |
| | | { |
| | | X = Application.GetRealWidth(860), |
| | | Width = Application.GetMinRealAverage(60), |
| | | Height = Application.GetMinRealAverage(60), |
| | | UnSelectedImagePath = "ZigeeLogic/selected.png", |
| | | Visible = false, |
| | | Gravity = Gravity.CenterVertical, |
| | | |
| | | }; |
| | | doorlockRow.AddChidren(doorlockSelected); |
| | | if ((user.UserIdMode.Count - 1) == i) |
| | | { |
| | | doorlockRow.LineColor = ZigbeeColor.Current.LogicBackgroundColor; |
| | | lockView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; |
| | | } |
| | | EventHandler<MouseEventArgs> doorlockclick = (sender2, e2) => |
| | | { |
| | | SelectedDeviceStatuscondition = "DoorLock"; |
| | | selectedIcon.Visible = false; |
| | | selectedIcon = doorlockSelected; |
| | | doorlockSelected.Visible = true; |
| | | userId = userifon.UserId; |
| | | openMode = userifon.OpenMode.ToString(); |
| | | accountname = Btntitle.Text + doorlockBtn.Text; |
| | | //doorlockBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | }; |
| | | doorlockRow.MouseUpEventHandler += doorlockclick; |
| | | doorlockBtn.MouseUpEventHandler += doorlockclick; |
| | | doorlockSelected.MouseUpEventHandler += doorlockclick; |
| | | doorlockfra.MouseUpEventHandler += doorlockclick; |
| | | lockView.clickviewBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | SelectedDeviceStatuscondition = "DoorLock"; |
| | | selectedIcon.Visible = false; |
| | | selectedIcon = lockView.selectedIconBtn; |
| | | lockView.selectedIconBtn.Visible = true; |
| | | userId = userifon.UserId; |
| | | openMode = userifon.OpenMode.ToString(); |
| | | accountName = completeView.Btntitle.Text + lockView.titleBtn.Text; |
| | | }; |
| | | |
| | | if (string.IsNullOrEmpty(doorlockBtn.Text)) |
| | | |
| | | if (string.IsNullOrEmpty(lockView.titleBtn.Text)) |
| | | { |
| | | string strname = ""; |
| | | switch (userifon.OpenMode) |
| | |
| | | } |
| | | break; |
| | | } |
| | | doorlockBtn.Text = userifon.UserId + strname; |
| | | lockView.titleBtn.Text = userifon.UserId + strname; |
| | | } |
| | | |
| | | if (edit && editdeviceConditionsInfo != null) |
| | |
| | | if (editdeviceConditionsInfo["AttriButeData2"] == userifon.UserId.ToString()) |
| | | { |
| | | selectedIcon.Visible = false; |
| | | selectedIcon = doorlockSelected; |
| | | doorlockSelected.Visible = true; |
| | | selectedIcon = lockView.selectedIconBtn; |
| | | lockView.selectedIconBtn.Visible = true; |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | Btncomplete.MouseUpEventHandler += (sender3, e3) => |
| | | |
| | | completeView.Btncomplete.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | string userIdstr = "", openModestr = ""; |
| | | var deviceConditionsInfo = new Dictionary<string, string>(); |
| | | var userdictionary = new Dictionary<string, string>(); |
| | |
| | | deviceConditionsInfo.Add("Range", "0"); |
| | | deviceConditionsInfo.Add("AttriButeId", openMode); |
| | | deviceConditionsInfo.Add("AttriButeData2", userId); |
| | | userdictionary.Add("Account", accountname); |
| | | userdictionary.Add("Account", Config.Instance.Guid); |
| | | userdictionary.Add("AccountName", accountName); |
| | | userdictionary.Add("Type", "1"); |
| | | userdictionary.Add("UserId", userId); |
| | | if (edit) |
| | |
| | | } |
| | | } |
| | | if (!addConditions) |
| | | { |
| | | {//没有存在数据新加 |
| | | Common.Logic.CurrentLogic.Conditions.Add(deviceConditionsInfo); |
| | | } |
| | | if (!addAccounts) |
| | | { |
| | | {//没有存在数据新加 |
| | | Common.Logic.CurrentLogic.Accounts.Add(userdictionary); |
| | | } |
| | | } |
| | |
| | | |
| | | }; |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | } |