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.uDeviceDirectionName1);
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.uDeviceDirectionName2);
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.uDeviceDirectionName3);
arry = objectText.Split(new string[] { "(" }, StringSplitOptions.RemoveEmptyEntries);
objectText = arry[0].Trim();
unSelectPic = "Device/ButtonPanelFour.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFourButtonDirectionForm");
//方悦单开双控面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName4);
unSelectPic = "Device/ButtonPanelFangyueTwo.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueTwoButtonDirectionForm");
//方悦双开四控面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName5);
unSelectPic = "Device/ButtonPanelFangyueFour.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueFourButtonDirectionForm");
//方悦四开八控面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName6);
unSelectPic = "Device/ButtonPanelFangyueEight.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueEightButtonDirectionForm");
//方悦新风小模块,图片和3路继电器小模块相同
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName7);
unSelectPic = "Device/RelayThreeLoad.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueFreshAirModulDirectionForm");
//方悦新风面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName8);
unSelectPic = "Device/ButtonPanelFangyueFreshAir.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueFreshAirDirectionForm");
//简约多功能面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName28);
unSelectPic = "Device/ButtonPanelSimpleMultifunction.png";
this.AddMenuRow(objectText, unSelectPic, "PanelSimpleMultifunctionDirectionForm");
//简约环境面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName29);
unSelectPic = "Device/ButtonPanelSimpleEnvironment.png";
this.AddMenuRow(objectText, unSelectPic, "PanelSimpleEnvironmentDirectionForm");
//方悦环境面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName9);
unSelectPic = "Device/ButtonPanelFangyueEnvironment.png";
this.AddMenuRow(objectText, unSelectPic, "PanelFangyueEnvironmentDirectionForm");
//窗帘面板
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName10);
unSelectPic = "Device/ButtonPanelCurtain.png";
this.AddMenuRow(objectText, unSelectPic, "PanelCurtainDirectionForm");
//3路继电器小模块
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName11);
unSelectPic = "Device/RelayThreeLoad.png";
this.AddMenuRow(objectText, unSelectPic, "RelayThreeLoadDirectionForm");
//1路调光器小模块
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName12);
unSelectPic = "Device/DimmableLightOneLoad.png";
this.AddMenuRow(objectText, unSelectPic, "DimmableLightOneLoadDirectionForm");
//Zigbee智能开合帘电机
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName13);
unSelectPic = "Device/CurtainAutoOpen.png";
this.AddMenuRow(objectText, unSelectPic, "CurtainAutoOpenDirectionForm");
//Zigbee智能管状电机
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName14);
unSelectPic = "Device/CurtainSiphonate.png";
this.AddMenuRow(objectText, unSelectPic, "CurtainSiphonateDirectionForm");
//空调
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName15);
unSelectPic = "Device/AirConditionerZbGateway.png";
this.AddMenuRow(objectText, unSelectPic, "AirConditionerZbGatewayDirectionForm");
//智能门锁
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName16);
unSelectPic = "Device/IntelligentLocksH06C.png";
this.AddMenuRow(objectText, unSelectPic, "IntelligentLocksH06cDirectionForm");
//PIR传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName17);
unSelectPic = "Device/SensorPir.png";
this.AddMenuRow(objectText, unSelectPic, "SensorPirDirectionForm");
//红外传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName18);
unSelectPic = "Device/SensorInfrared.png";
this.AddMenuRow(objectText, unSelectPic, "SensorInfraredDirectionForm");
//燃气传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName19);
unSelectPic = "Device/SensorCarbonMonoxide.png";
this.AddMenuRow(objectText, unSelectPic, "SensorCarbonMonoxideDirectionForm");
//吸顶燃气传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName26);
unSelectPic = "Device/SensorCarbonMonoxide.png";
this.AddMenuRow(objectText, unSelectPic, "SensorCeilingGasDirectionForm");
//烟雾传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName20);
unSelectPic = "Device/SensorFire.png";
this.AddMenuRow(objectText, unSelectPic, "SensorFireDirectionForm");
//水浸传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName21);
unSelectPic = "Device/SensorWater.png";
this.AddMenuRow(objectText, unSelectPic, "SensorWaterDirectionForm");
//门窗传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName22);
unSelectPic = "Device/SensorDoorWindow.png";
this.AddMenuRow(objectText, unSelectPic, "SensorDoorWindowDirectionForm");
//温湿度传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName23);
unSelectPic = "Device/SensorTemperatureHumidity.png";
this.AddMenuRow(objectText, unSelectPic, "SensorTemperatureHumidityForm");
//球型移动传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName30);
unSelectPic = "Device/SensorSphericalMotion.png";
this.AddMenuRow(objectText, unSelectPic, "SensorSphericalMotionDirectionForm");
//PM2.5空气质量传感器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName27);
unSelectPic = "Device/SensorPMTwoPointFive.png";
this.AddMenuRow(objectText, unSelectPic, "SensorPMTwoPointFiveForm");
//中继器
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName24);
unSelectPic = "Device/RepeaterZigbee.png";
this.AddMenuRow(objectText, unSelectPic, "RepeaterZigbeeDirectionForm");
//空气开关
objectText = Language.StringByID(R.MyInternationalizationString.uDeviceDirectionName25);
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
}
}