using System;
|
using System.Collections.Generic;
|
using System.Threading;
|
|
namespace Shared.SimpleControl.Phone
|
{
|
public class UserDeviceToSecurity : FrameLayout
|
{
|
/// <summary>
|
/// 当前设备界面
|
/// </summary>
|
static UserDeviceToSecurity curView;
|
VerticalScrolViewLayout equipmentListScrolView;
|
VerticalScrolViewLayout bodyScrolView;
|
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public UserDeviceToSecurity ()
|
{
|
curView = this;
|
}
|
|
public void ShowSecurityView ()
|
{
|
#region 标题
|
var topView = new FrameLayout () {
|
Y = Application.GetRealHeight (36),
|
Height = Application.GetRealHeight (90),
|
BackgroundColor = SkinStyle.Current.MainColor,
|
};
|
AddChidren (topView);
|
|
var title = new Button () {
|
TextAlignment = TextAlignment.Center,
|
Text = Language.StringByID (R.MyInternationalizationString.Security),
|
TextColor = SkinStyle.Current.TextColor1,
|
TextSize = 19,
|
};
|
topView.AddChidren (title);
|
|
var logo = new Button () {
|
Width = Application.GetRealWidth (154),
|
Height = Application.GetRealHeight (90),
|
X = Application.GetRealWidth (486),
|
UnSelectedImagePath = MainPage.LogoString,
|
};
|
topView.AddChidren (logo);
|
var back = new Button () {
|
Height = Application.GetRealHeight (90),
|
Width = Application.GetRealWidth (85),
|
UnSelectedImagePath = "Item/Back.png",
|
SelectedImagePath = "Item/BackSelected.png",
|
};
|
topView.AddChidren (back);
|
back.MouseUpEventHandler += (sender, e) => {
|
(Parent as PageLayout).PageIndex -= 1;
|
curView = null;
|
};
|
|
#endregion
|
|
|
bodyScrolView = new VerticalScrolViewLayout () {
|
Height = Application.GetRealHeight (Application.DesignHeight - 126),
|
Y = Application.GetRealHeight (126),
|
};
|
AddChidren (bodyScrolView);
|
|
//显示有多少个
|
var securityModulFiles = IO.FileUtils.ReadFiles ().FindAll ((obj) => obj.Split ('_').Length == 4 && obj.Split ('_') [0] == "Equipment" && obj.Split ('_') [1] == DeviceType.SecurityModule.ToString ());
|
var securityFiles = IO.FileUtils.ReadFiles ().FindAll ((obj) => obj.Split ('_').Length == 5 && obj.Split ('_') [0] == "Equipment" && obj.Split ('_') [1] == DeviceType.SecurityModule.ToString ());
|
foreach (var securityFile in securityModulFiles) {
|
SecurityModul securityDevice = Newtonsoft.Json.JsonConvert.DeserializeObject<SecurityModul> (CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile (securityFile)));
|
if (securityDevice == null) {
|
continue;
|
}
|
FrameLayout roomView = new FrameLayout () {
|
Height = Application.GetRealHeight (110),
|
BackgroundColor = SkinStyle.Current.ViewColor,
|
Tag = securityDevice.Name
|
};
|
bodyScrolView.AddChidren (roomView);
|
Button btnRoomNull = new Button () {
|
Height = 1,
|
SelectedBackgroundColor = SkinStyle.Current.MainColor,
|
BackgroundColor = SkinStyle.Current.MainColor,
|
};
|
bodyScrolView.AddChidren (btnRoomNull);
|
Button btnPoint = new Button () {
|
Width = Application.GetRealWidth (10),
|
Height = Application.GetRealHeight (10),
|
X = Application.GetRealWidth (50),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Item/Point.png",
|
SelectedImagePath = "Item/Point.png",
|
};
|
roomView.AddChidren (btnPoint);
|
Button btnRoomName = new Button () {
|
Text = securityDevice.Name,
|
X = btnPoint.Right + Application.GetRealWidth (20),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = SkinStyle.Current.TextColor1,
|
SelectedTextColor = SkinStyle.Current.TextColor1,
|
};
|
roomView.AddChidren (btnRoomName);
|
|
btnRoomName.MouseUpEventHandler += (sender, e) => {
|
UserSecurityPage usp = new UserSecurityPage (securityDevice);
|
UserMiddle.DevicePageView.AddChidren (usp);
|
usp.ShowSecurityArea ();
|
UserMiddle.DevicePageView.PageIndex = 2;
|
};
|
}
|
|
#region
|
FrameLayout ShowAllView = new FrameLayout () {
|
Height = Application.GetRealHeight (85),
|
BackgroundColor = SkinStyle.Current.MainColor,
|
};
|
bodyScrolView.AddChidren (ShowAllView);
|
|
Button btnShowAll = new Button () {
|
X = Application.GetRealWidth (20),
|
TextAlignment = TextAlignment.CenterLeft,
|
Text = Language.StringByID (R.MyInternationalizationString.AreaList),
|
TextColor = SkinStyle.Current.TextColor1,
|
SelectedTextColor = SkinStyle.Current.TextColor1
|
};
|
ShowAllView.AddChidren (btnShowAll);
|
|
Button downSelectedButton = new Button () {
|
X = Application.GetRealWidth (550),
|
Height = Application.GetRealHeight (50),
|
Width = Application.GetRealWidth (55),
|
UnSelectedImagePath = "Item/Down.png",
|
SelectedImagePath = "Item/DownSelected.png",
|
Gravity = Gravity.CenterVertical,
|
IsSelected = true,
|
};
|
ShowAllView.AddChidren (downSelectedButton);
|
|
//显示出所有的灯
|
equipmentListScrolView = new VerticalScrolViewLayout () {
|
Height = bodyScrolView.Height - ShowAllView.Height,
|
};
|
bodyScrolView.AddChidren (equipmentListScrolView);
|
int LightCount = 0;
|
|
EventHandler<MouseEventArgs> eHandler = (sender, e) => {
|
btnShowAll.IsSelected = !btnShowAll.IsSelected;
|
downSelectedButton.IsSelected = btnShowAll.IsSelected;
|
UserConfig.Instance.SaveUserConfig ();
|
if (btnShowAll.IsSelected) {
|
equipmentListScrolView.RemoveAll ();
|
foreach (var securityModulFile in securityFiles) {
|
SecurityModul securityDevice = Newtonsoft.Json.JsonConvert.DeserializeObject<SecurityModul> (CommonPage.MyEncodingUTF8.GetString (IO.FileUtils.ReadFile (securityModulFile)));
|
if (securityDevice == null) {
|
continue;
|
}
|
LightCount++;
|
|
FrameLayout lightView = new FrameLayout () {
|
Width = Application.GetRealWidth(640),
|
Height = Application.GetRealHeight (110),
|
};
|
lightView.AddTag ("UpdataKey", securityDevice.CommonLoopID);
|
equipmentListScrolView.AddChidren (lightView);
|
Button btnLightViewBottomNull = new Button () {
|
Y = Application.GetRealHeight (107),
|
Height = Application.GetRealHeight (3),
|
BackgroundColor = SkinStyle.Current.MainColor,
|
SelectedBackgroundColor = SkinStyle.Current.MainColor,
|
};
|
lightView.AddChidren (btnLightViewBottomNull);
|
Button btnPoint2 = new Button () {
|
Width = Application.GetRealWidth (10),
|
Height = Application.GetRealHeight (10),
|
X = Application.GetRealWidth (50),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Item/Point.png",
|
SelectedImagePath = "Item/Point.png",
|
};
|
lightView.AddChidren (btnPoint2);
|
|
var tempDeviceName = new Button () {
|
X = btnPoint2.Right + Application.GetRealWidth (20),
|
TextAlignment = TextAlignment.CenterLeft,
|
Width = Application.GetRealWidth (640),
|
Text = securityDevice.Name,
|
TextColor = SkinStyle.Current.TextColor1,
|
SelectedTextColor = SkinStyle.Current.TextColor1,
|
};
|
lightView.AddChidren (tempDeviceName);
|
|
EventHandler<MouseEventArgs> eHandler2 = (sender2, e2) => {
|
UserSecurityAreaPage usap = new UserSecurityAreaPage (securityDevice);
|
UserMiddle.DevicePageView.AddChidren (usap);
|
usap.ShowSecurityArea ();
|
UserMiddle.DevicePageView.PageIndex = 2;
|
};
|
tempDeviceName.MouseUpEventHandler += eHandler2;
|
lightView.MouseUpEventHandler += eHandler2;
|
btnLightViewBottomNull.MouseUpEventHandler += eHandler2;
|
}
|
equipmentListScrolView.Height = LightCount * Application.GetRealHeight (130);
|
} else {
|
equipmentListScrolView.Height = 0;
|
LightCount = 0;
|
}
|
};
|
btnShowAll.MouseUpEventHandler += eHandler;
|
downSelectedButton.MouseUpEventHandler += eHandler;
|
//默认是选中状态
|
eHandler (btnShowAll, new MouseEventArgs ());
|
#endregion
|
}
|
}
|
}
|