using Shared.SimpleControl.Phone;
|
using System;
|
using System.Collections.Generic;
|
|
namespace Shared.SimpleControl.Pad
|
{
|
/// <summary>
|
/// 空调设备房间
|
/// </summary>
|
public class UserDeviceToScene : Shared.Dialog
|
{
|
VerticalScrolViewLayout bodyScrolView;
|
|
FrameLayout LongPressFrameLayout = new FrameLayout ();
|
UserScenePage ControlBodyView;
|
FrameLayout bordorView;
|
VerticalScrolViewLayout RoomListScrolView;
|
Button beforeClickButton = new Button ();
|
Button btnGloba;
|
/// <summary>
|
/// 构造函数
|
/// </summary>
|
public UserDeviceToScene ()
|
{
|
BackgroundColor = 0xFF2f2f2f;
|
showAllScene ();
|
}
|
|
public void Refresh ()
|
{
|
Close ();
|
new UserDeviceToScene ().Show ();
|
}
|
|
/// <summary>
|
/// 显示房间的所有场景
|
/// </summary>
|
void showAllScene ()
|
{
|
#region 标题
|
var topView = new FrameLayout () {
|
Y = Application.GetRealHeight (36),
|
Height = Application.GetRealHeight (90),
|
BackgroundColor = 0xFF2f2f2f
|
};
|
AddChidren (topView);
|
|
var title = new Button () {
|
TextAlignment = TextAlignment.Center,
|
Text = Language.StringByID (R.MyInternationalizationString.Scenes),
|
TextSize = 19,
|
};
|
topView.AddChidren (title);
|
|
var back = new Button () {
|
Height = Application.GetRealHeight (120),
|
Width = Application.GetRealWidth (95),
|
UnSelectedImagePath = "Item/Back.png",
|
SelectedImagePath = "Item/BackSelected.png",
|
Gravity = Gravity.CenterVertical,
|
};
|
topView.AddChidren (back);
|
back.MouseUpEventHandler += (sender, e) => {
|
Close ();
|
UserMiddle.DeviceMode ();
|
};
|
var logo = new Button () {
|
Width = Application.GetRealWidth (154),
|
Height = Application.GetRealHeight (90),
|
X = Application.GetRealWidth (486),
|
UnSelectedImagePath = MainPage.LogoString,
|
};
|
topView.AddChidren (logo);
|
var btnl = new Button () {
|
Height = 1,
|
BackgroundColor = 0xFF2f2f2f,
|
Y = topView.Height - 1
|
};
|
topView.AddChidren (btnl);
|
#endregion
|
bordorView = new FrameLayout () {
|
Width = Application.GetRealWidth (480),
|
Height = Application.GetRealHeight (Application.DesignHeight - 150),
|
Y = Application.GetRealHeight (150),
|
BackgroundColor = 0xFF2f2f2f
|
};
|
AddChidren (bordorView);
|
#region titelView
|
var roomTitleView = new FrameLayout () {
|
Height = Application.GetRealHeight (140),
|
Width = Application.GetRealWidth (480),
|
BackgroundColor = SkinStyle.Current.MainColor,
|
};
|
bordorView.AddChidren (roomTitleView);
|
|
btnGloba = new Button () {
|
TextSize = 16,
|
SelectedTextColor = SkinStyle.Current.SelectedColor,
|
TextColor = SkinStyle.Current.TextColor1,
|
TextID = R.MyInternationalizationString.GlobaScene,
|
IsSelected = true
|
};
|
roomTitleView.AddChidren (btnGloba);
|
|
var btnLine1 = new Button () {
|
Height = 1,
|
Y = roomTitleView.Height - 1,
|
BackgroundColor = 0xFF2f2f2f,
|
};
|
roomTitleView.AddChidren (btnLine1);
|
|
btnGloba.MouseUpEventHandler += (sender, e) => {
|
btnGloba.IsSelected = true;
|
for (int i = 0; i < RoomListScrolView.ChildrenCount; i++) {
|
var view = RoomListScrolView.GetChildren (i);
|
for (int j = 0; j < (view as FrameLayout).ChildrenCount; j++) {
|
var btn = (view as FrameLayout).GetChildren (j);
|
if (btn.GetType () == typeof (Button))
|
(btn as Button).IsSelected = false;
|
}
|
}
|
|
if (ControlBodyView != null) {
|
ControlBodyView.RemoveFromParent ();
|
}
|
ControlBodyView = new UserScenePage (null) {
|
Width = Application.GetRealWidth (Application.DesignWidth) - bordorView.Width,
|
Height = Application.GetRealHeight (Application.DesignHeight - 150),
|
X = bordorView.Right,
|
Y = bordorView.Y,
|
BackgroundColor = SkinStyle.Current.MainColor
|
};
|
AddChidren (ControlBodyView);
|
ControlBodyView.ShowUserScene (null);
|
};
|
#endregion
|
|
FrameLayout bodyView = new FrameLayout () {
|
Width = LayoutParams.MatchParent,
|
Height = Application.GetRealHeight (Application.DesignHeight - 150 - 140),
|
Y = roomTitleView.Bottom,
|
};
|
bordorView.AddChidren (bodyView);
|
bodyScrolView = new VerticalScrolViewLayout ();
|
bodyView.AddChidren (bodyScrolView);
|
|
InitView ();
|
ControlBodyView = new UserScenePage (null) {
|
Width = Application.GetRealWidth (Application.DesignWidth) - bordorView.Width,
|
Height = Application.GetRealHeight (Application.DesignHeight - 150),
|
X = bordorView.Right,
|
Y = bordorView.Y,
|
BackgroundColor = SkinStyle.Current.MainColor
|
};
|
AddChidren (ControlBodyView);
|
ControlBodyView.ShowUserScene (null);
|
}
|
|
void InitView ()
|
{
|
bodyScrolView.RemoveAll ();
|
|
RoomListScrolView = new VerticalScrolViewLayout () {
|
Height = bodyScrolView.Height - Application.GetRealHeight (140),
|
};
|
bodyScrolView.AddChidren (RoomListScrolView);
|
FrameLayout bottomView = new FrameLayout () {
|
Height = Application.GetRealHeight (140),
|
//Y = bodyScrolView.Height - Application.GetRealHeight(90),
|
};
|
bodyScrolView.AddChidren (bottomView);
|
Button btnHideNullRoom = new Button () {
|
Width = LayoutParams.MatchParent,
|
Height = LayoutParams.MatchParent,
|
TextID = UserConfig.Instance.HideInvalidRoomScene == true ? R.MyInternationalizationString.ShowAllRoomList : R.MyInternationalizationString.HideNullRoomScene,
|
TextAlignment = TextAlignment.Center,
|
IsSelected = UserConfig.Instance.HideInvalidRoomScene,
|
};
|
bottomView.AddChidren (btnHideNullRoom);
|
btnHideNullRoom.MouseUpEventHandler += (sender, e) => {
|
btnHideNullRoom.IsSelected = !btnHideNullRoom.IsSelected;
|
UserConfig.Instance.HideInvalidRoomScene = btnHideNullRoom.IsSelected;
|
UserConfig.Instance.SaveUserConfig ();
|
InitRoomScene (btnHideNullRoom.IsSelected);
|
btnHideNullRoom.TextID = UserConfig.Instance.HideInvalidRoomScene == true ? R.MyInternationalizationString.ShowAllRoomList : R.MyInternationalizationString.HideNullRoomScene;
|
};
|
InitRoomScene (btnHideNullRoom.IsSelected);
|
Button btnLineNull = new Button () {
|
Height = 1,
|
BackgroundColor = 0xFB757575
|
};
|
bottomView.AddChidren (btnLineNull);
|
}
|
|
void InitRoomScene (bool hideNull)
|
{
|
RoomListScrolView.RemoveAll ();
|
foreach (var room in Room.Lists) {
|
if (room.Name == "") {
|
continue;
|
}
|
if (hideNull && room.SceneFilePathList.Count == 0)
|
continue;
|
FrameLayout roomView = new FrameLayout () {
|
Height = Application.GetRealHeight (140),
|
Tag = room.Name
|
};
|
RoomListScrolView.AddChidren (roomView);
|
|
EventHandler<MouseEventArgs> ShowLightRoom = (button, mouseEventArgs) => {
|
btnGloba.IsSelected = false;
|
for (int i = 0; i < RoomListScrolView.ChildrenCount; i++) {
|
var view = RoomListScrolView.GetChildren (i);
|
if (view.Tag.ToString () == room.Name) {
|
for (int j = 0; j < (view as FrameLayout).ChildrenCount; j++) {
|
var btn = (view as FrameLayout).GetChildren (j);
|
if (btn.GetType () == typeof (Button))
|
(btn as Button).IsSelected = true;
|
}
|
} else {
|
for (int j = 0; j < (view as FrameLayout).ChildrenCount; j++) {
|
var btn = (view as FrameLayout).GetChildren (j);
|
if (btn.GetType () == typeof (Button))
|
(btn as Button).IsSelected = false;
|
}
|
}
|
}
|
if (ControlBodyView != null) {
|
ControlBodyView.RemoveFromParent ();
|
}
|
ControlBodyView = new UserScenePage (room) {
|
Width = Application.GetRealWidth (Application.DesignWidth) - bordorView.Width,
|
Height = Application.GetRealHeight (Application.DesignHeight - 150),
|
X = bordorView.Right,
|
Y = bordorView.Y,
|
BackgroundColor = SkinStyle.Current.MainColor
|
};
|
AddChidren (ControlBodyView);
|
ControlBodyView.ShowUserScene (room);
|
};
|
|
var btnRoomName = new Button () {
|
Height = Application.GetRealHeight (140),
|
TextAlignment = TextAlignment.CenterLeft,
|
SelectedTextColor = SkinStyle.Current.SelectedColor,
|
TextColor = SkinStyle.Current.TextColor1,
|
BackgroundColor = SkinStyle.Current.Transparent,
|
SelectedBackgroundColor = SkinStyle.Current.MainColor,
|
Padding = new Padding (0, 35, 0, 0),
|
Text = room.Name
|
};
|
roomView.AddChidren (btnRoomName);
|
btnRoomName.MouseUpEventHandler += ShowLightRoom;
|
var btnPoint = new Button () {
|
Width = Application.GetRealWidth (10),
|
Height = Application.GetRealHeight (10),
|
X = Application.GetRealWidth (30),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Item/Point.png",
|
SelectedImagePath = "Item/Point.png",
|
};
|
roomView.AddChidren (btnPoint);
|
|
var btnNumber = new EditText () {
|
Width = Application.GetMinRealAverage (50),
|
Height = Application.GetMinRealAverage (35),
|
X = Application.GetRealWidth (410),
|
Gravity = Gravity.CenterVertical,
|
UnSelectedImagePath = "Item/LightingCount.png",
|
SelectedImagePath = "Item/LightingCount.png",
|
Enable = false,
|
Text = room.SceneFilePathList.Count.ToString (),
|
TextColor = SkinStyle.Current.TextColor1,
|
//SelectedText42C,
|
TextAlignment = TextAlignment.Center,
|
Tag = room.Name
|
};
|
roomView.AddChidren (btnNumber);
|
}
|
}
|
}
|
}
|