| | |
| | | using System; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using HDL_ON.UI.Music; |
| | | using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; |
| | | using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; |
| | | using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; |
| | | using Shared; |
| | | using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage; |
| | | namespace HDL_ON.UI.UI2.FuntionControlView.Aks |
| | |
| | | /// </summary> |
| | | public class GfPage : BaseFramLayout |
| | | { |
| | | public GfPage() |
| | | /// <summary> |
| | | /// |
| | | /// </summary> |
| | | /// <param name="remoteControlEntity">遥控器对象</param> |
| | | /// <param name="sequencerList">时序器列表</param> |
| | | public GfPage(RemoteControlEntity remoteControlEntity, List<SequencerEntity> sequencerList) |
| | | { |
| | | this.remoteControl = remoteControlEntity; |
| | | this.sequencerList = sequencerList; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 时序器列表 |
| | | /// </summary> |
| | | private List<SequencerEntity> sequencerList; |
| | | /// <summary> |
| | | /// 当前的遥控器对象 |
| | | /// </summary> |
| | | private RemoteControlEntity remoteControl; |
| | | public Action<IntType> action; |
| | | CornerFramLayout cornerFram; |
| | | TypeMultiFramLayout typeMultiFramLayout; |
| | | TypeSingleFramLayout gfSingleFramLayout; |
| | | |
| | | public void Show() |
| | | { |
| | |
| | | |
| | | private void EventListener() |
| | | { |
| | | cornerFram.selectAction += (value) => |
| | | cornerFram.selectKeyAction += (keypadEntity) => |
| | | { |
| | | Console.WriteLine("1"); |
| | | this.KeyControl(keypadEntity.keypad, keypadEntity.name, keypadEntity.isClicked); |
| | | }; |
| | | //时序器 |
| | | typeMultiFramLayout.SetLeftFlClickListener((f) => |
| | | { |
| | | SxqPage sxqPage = new SxqPage(); |
| | | MainPage.BasePageView.AddChidren(sxqPage); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | sxqPage.Show(); |
| | | |
| | | }); |
| | | //设备切换 |
| | | typeMultiFramLayout.SetRightFlClickListener((f) => |
| | | if (gfSingleFramLayout != null) |
| | | { |
| | | Console.WriteLine("4"); |
| | | action?.Invoke(IntType.HiFi); |
| | | }); |
| | | //设备切换 |
| | | gfSingleFramLayout.SetClickListener((f) => |
| | | { |
| | | action?.Invoke(IntType.HiFi); |
| | | }); |
| | | } |
| | | |
| | | if (typeMultiFramLayout != null) |
| | | { |
| | | //时序器 |
| | | typeMultiFramLayout.SetLeftFlClickListener((f) => |
| | | { |
| | | SxqPage sxqPage = new SxqPage(this.sequencerList, this.remoteControl.deviceId); |
| | | MainPage.BasePageView.AddChidren(sxqPage); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | sxqPage.Show(); |
| | | |
| | | }); |
| | | //设备切换 |
| | | typeMultiFramLayout.SetRightFlClickListener((f) => |
| | | { |
| | | action?.Invoke(IntType.HiFi); |
| | | }); |
| | | } |
| | | |
| | | } |
| | | |
| | |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = MusicColor.TextColor, |
| | | TextSize = TextSize.Text16, |
| | | TextID = StringId.gongfan, |
| | | Text = this.remoteControl.name, |
| | | IsBold = true, |
| | | }; |
| | | this.AddChidren(btnTitle); |
| | | |
| | | cornerFram = new CornerFramLayout(343, 452, 17); |
| | | |
| | | |
| | | cornerFram = new CornerFramLayout(343, 284 - 18, 17); |
| | | cornerFram.X = Application.GetRealWidth(16); |
| | | cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16); |
| | | this.AddChidren(cornerFram); |
| | | cornerFram.SetList(cornerFram.GetTestList(17)); |
| | | cornerFram.SetMargin(16, 0, 16, 0); |
| | | cornerFram.LoadButtonPage(4); |
| | | cornerFram.LoadButtonPage(AksCommonMethod.Current.GetGFKeypadList(this.remoteControl), 4); |
| | | |
| | | |
| | | CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 72, 17); |
| | |
| | | cornerBottomFram.Radius = (uint)Application.GetRealHeight(17); |
| | | this.AddChidren(cornerBottomFram); |
| | | |
| | | typeMultiFramLayout = new TypeMultiFramLayout(); |
| | | typeMultiFramLayout.multiFramLayout.Gravity = Gravity.Center; |
| | | typeMultiFramLayout.AddView(cornerBottomFram); |
| | | typeMultiFramLayout.btnBottonRightName.TextID = StringId.gongfan; |
| | | |
| | | if (sequencerList.Count == 0) |
| | | { |
| | | //没有时序器 |
| | | gfSingleFramLayout = new TypeSingleFramLayout(); |
| | | gfSingleFramLayout.AddView(cornerBottomFram); |
| | | gfSingleFramLayout.singleFramLayout.X = Application.GetRealWidth(226); |
| | | gfSingleFramLayout.singleFramLayout.Width = Application.GetRealWidth(101); |
| | | gfSingleFramLayout.singleFramLayout.Gravity = Gravity.CenterVertical; |
| | | gfSingleFramLayout.btnName.Text = this.remoteControl.name; |
| | | gfSingleFramLayout.btnName.X = Application.GetRealWidth(16); |
| | | gfSingleFramLayout.btnName.Width = Application.GetRealWidth(48); |
| | | gfSingleFramLayout.btnRightImage.X = gfSingleFramLayout.btnName.Right + Application.GetRealWidth(8); |
| | | gfSingleFramLayout.btnRightImage.Width = Application.GetRealWidth(16); |
| | | gfSingleFramLayout.btnRightImage.Height = Application.GetRealWidth(16); |
| | | gfSingleFramLayout.btnRightImage.UnSelectedImagePath = "AksIcon/xuanze.png"; |
| | | gfSingleFramLayout.btnRightImage.Gravity = Gravity.CenterVertical; |
| | | gfSingleFramLayout.btnLeftImage.Visible = false; |
| | | gfSingleFramLayout.CustomCalculationWidth(TypeSingleFramLayout.Orientation.right, |
| | | gfSingleFramLayout.singleFramLayout, |
| | | gfSingleFramLayout.btnName, |
| | | gfSingleFramLayout.btnRightImage, |
| | | 48, 200); |
| | | } |
| | | else |
| | | { |
| | | //有时序器 |
| | | typeMultiFramLayout = new TypeMultiFramLayout(); |
| | | typeMultiFramLayout.multiFramLayout.Gravity = Gravity.Center; |
| | | typeMultiFramLayout.AddView(cornerBottomFram); |
| | | typeMultiFramLayout.btnRightName.Text = this.remoteControl.name; |
| | | |
| | | } |
| | | this.AdjustRealHeight(16); |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 按键控制 |
| | | /// </summary> |
| | | /// <param name="keypad"><按键标识/param> |
| | | /// <param name="keyName"><按键名称(打印用的)/param> |
| | | /// <param name="isSupport"><是否支持控制/param> |
| | | private void KeyControl(string keypad, string keyName, bool isSupport) |
| | | { |
| | | //CommonMethod.Current.Loading.Start(); |
| | | CommonMethod.Current.SunThread(() => |
| | | { |
| | | try |
| | | { |
| | | SendMethod.Current.KeypadExecute(remoteControl.deviceId, remoteControl.rcId, keypad, keyName, isSupport); |
| | | } |
| | | catch { } |
| | | finally |
| | | { |
| | | CommonMethod.Current.MainThread(() => |
| | | { |
| | | //CommonMethod.Current.Loading.Hide(); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | } |
| | | } |
| | | } |