using System;
using System.Collections.Generic;
using ZigBee.Device;
namespace Shared.Phone.UserCenter.DeviceDirection
{
///
/// 网关添加可能的设备类型的一览画面,
/// 它从[DeviceManagementMainForm]画面打开
///
public class AddDeviceTypeListForm : EditorCommonForm
{
#region ■ 变量声明___________________________
///
/// 列表控件
///
private VerticalListControl listView = null;
#endregion
#region ■ 初始化_____________________________
///
/// 画面显示(底层会固定调用此方法,借以完成画面创建)
///
public void ShowForm()
{
//设定标题
base.SetTitleText(Language.StringByID(R.MyInternationalizationString.uDeviceType));
//初始化中部控件
this.InitMiddleFrame();
}
///
/// 初始化中部控件
///
private void InitMiddleFrame()
{
//清空bodyFrame
this.ClearBodyFrame();
var frameBack = new FrameLayout();
frameBack.Height = Application.GetRealHeight(3);
frameBack.BackgroundColor = UserCenterColor.Current.White;
bodyFrameLayout.AddChidren(frameBack);
listView = new VerticalListControl(29);
listView.Y = frameBack.Bottom;
listView.BackgroundColor = UserCenterColor.Current.White;
listView.Height = bodyFrameLayout.Height - Application.GetRealHeight(3);
bodyFrameLayout.AddChidren(listView);
//2按键触摸面板
var objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId202);
var unSelectPic = "Device/ButtonPanelTwo.png";
var arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries);
objectText = arry[0].Trim();
this.AddMenuRow(objectText, unSelectPic, "PanelTwoButtonDirectionForm");
//3按键触摸面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId201);
arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries);
objectText = arry[0].Trim();
unSelectPic = "Device/ButtonPanelThree.png";
this.AddMenuRow(objectText, unSelectPic, "PanelThreeButtonDirectionForm");
//4按键触摸面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId200);
arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries);
objectText = arry[0].Trim();
unSelectPic = "Device/ButtonPanelFour.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFourButtonDirectionForm");
//3路继电器小模块
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId2300);
unSelectPic = "Device/RelayThreeLoad.png";
this.AddMenuRow(objectText, unSelectPic, "RelayThreeLoadDirectionForm");
//1路调光器小模块
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId2500);
unSelectPic = "Device/DimmableLightOneLoad.png";
this.AddMenuRow(objectText, unSelectPic, "DimmableLightOneLoadDirectionForm");
//Zigbee智能开合帘电机
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId100);
unSelectPic = "Device/CurtainAutoOpen.png";
this.AddMenuRow(objectText, unSelectPic, "CurtainAutoOpenDirectionForm");
//Zigbee智能管状电机
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId101);
unSelectPic = "Device/CurtainSiphonate.png";
this.AddMenuRow(objectText, unSelectPic, "CurtainSiphonateDirectionForm");
//空调
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId3600);
unSelectPic = "Device/AirConditionerZbGateway.png";
this.AddMenuRow(objectText, unSelectPic, "AirConditionerZbGatewayDirectionForm");
//智能门锁
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceBelongId2800);
unSelectPic = "Device/IntelligentLocksH06C.png";
this.AddMenuRow(objectText, unSelectPic, "IntelligentLocksH06cDirectionForm");
//PIR传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1200);
unSelectPic = "Device/SensorPir.png";
this.AddMenuRow(objectText, unSelectPic, "SensorPirDirectionForm");
//红外传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1303);
unSelectPic = "Device/SensorInfrared.png";
this.AddMenuRow(objectText, unSelectPic, "SensorInfraredDirectionForm");
//燃气传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1300);
unSelectPic = "Device/SensorCarbonMonoxide.png";
this.AddMenuRow(objectText, unSelectPic, "SensorCarbonMonoxideDirectionForm");
//烟雾传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1302);
unSelectPic = "Device/SensorFire.png";
this.AddMenuRow(objectText, unSelectPic, "SensorFireDirectionForm");
//水浸传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1304);
unSelectPic = "Device/SensorWater.png";
this.AddMenuRow(objectText, unSelectPic, "SensorWaterDirectionForm");
//门窗传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId1301);
unSelectPic = "Device/SensorDoorWindow.png";
this.AddMenuRow(objectText, unSelectPic, "SensorDoorWindowDirectionForm");
//温湿度传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceBelongId10);
unSelectPic = "Device/SensorTemperatureHumidity.png";
this.AddMenuRow(objectText, unSelectPic, "SensorTemperatureHumidityForm");
//中继器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId3900);
unSelectPic = "Device/RepeaterZigbee.png";
this.AddMenuRow(objectText, unSelectPic, "RepeaterZigbeeDirectionForm");
//空气开关
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceModelId4100);
unSelectPic = "Device/AirSwitchCloudContr.png";
this.AddMenuRow(objectText, unSelectPic, "AirSwitchCloudContrDirectionForm");
//第三方设备
objectText = Language.StringByID(R.MyInternationalizationString.uThirdPartyDevice);
unSelectPic = "Device/ThirdPartyDevice.png";
var rowThrid = this.AddMenuRow(objectText, unSelectPic, string.Empty, false);
rowThrid.ButtonClickEvent += (sender, e) =>
{
var form = new Device.DeviceSearchForm();
form.AddForm(string.Empty);
};
//调整列表控件的高度
listView.AdjustRealHeight(Application.GetRealHeight(23));
}
#endregion
#region ■ 添加菜单栏_________________________
///
/// 添加菜单栏
///
/// 显示文本
/// 图片:非点亮
/// 目标界面名
/// 添加底线
private FrameRowControl AddMenuRow(string objectText, string unSelectPic, string formName, bool addLine = true)
{
var rowLayout = new FrameRowControl(listView.rowSpace / 2);
listView.AddChidren(rowLayout);
//图标
var btnIcon = rowLayout.AddLeftIcon(81);
btnIcon.UnSelectedImagePath = unSelectPic;
//设备
var btnObject = rowLayout.AddLeftCaption(objectText, 700);
btnObject.TextSize = 15;
//添加向右的图标
rowLayout.AddRightArrow();
if (addLine == true)
{
rowLayout.AddBottomLine();
}
if (formName != string.Empty)
{
rowLayout.ButtonClickEvent += (sender, e) =>
{
//反射目标界面
this.LoadFormByFullName("Shared.Phone.UserCenter.DeviceDirection." + formName);
};
}
return rowLayout;
}
#endregion
}
}