using System;
|
using Shared.Common;
|
using Shared.Phone.UserView;
|
|
namespace Shared.Phone.Device.CommonForm
|
{
|
public class RoomView:FrameLayout
|
{
|
/// <summary>
|
/// Room
|
/// </summary>
|
private Common.Room room;
|
/// <summary>
|
/// action
|
/// </summary>
|
public Action action;
|
|
/// <summary>
|
/// RoomView
|
/// </summary>
|
/// <param name="x"></param>
|
/// <param name="y"></param>
|
public RoomView(int x, int y)
|
{
|
X = Application.GetRealWidth(x);
|
Y = Application.GetRealHeight(y);
|
Width = Application.GetRealWidth(487);
|
Height = Application.GetRealHeight(348);
|
}
|
|
/// <summary>
|
/// Init
|
/// </summary>
|
/// <param name="r"></param>
|
public void Init(Common.Room r)
|
{
|
this.room = r;
|
|
var roomBackView = new FrameLayout()
|
{
|
Width = Application.GetRealWidth(717),
|
Height = Application.GetRealHeight(478)
|
};
|
AddChidren(roomBackView);
|
|
var roomImg = new ImageView()
|
{
|
ImagePath = room.BackgroundImageType == 0 ? room.BackgroundImage : System.IO.Path.Combine(Config.Instance.FullPath, room.BackgroundImage),
|
Radius = (uint)Application.GetRealHeight(17)
|
};
|
roomBackView.AddChidren(roomImg);
|
|
var roomNameBackground = new FrameLayout
|
{
|
X = Application.GetRealWidth(29),
|
Y = Application.GetRealHeight(282),
|
Width = Application.GetRealWidth(200),
|
Height = Application.GetRealHeight(80),
|
BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor2
|
};
|
roomBackView.AddChidren(roomNameBackground);
|
roomNameBackground.SetCornerWithSameRadius(Application.GetRealHeight(40), HDLUtils.RectCornerTopRight | HDLUtils.RectCornerBottomRight);
|
|
var roomName = new Button()
|
{
|
X = Application.GetRealWidth(5),
|
Width = Application.GetRealWidth(190),
|
Text = room.Name,
|
TextColor = ZigbeeColor.Current.GXCTextWhiteColor,
|
};
|
roomNameBackground.AddChidren(roomName);
|
|
|
var roomTemperatureBackground = new FrameLayout
|
{
|
X = Application.GetRealWidth(29),
|
Y = Application.GetRealHeight(374),
|
Width = Application.GetRealWidth(340),
|
Height = Application.GetRealHeight(80),
|
BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor2
|
};
|
roomBackView.AddChidren(roomTemperatureBackground);
|
roomTemperatureBackground.SetCornerWithSameRadius(Application.GetRealHeight(40), HDLUtils.RectCornerTopRight | HDLUtils.RectCornerBottomRight);
|
|
var temperatureIcon = new Button
|
{
|
X = Application.GetRealWidth(12),
|
Width = Application.GetMinRealAverage(58),
|
Height = Application.GetMinRealAverage(58),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Room/Temperature.png"
|
};
|
roomTemperatureBackground.AddChidren(temperatureIcon);
|
|
var temperatureText = new Button
|
{
|
X = Application.GetRealWidth(69),
|
Width = Application.GetRealWidth(86),
|
Height = Application.GetRealHeight(58),
|
Gravity = Gravity.CenterVertical,
|
Text = "26℃"
|
};
|
roomTemperatureBackground.AddChidren(temperatureText);
|
|
var humidityIcon = new Button
|
{
|
X = Application.GetRealWidth(179),
|
Width = Application.GetMinRealAverage(58),
|
Height = Application.GetMinRealAverage(58),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Room/Humidity.png"
|
};
|
roomTemperatureBackground.AddChidren(humidityIcon);
|
|
var humidityText = new Button
|
{
|
X = Application.GetRealWidth(236),
|
Width = Application.GetRealWidth(86),
|
Height = Application.GetRealHeight(58),
|
Gravity = Gravity.CenterVertical,
|
Text = "13%"
|
};
|
roomTemperatureBackground.AddChidren(humidityText);
|
|
|
var roomListBtn = new Button()
|
{
|
X = roomBackView.Width - Application.GetRealWidth(100 + 20),
|
Y = Application.GetRealHeight(20),
|
Width = Application.GetMinRealAverage(100),
|
Height = Application.GetMinRealAverage(100),
|
UnSelectedImagePath = "Room/List.png",
|
};
|
roomBackView.AddChidren(roomListBtn);
|
|
roomListBtn.MouseUpEventHandler += (send, e) =>
|
{
|
CommonPage.Instance.IsDrawerLockMode = true;
|
var editRoom = new Device.Room.EditRoom();
|
HomePage.Instance.AddChidren(editRoom);
|
HomePage.Instance.PageIndex += 1;
|
editRoom.Show(room);
|
editRoom.action += () =>
|
{
|
action?.Invoke();
|
};
|
};
|
|
}
|
}
|
}
|