| | |
| | | BackgroundColor = CSS.CSS_Color.viewTrans60lucence, |
| | | }; |
| | | this.AddChidren(frame); |
| | | LogicView.DateView modeView = new LogicView.DateView(); |
| | | modeView.btnTitle.TextID = StringId.modeLogic; |
| | | modeView.FLayoutView(frame, modeStr.Count); |
| | | modeView.btnCancel.MouseUpEventHandler += (sender2, e2) => |
| | | { |
| | | frame.RemoveFromParent(); |
| | | }; |
| | | ///定义一个Btn记录选中状态 |
| | | Button checkBtn = new Button |
| | | { |
| | | Tag = "unknown", |
| | | }; |
| | | for (int i = 0; i < modeStr.Count; i++) |
| | | { |
| | | LogicView.CheckView modeTypeView = new LogicView.CheckView(); |
| | | modeTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); |
| | | modeView.frameLayout.AddChidren(modeTypeView.FLayoutView()); |
| | | modeTypeView.btnText.Text = modeStr[i]; |
| | | modeTypeView.btnClick.Tag = modeStr[i];//标记 |
| | | |
| | | if (acModehView.btnState.Text == modeStr[i]) |
| | | { |
| | | //显示之前的选中状态 |
| | | checkBtn.IsSelected = false; |
| | | modeTypeView.btnCheckIcon.IsSelected = true; |
| | | checkBtn = modeTypeView.btnCheckIcon; |
| | | checkBtn.Tag = modeTypeView.btnClick.Tag.ToString(); |
| | | } |
| | | //星期的点击事件 |
| | | modeTypeView.btnClick.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | checkBtn.IsSelected = false; |
| | | modeTypeView.btnCheckIcon.IsSelected = true; |
| | | checkBtn = modeTypeView.btnCheckIcon; |
| | | checkBtn.Tag = modeTypeView.btnClick.Tag.ToString(); |
| | | }; |
| | | |
| | | } |
| | | modeView.btnConfirm.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | if (checkBtn.Tag.ToString() == "unknown") |
| | | { |
| | | return; |
| | | } |
| | | ///之前的状态文本 |
| | | string currText = acModehView.btnState.Text; |
| | | PublicInterface modeView = new PublicInterface(); |
| | | modeView.SingleSelectionShow(frame, modeStr, Language.StringByID(StringId.modeLogic), currText |
| | | , (stateValue) => |
| | | { |
| | | string keyVlaue = "mode"; |
| | | Dictionary<string, string> dic = new Dictionary<string, string>(); |
| | | LogicMethod.dictionary(dic, "key", "mode"); |
| | | LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "mode")); |
| | | AddDictionaryData(dicSateteList, keyVlaue, dic); |
| | | acModehView.btnState.Text = stateValue; |
| | | selectedState = device.functionType + "_mode"; |
| | | |
| | | Dictionary<string, string> dic = new Dictionary<string, string>(); |
| | | LogicMethod.dictionary(dic, "key", "mode"); |
| | | string keyVlaue = "mode"; |
| | | LogicMethod.dictionary(dic, "value", GetModeValueString(checkBtn.Tag.ToString(), keyVlaue)); |
| | | acModehView.btnState.Text = checkBtn.Tag.ToString(); |
| | | selectedState = device.functionType + "_mode"; |
| | | AddDictionaryData(dicSateteList, keyVlaue, dic); |
| | | RemView(frame); |
| | | }; |
| | | }); |
| | | |
| | | }; |
| | | ///风速点击事件 |
| | | acSpeedView.btnClick.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | List<string> speedStr = new List<string> { |
| | | Language.StringByID(StringId.LowWindSpeed), |
| | | Language.StringByID(StringId.MiddleWindSpeed), |
| | |
| | | BackgroundColor = CSS.CSS_Color.viewTrans60lucence, |
| | | }; |
| | | this.AddChidren(frame); |
| | | LogicView.DateView speedView = new LogicView.DateView(); |
| | | speedView.btnTitle.TextID = StringId.modeLogic; |
| | | speedView.FLayoutView(frame, speedStr.Count); |
| | | speedView.btnCancel.MouseUpEventHandler += (sender2, e2) => |
| | | { |
| | | frame.RemoveFromParent(); |
| | | }; |
| | | ///定义一个Btn记录选中状态 |
| | | Button checkBtn = new Button |
| | | { |
| | | Tag = "unknown", |
| | | }; |
| | | for (int i = 0; i < speedStr.Count; i++) |
| | | { |
| | | LogicView.CheckView speedTypeView = new LogicView.CheckView(); |
| | | speedTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); |
| | | speedView.frameLayout.AddChidren(speedTypeView.FLayoutView()); |
| | | speedTypeView.btnText.Text = speedStr[i]; |
| | | speedTypeView.btnClick.Tag = speedStr[i];//标记 |
| | | |
| | | if (acSpeedView.btnState.Text == speedStr[i]) |
| | | { |
| | | //显示之前的选中状态 |
| | | checkBtn.IsSelected = false; |
| | | speedTypeView.btnCheckIcon.IsSelected = true; |
| | | checkBtn = speedTypeView.btnCheckIcon; |
| | | checkBtn.Tag = speedTypeView.btnClick.Tag.ToString(); |
| | | } |
| | | //星期的点击事件 |
| | | speedTypeView.btnClick.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | checkBtn.IsSelected = false; |
| | | speedTypeView.btnCheckIcon.IsSelected = true; |
| | | checkBtn = speedTypeView.btnCheckIcon; |
| | | checkBtn.Tag = speedTypeView.btnClick.Tag.ToString(); |
| | | }; |
| | | |
| | | } |
| | | speedView.btnConfirm.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | if (checkBtn.Tag.ToString() == "unknown") |
| | | { |
| | | return; |
| | | } |
| | | |
| | | Dictionary<string, string> dic = new Dictionary<string, string>(); |
| | | LogicMethod.dictionary(dic, "key", "fan"); |
| | | string keyVlaue = "fan"; |
| | | LogicMethod.dictionary(dic, "value", GetModeValueString(checkBtn.Tag.ToString(), keyVlaue)); |
| | | acSpeedView.btnState.Text = checkBtn.Tag.ToString(); |
| | | selectedState = device.functionType + "_fan"; |
| | | AddDictionaryData(dicSateteList, keyVlaue, dic); |
| | | RemView(frame); |
| | | }; |
| | | ///之前的状态文本 |
| | | string currText = acSpeedView.btnState.Text; |
| | | PublicInterface modeView = new PublicInterface(); |
| | | modeView.SingleSelectionShow(frame, speedStr, Language.StringByID(StringId.speedLogic), currText |
| | | , (stateValue) => |
| | | { |
| | | string keyVlaue = "fan"; |
| | | Dictionary<string, string> dic = new Dictionary<string, string>(); |
| | | LogicMethod.dictionary(dic, "key", "fan"); |
| | | LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "fan")); |
| | | AddDictionaryData(dicSateteList, keyVlaue, dic); |
| | | acSpeedView.btnState.Text = stateValue; |
| | | selectedState = device.functionType + "_fan"; |
| | | }); |
| | | }; |
| | | if (edit) |
| | | { |
| | |
| | | string keyVlaue = "mode"; |
| | | Dictionary<string, string> dic = new Dictionary<string, string>(); |
| | | LogicMethod.dictionary(dic, "key", "mode"); |
| | | LogicMethod.dictionary(dic, "value", GetModeValueString(stateValue, "FloorHeating")); |
| | | LogicMethod.dictionary(dic, "value", InterfaceDsplaysLogic.GetModeValueString(stateValue, "FloorHeating")); |
| | | AddDictionaryData(dicSateteList, keyVlaue, dic); |
| | | floorHeatingModehView.btnState.Text = stateValue; |
| | | selectedState = device.functionType + "_mode"; |
| | |
| | | |
| | | } |
| | | #endregion |
| | | #region 保存点击时间 |
| | | #region 保存点击事件 |
| | | saveView.btnClick.MouseUpEventHandler += (sen, e) => |
| | | { |
| | | |
| | |
| | | Output outputDevice = new Output(); |
| | | outputDevice.target_type = "1"; |
| | | outputDevice.sid = device.sid; |
| | | |
| | | switch (device.functionType) |
| | | { |
| | | case FunctionType.Dimmer: |
| | |
| | | #endregion |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 获取模式/风速键值 |
| | | /// </summary> |
| | | /// <param name="text"></param> |
| | | /// <param name="type"></param> |
| | | /// <returns></returns> |
| | | private string GetModeValueString(string text, string type) |
| | | { |
| | | string str = ""; |
| | | switch (type) |
| | | { |
| | | case "mode": |
| | | { |
| | | if (text == Language.StringByID(StringId.coolLogic)) |
| | | { |
| | | str = "cool"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.heatingLogic)) |
| | | { |
| | | str = "heat"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.autoLogic)) |
| | | { |
| | | str = "auto"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.dehumidifyLogic)) |
| | | { |
| | | str = "dry"; |
| | | } |
| | | } |
| | | break; |
| | | case "fan": |
| | | { |
| | | if (text == Language.StringByID(StringId.HighWindSpeed)) |
| | | { |
| | | str = "high"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.MiddleWindSpeed)) |
| | | { |
| | | str = "medium"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.LowWindSpeed)) |
| | | { |
| | | str = "low"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.Auto)) |
| | | { |
| | | str = "auto"; |
| | | } |
| | | } |
| | | break; |
| | | case "FloorHeating": |
| | | { |
| | | if (text == Language.StringByID(StringId.dayMode)) |
| | | { |
| | | str = "day"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.nightMode)) |
| | | { |
| | | str = "night"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.leaveMode)) |
| | | { |
| | | str = "away"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.ordinaryMode)) |
| | | { |
| | | str = "normal"; |
| | | } |
| | | else if (text == Language.StringByID(StringId.timeMode)) |
| | | { |
| | | str = "timer"; |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | return str; |
| | | } |
| | | |
| | | /// <summary> |
| | | ///开关=界面 |
| | | /// </summary> |
| | |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 移除控件 |
| | | /// </summary> |
| | | /// <param name="frame"></param> |
| | | private void RemView(FrameLayout frame) |
| | | { |
| | | frame.RemoveFromParent(); |
| | | } |
| | | /// <summary> |
| | | /// 显示编辑之前的设备状态 |
| | | /// </summary> |
| | | /// <param name="device">编辑设备</param> |
| | |
| | | //有数据重新赋值 |
| | | dicSateteList = dicList; |
| | | } |
| | | switch (device.functionType) |
| | | { |
| | | //开关灯光 |
| | | case FunctionType.Relay: |
| | | { |
| | | foreach (var dic in dicList) |
| | | { |
| | | string value = dic["value"]; |
| | | if (value == "on") |
| | | { |
| | | button1.Text = Language.StringByID(StringId.onLogic); |
| | | } |
| | | else |
| | | { |
| | | button1.Text = Language.StringByID(StringId.offLogic); |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case FunctionType.Dimmer: |
| | | case FunctionType.RGB: |
| | | case FunctionType.RGBW: |
| | | case FunctionType.ColorTemperature: |
| | | { |
| | | foreach (var dic in dicList) |
| | | { |
| | | string value = dic["value"]; |
| | | switch (dic["key"]) |
| | | { |
| | | case "on_off": |
| | | { |
| | | if (value == "on") |
| | | { |
| | | button1.Text = Language.StringByID(StringId.onLogic); |
| | | } |
| | | else |
| | | { |
| | | button1.Text = Language.StringByID(StringId.offLogic); |
| | | } |
| | | } |
| | | break; |
| | | case "brightness": |
| | | { |
| | | |
| | | button2.Text = value+"%"; |
| | | } |
| | | break; |
| | | } |
| | | |
| | | } |
| | | } |
| | | break; |
| | | case FunctionType.Curtain: |
| | | case FunctionType.MotorCurtain: |
| | | case FunctionType.RollingShutter: |
| | | { |
| | | foreach (var dic in dicList) |
| | | { |
| | | string value = dic["value"]; |
| | | switch (value) |
| | | { |
| | | case "on": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.onLogic); |
| | | } |
| | | break; |
| | | case "off": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.offLogic); |
| | | } |
| | | break; |
| | | case "stop": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.stop); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | } |
| | | break; |
| | | case FunctionType.AC: |
| | | { |
| | | foreach (var dic in dicList) |
| | | { |
| | | string value = dic["value"]; |
| | | switch (dic["key"]) |
| | | { |
| | | case "on_off": |
| | | { |
| | | switch (value) |
| | | { |
| | | case "on": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.onLogic); |
| | | } |
| | | break; |
| | | case "off": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.offLogic); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | break; |
| | | case "set_temp": |
| | | { |
| | | button2.Text = value + "℃"; |
| | | } |
| | | break; |
| | | case "mode": |
| | | { |
| | | switch (value) |
| | | { |
| | | case "cool": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.coolLogic); |
| | | } |
| | | break; |
| | | case "heat": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.heatingLogic); |
| | | } |
| | | break; |
| | | case "auto": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.autoLogic); |
| | | } |
| | | break; |
| | | case "dry": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.dehumidifyLogic); |
| | | } |
| | | break; |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | break; |
| | | case "fan": |
| | | { |
| | | switch (value) |
| | | { |
| | | case "high": |
| | | { |
| | | button4.Text = Language.StringByID(StringId.HighWindSpeed); |
| | | } |
| | | break; |
| | | case "medium": |
| | | { |
| | | button4.Text = Language.StringByID(StringId.MiddleWindSpeed); |
| | | } |
| | | break; |
| | | case "low": |
| | | { |
| | | button4.Text = Language.StringByID(StringId.LowWindSpeed); |
| | | } |
| | | break; |
| | | case "auto": |
| | | { |
| | | button4.Text = Language.StringByID(StringId.Auto); |
| | | } |
| | | break; |
| | | } |
| | | |
| | | |
| | | } |
| | | break; |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | break; |
| | | case FunctionType.FloorHeating: |
| | | { |
| | | |
| | | foreach (var dic in dicList) |
| | | { |
| | | string value = dic["value"]; |
| | | switch (dic["key"]) |
| | | { |
| | | case "on_off": |
| | | { |
| | | switch (value) |
| | | { |
| | | case "on": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.onLogic); |
| | | } |
| | | break; |
| | | case "off": |
| | | { |
| | | button1.Text = Language.StringByID(StringId.offLogic); |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | break; |
| | | case "set_temp": |
| | | { |
| | | button2.Text = value + "℃"; |
| | | } |
| | | break; |
| | | case "mode": |
| | | { |
| | | switch (value) |
| | | { |
| | | case "day": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.dayMode); |
| | | } |
| | | break; |
| | | case "night": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.nightMode); |
| | | } |
| | | break; |
| | | |
| | | case "away": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.leaveMode); |
| | | } |
| | | break; |
| | | case "normal": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.ordinaryMode); |
| | | } |
| | | break; |
| | | case "timer": |
| | | { |
| | | button3.Text = Language.StringByID(StringId.timeMode); |
| | | } |
| | | break; |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | break; |
| | | |
| | | } |
| | | |
| | | } |
| | | |
| | | } |
| | | break; |
| | | } |
| | | InpOrOutLogicMethod.EditState(device, dicList, button1, button2, button3, button4); |
| | | } |
| | | /// <summary> |
| | | /// 添加处理选中数据 |
| | |
| | | } |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 移除控件 |
| | | /// </summary> |
| | | /// <param name="frame"></param> |
| | | private void RemView(FrameLayout frame) |
| | | { |
| | | frame.RemoveFromParent(); |
| | | } |
| | | |
| | | |
| | | } |