using System; using Shared; using HDL_ON.Entity; using HDL_ON.UI.CSS; using System.Collections.Generic; using HDL_ON.DAL; using HDL_ON.DAL.Server; namespace HDL_ON.UI { public partial class MemberFunctionPermissionPage : FrameLayout { MemberFunctionPermissionPage bodyView; FrameLayout allRoomView; /// /// 全选按钮 /// Button btnChooseAll; /// /// 功能显示区域 /// VerticalScrolViewLayout contentView; /// /// 底部操作按钮 /// Button btnOption; /// /// 页面标题ID /// int titleId; ResidenceMemberInfo memberInfo; Room room; Action refreshFunctionCount; List funs; List funs_New; List funs_Del; public MemberFunctionPermissionPage(ResidenceMemberInfo mInfo, Room r, Action action) { bodyView = this; memberInfo = mInfo; room = r; funs = new List(); funs = memberInfo.CurResidenceShareDate; funs_New = new List(); funs_Del = new List(); refreshFunctionCount = action; } public MemberFunctionPermissionPage(Room r,List sd) { bodyView = this; room = r; funs = new List(); funs_New = sd; funs_Del = new List(); memberInfo = new ResidenceMemberInfo(); } public void LoadPage(int tId) { titleId = tId; new TopViewDiv(bodyView, Language.StringByID(titleId)).LoadTopView(); allRoomView = new FrameLayout() { Y = Application.GetRealHeight(64), Height = Application.GetRealHeight(50), BackgroundColor = CSS_Color.MainBackgroundColor, }; bodyView.AddChidren(allRoomView); Button btnAllRoomText = new Button() { X = Application.GetRealWidth(16), Width = Application.GetRealWidth(280), TextID = StringId.SelectedAll, TextSize = CSS_FontSize.SubheadingFontSize, TextColor = CSS_Color.FirstLevelTitleColor, TextAlignment = TextAlignment.CenterLeft, }; allRoomView.AddChidren(btnAllRoomText); btnChooseAll = new Button() { X = Application.GetRealWidth(331), Gravity = Gravity.CenterVertical, Width = Application.GetMinRealAverage(28), Height = Application.GetMinRealAverage(28), UnSelectedImagePath = "Public/ChooseIcon.png", SelectedImagePath = "Public/ChooseOnIcon.png", IsSelected = true, }; allRoomView.AddChidren(btnChooseAll); allRoomView.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = Application.GetMinReal(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor, }); contentView = new VerticalScrolViewLayout() { Y = Application.GetRealHeight(64+50), Height = Application.GetRealHeight(450), }; bodyView.AddChidren(contentView); btnOption = new Button() { Y = Application.GetRealHeight(519 + 64), Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(220), Height = Application.GetRealHeight(44), BackgroundColor = CSS_Color.MainColor, TextAlignment = TextAlignment.Center, TextColor = CSS_Color.MainBackgroundColor, TextID = titleId == StringId.PermissionToUse ? StringId.Confirm : StringId.Shared, TextSize = CSS_FontSize.SubheadingFontSize, IsBold = true, Radius = (uint)Application.GetRealWidth(22), BorderColor = 0x00000000, BorderWidth = 0, }; bodyView.AddChidren(btnOption); if(titleId == StringId.PermissionToUse) { LoadFunctionRow(funs); } else { LoadFunctionRow(funs_New); } LoadEventList(); } /// /// 加载功能列表 /// void LoadFunctionRow(List shareDatas) { contentView.RemoveAll(); foreach (var function in room.GetRoomFunctions(false)) { var roomView = new FrameLayout() { Height = Application.GetRealHeight(50), BackgroundColor = CSS_Color.MainBackgroundColor, Tag = "row" }; contentView.AddChidren(roomView); Button btnRoomText = new Button() { X = Application.GetRealWidth(16), Width = Application.GetRealWidth(280), TextSize = CSS_FontSize.SubheadingFontSize, TextColor = CSS_Color.FirstLevelTitleColor, TextAlignment = TextAlignment.CenterLeft, Text = function.name, }; roomView.AddChidren(btnRoomText); Button btnChoose = new Button() { X = Application.GetRealWidth(331), Gravity = Gravity.CenterVertical, Width = Application.GetMinRealAverage(28), Height = Application.GetMinRealAverage(28), UnSelectedImagePath = "Public/ChooseIcon.png", SelectedImagePath = "Public/ChooseOnIcon.png", Tag = "ChooseIcon" }; roomView.AddChidren(btnChoose); if (shareDatas.Find((obj) => obj.ShareName == function.sid) != null) { btnChoose.IsSelected = true; } else { if (btnChooseAll.IsSelected) btnChooseAll.IsSelected = false; } LoadMethod_SharedDataChange(btnChoose, btnRoomText, roomView, function); var btnLine = new Button() { Gravity = Gravity.CenterHorizontal, //Y = Application.GetRealHeight(49), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor, }; contentView.AddChidren(btnLine); } } } }