From 0f2e0147e8990e913d16d99bc1b94fb6bc53abd7 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期四, 03 十二月 2020 15:35:42 +0800 Subject: [PATCH] 2020-12-03-1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs | 726 +++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 571 insertions(+), 155 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs index 4559743..8640e96 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs @@ -14,20 +14,41 @@ public void Show() { + this.BackgroundColor = CSS.CSS_Color.viewMiddle; LogicView.TopView topView = new LogicView.TopView(); + topView.setBtn.Visible = true; this.AddChidren(topView.FLayoutView()); topView.clickBackBtn.MouseUpEventHandler += (e, sen) => { RemoveFromParent(); }; - topView.topNameBtn.TextID = StringId.newAutomation; + if (string.IsNullOrEmpty(Logic.currlogic.sid)) + { + topView.topNameBtn.TextID = StringId.newAutomation; + topView.setBtn.Visible = false; + topView.clickSetBtn.Visible = false; + } + else + { + topView.topNameBtn.TextID = StringId.editAutomation; + topView.setBtn.Visible = true; + topView.clickSetBtn.Visible = true; + } + topView.clickSetBtn.MouseUpEventHandler += (sender, e) => + { + Set set = new Set(); + MainPage.BasePageView.AddChidren(set); + set.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; VerticalScrolViewLayout viewLayout = new VerticalScrolViewLayout { Y = Application.GetRealHeight(64), Width = Application.GetRealWidth(LogicView.TextSize.view375), - Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64-76), + Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64 - 76), BackgroundColor = CSS.CSS_Color.viewMiddle, }; this.AddChidren(viewLayout); @@ -38,150 +59,25 @@ viewLayout.AddChidren(addInputTextView.FLayoutView(46, 12)); ///婊¤冻浠ヤ笅鏉′欢鐨刅iew LogicView.LogicTypeTitleView titleCondition = new LogicView.LogicTypeTitleView(); - titleCondition.frameLayout.SetCornerWithSameRadius(12,HDLUtils.RectCornerTopLeft| HDLUtils.RectCornerTopRight); - titleCondition.btnText.TextID = StringId.whenTheFollowingConditionsAreMet; + titleCondition.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + titleCondition.btnText.TextID = StringId.andCondition; viewLayout.AddChidren(titleCondition.FLayoutView()); - - for (int i = 0; i < Logic.currlogic.input.Count; i++) + titleCondition.btnClick.MouseUpEventHandler += (sender, e) => { - Input inputCondition = Logic.currlogic.input[i]; - ///杈撳叆鍚勭鏉′欢鐨刅iew - LogicView.AddOutputInputView inputView = new LogicView.AddOutputInputView(); - viewLayout.AddChidren(inputView.FLayoutView()); - ///璁板綍鏉′欢绫诲瀷 - inputView.btnClick.Name = inputCondition.condition_type; - ///璁板綍閫変腑鏉′欢 - inputView.btnClick.Tag = i; - ///杈撳叆鏉′欢鐘舵�佹暟缁� - List<Dictionary<string, string>> dicList = inputCondition.condition as List<Dictionary<string, string>>; - //鏄剧ず鏉′欢鍚勭鐘舵�� - switch (inputCondition.condition_type) + FrameLayout fLayout = new FrameLayout { - case "1": - { - inputView.btnIcon.UnSelectedImagePath = "LogicIcon/timecondition.png"; - foreach (var dic in dicList) - { - string value = dic["value"]; - inputView.btnText.Text = Language.StringByID(StringId.hour) + ": " + value; - inputView.btnClick.AddTag("timepoint", value); - } - - } - break; - case "2": - { - inputView.btnIcon.UnSelectedImagePath = "LogicIcon/timecondition.png"; - foreach (var dic in dicList) - { - string value = dic["value"]; - inputView.btnText.Text = Language.StringByID(StringId.timeHorizon) + ": " + value; - inputView.btnClick.AddTag("timeHorizon", value); - } - - } - break; - - } - //鍐嶆缂栬緫鏉′欢鐘舵�佺偣鍑讳簨浠� - inputView.btnClick.MouseUpEventHandler += (sen, e) => - { - Button button = (Button)sen; - switch (button.Name) - { - case "1": - { //涓荤晫闈㈡帶浠� - FrameLayout fLayout = new FrameLayout - { - BackgroundColor = CSS.CSS_Color.viewTrans60lucence, - }; - //娣诲姞涓荤晫闈� - this.AddChidren(fLayout); - LogicView.TimeView timePointView = new LogicView.TimeView(); - timePointView.FLayoutView(fLayout); - EventHandler<MouseEventArgs> RemovefLayout = (sender, e1) => - { - //绉婚櫎fLayout鐣岄潰 - fLayout.RemoveFromParent(); - }; - //鐣岄潰鐐瑰嚮浜嬩欢 - fLayout.MouseUpEventHandler += RemovefLayout; - //鍙栨秷鐐瑰嚮浜嬩欢 - timePointView.btnCancel.MouseUpEventHandler += RemovefLayout; - //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩) - timePointView.mUIPickerView.setNPicker(timePointView.GethStringList(), timePointView.GetmStringList(), null); - string startingVulae = button.GetTagByKey("timepoint").ToString(); - //榛樿鍒濆閫変腑鐘舵�� - timePointView.mUIPickerView.setCurrentItems(1, 30, 0); - //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿 - string timepoint = "01:05"; - if (!string.IsNullOrEmpty(startingVulae)) - { - int hIndex = timePointView.GetValueIndex(startingVulae, 0, 1, timePointView.GethIntList()); - int mIndex = timePointView.GetValueIndex(startingVulae, 1, 0, timePointView.GetmIntList()); - //鏇存柊鍒濆鐘舵�� - timePointView.mUIPickerView.setCurrentItems(hIndex - 1, mIndex, 0); - timepoint = startingVulae; - } - - //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆� - timePointView.mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) => - { - string hour = timePointView.GethStringList()[index1].Split(' ')[0]; - string minuet = timePointView.GetmStringList()[index2].Split(' ')[0]; - timepoint = hour + ":" + minuet; - }; - //纭畾鐐瑰嚮浜嬩欢 - timePointView.btnConfirm.MouseUpEventHandler += (sender, e3) => - { - if (startingVulae == timepoint) - { - ///缂栬緫鏂版椂闂村拰涔嬪墠鏃堕棿涓�鏍�,鐩存帴鍏抽棴鐣岄潰杩斿洖; - fLayout.RemoveFromParent(); - return; - } - Input inputTime = new Input(); - inputTime.sid = LogicMethod.NewSid(); - inputTime.condition_type = "1"; - Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", "timepoint"); - LogicMethod.dictionary(dic, "comparator", "="); - LogicMethod.dictionary(dic, "data_type", "string"); - LogicMethod.dictionary(dic, "value", timepoint); - inputTime.condition.Add(dic); - //鏃ф暟鎹储寮� - int indexValue = int.Parse(inputView.btnClick.Tag.ToString()); - //绉婚櫎鏃ф暟鎹� - Logic.currlogic.input.RemoveAt(indexValue); - //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�; - Logic.currlogic.input.Insert(indexValue, inputTime); - //娣诲姞涓�涓柊鐨勬椂闂寸偣鏉′欢 - RemoveViewByTag("Logic"); - AddLogic addLogic = new AddLogic(); - MainPage.BasePageView.AddChidren(addLogic); - addLogic.Show(); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; - - }; - } - break; - case "2": - { - FrameLayout fLayout = new FrameLayout - { - BackgroundColor = CSS.CSS_Color.viewTrans60lucence, - }; - this.AddChidren(fLayout); - TimeTpye timeTpye = new TimeTpye(); - timeTpye.TimeHorizon(fLayout,true,int.Parse(inputView.btnClick.Tag.ToString())); - } - break; - } + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; - } + this.AddChidren(fLayout); + AndOrMethod(fLayout, titleCondition.btnText); + }; + + + // 鏉′欢澶勭悊鏂规硶 + InpOrOutLogicMethod.InputCondition(this, viewLayout); ///娣诲姞鍥炬爣鐨刅iew LogicView.LogicAddView addInputIcon = new LogicView.LogicAddView(); - addInputIcon.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + addInputIcon.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); viewLayout.AddChidren(addInputIcon.FLayoutView()); addInputIcon.btnClick.MouseUpEventHandler += (sen, e) => @@ -200,16 +96,23 @@ viewLayout.AddChidren(addOutpuTextView.FLayoutView(54, 20)); ///浠ヤ笅鍔ㄤ綔View LogicView.LogicTypeTitleView titleOutpu = new LogicView.LogicTypeTitleView(); - titleOutpu.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + titleOutpu.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); titleOutpu.btnText.TextID = StringId.theFollowingActions; + titleOutpu.btnNextIcon.Visible = false; viewLayout.AddChidren(titleOutpu.FLayoutView()); - ///杈撳嚭鍚勭鍔ㄤ綔鐨刅iew - LogicView.AddOutputInputView outputView = new LogicView.AddOutputInputView(); - viewLayout.AddChidren(outputView.FLayoutView()); + //鐩爣澶勭悊鏂规硶 + InpOrOutLogicMethod.OutputTarget(this, viewLayout); ///娣诲姞鍥炬爣鐨刅iew LogicView.LogicAddView addOutputIcon = new LogicView.LogicAddView(); - addOutputIcon.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + addOutputIcon.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); viewLayout.AddChidren(addOutputIcon.FLayoutView()); + addOutputIcon.btnClick.MouseUpEventHandler += (sen, e) => + { + var addTarget = new AddTarget(); + MainPage.BasePageView.AddChidren(addTarget); + addTarget.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; #endregion #region 寰幆鏂瑰紡 @@ -218,42 +121,555 @@ cyclicTextView.btnIf.TextID = StringId.cyclic; viewLayout.AddChidren(cyclicTextView.FLayoutView(54, 20)); ///閫夋嫨鍛ㄦ湡绫诲瀷View - LogicView.LogicTypeTitleView cyclicTitle= new LogicView.LogicTypeTitleView(); - cyclicTextView.frameLayout.Height = Application.GetRealHeight(50); - cyclicTitle.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight|HDLUtils.RectCornerBottomLeft|HDLUtils.RectCornerBottomRight); - //cyclicTitle.frameLayout.Radius = (uint)Application.GetRealHeight(12); + LogicView.LogicTypeTitleView cyclicTitle = new LogicView.LogicTypeTitleView(); + cyclicTitle.frameLayout.Height = Application.GetRealHeight(50); + cyclicTitle.frameLayout.Radius = (uint)Application.GetRealHeight(12); cyclicTitle.btnText.TextID = StringId.days; viewLayout.AddChidren(cyclicTitle.FLayoutView()); + cyclicTitle.btnClick.MouseUpEventHandler += (sender, e) => + { + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + DateMethod(fLayout, cyclicTitle.btnText); + + + }; #endregion #region 鎵ц鎺ㄩ�� 鍙戦�侀�氱煡 ///涓婁笅闂撮殧12鍍忕礌 - viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(12)}); + viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(12) }); ///鎵ц鎺ㄩ�乮ew LogicView.LogicTypeTitleView push = new LogicView.LogicTypeTitleView(); push.frameLayout.Height = Application.GetRealHeight(50); - push.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + push.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); push.btnText.TextID = StringId.push; + push.btnNextIcon.Width = Application.GetMinRealAverage(36); + push.btnNextIcon.Height = Application.GetMinRealAverage(36); + push.btnNextIcon.X = Application.GetRealWidth(305); + push.btnNextIcon.UnSelectedImagePath = "LogicIcon/off.png"; + push.btnNextIcon.SelectedImagePath = "LogicIcon/on.png"; viewLayout.AddChidren(push.FLayoutView()); ///鍙戦�侀�氱煡View LogicView.LogicTypeTitleView notification = new LogicView.LogicTypeTitleView(); - notification.frameLayout.SetCornerWithSameRadius(12, HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + notification.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); notification.btnText.TextID = StringId.notification; viewLayout.AddChidren(notification.FLayoutView()); ///涓婁笅闂撮殧62鍍忕礌 - viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(62)}); + viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(62) }); #endregion #region 淇濆瓨 ///淇濆瓨View LogicView.SaveView saveView = new LogicView.SaveView(); - saveView.frameLayout.SetCornerWithSameRadius(24,HDLUtils.RectCornerTopLeft|HDLUtils.RectCornerTopRight); + saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); this.AddChidren(saveView.FLayoutView()); - //saveView.frameLayout.Y = this.Height - saveView.frameLayout.Height; + saveView.btnClick.MouseUpEventHandler += (sender, e) => + { + if (string.IsNullOrEmpty(Logic.currlogic.sid)) + { + List<string> list = new List<string>(); + foreach (var logic in Logic.LogicList) + { + list.Add(logic.name); + } + new LogicView.TipPopView().InputBox(StringId.editName, Logic.currlogic.name, StringId.nameNull, StringId.NameAlreadyExists, list, (logicName) => + { + Logic.currlogic.name = logicName; + Logic.currlogic.sid = LogicMethod.NewSid(); + //鍙戦�佹柊鍔犱慨鏀归�昏緫鍛戒护锛� + var responsePackNew = Send.AddLogic(Logic.currlogic); + if (responsePackNew.Code == "0") + { + Logic.LogicList.Add(Logic.currlogic); + LogicMethod.RemoveAllView(); + MainView.MainShow(); + } + else { + new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail)); + } + + }); + + } + else + { + //鍙戦�佹柊鍔犱慨鏀归�昏緫鍛戒护锛� + var responsePackNew = Send.updateLogic(Logic.currlogic); + if (responsePackNew.Code == "0") + { + LogicMethod.RemoveAllView(); + MainView.MainShow(); + } + else { + new LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.saveFail)); + } + } + + }; #endregion + } + /// <summary> + /// 寰幆鏂瑰紡(姣忓ぉ锛屾瘡鏈堛�傘��) + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void DateMethod(FrameLayout fLayout, Button button) + { + LogicView.DateView dateView = new LogicView.DateView(); + dateView.btnTitle.TextID = StringId.cyclic; + dateView.FLayoutView(fLayout, 4); + dateView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string weekName = ""; + //瀹氫箟涓�涓眬閮˙tn鐢ㄦ潵璁板綍閫変腑Btn; + var selecetdBtn = new Button(); + for (int i = 0; i < 4; i++) + { + LogicView.SelectTypeView dateTypeView = new LogicView.SelectTypeView(); + dateTypeView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + dateTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); + dateTypeView.btnIcon.Visible = false; + dateTypeView.btnText.X = Application.GetRealWidth(20); + dateTypeView.btnNextIcon.X = Application.GetRealWidth(307); + dateTypeView.btnLine.X = Application.GetRealWidth(20); + dateTypeView.btnLine.Width = Application.GetRealWidth(303); + dateView.frameLayout.AddChidren(dateTypeView.FLayoutView()); + dateTypeView.btnClick.Tag = i;//鏍囪绫诲瀷 + switch (i) + { + case 0: + { + weekName = Language.StringByID(StringId.performA); + dateTypeView.btnNextIcon.Visible = false; + } + break; + case 1: + { + weekName = Language.StringByID(StringId.days); + dateTypeView.btnNextIcon.Visible = false; + } + break; + case 2: + { + weekName = Language.StringByID(StringId.weekly); + } + break; + case 3: + { + weekName = Language.StringByID(StringId.monthly); + } + break; + + + } + dateTypeView.btnText.Text = weekName; + //寰幆绫诲瀷(渚嬪锛氭瘡鏈堬紝姣忓ぉ)鐐瑰嚮浜嬩欢 + dateTypeView.btnClick.MouseUpEventHandler += (sender, e) => + { + int clickIndex = int.Parse(dateTypeView.btnClick.Tag.ToString()); + switch (clickIndex) + { + case 0: + { + weekName = Language.StringByID(StringId.performA); + selecetdBtn.TextColor = CSS.CSS_Color.textColor; + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + break; + case 1: + { + weekName = Language.StringByID(StringId.days); + selecetdBtn.TextColor = CSS.CSS_Color.textColor; + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + + } + break; + case 2: + { + // weekName = Language.StringByID(StringId.weekly); + WeekMethod(fLayout, button); + } + break; + case 3: + { + //weekName = Language.StringByID(StringId.monthly); + MonMethod(fLayout, button); + } + break; + + + } + }; + + + //鏄剧ず涔嬪墠鐨勭姸鎬� + if (button.Text == weekName) + { + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + else if (button.Text == weekName) + { + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + } + //纭畾淇濆瓨 + dateView.btnConfirm.MouseUpEventHandler += (sender3, e3) => + { + if (weekName == Language.StringByID(StringId.monthly)|| weekName== Language.StringByID(StringId.weekly)) { + //鎻愮ず锛氳繕鏈�� + return; + + } + + if (weekName == Language.StringByID(StringId.performA)) + { + //鎵ц涓�娆� + Logic.currlogic.cycle.type = "once"; + } + else if (weekName == Language.StringByID(StringId.days)) + { + //姣忓ぉ + Logic.currlogic.cycle.type = "day"; + + } + //閫変腑淇濆瓨涔嬪悗鏄剧ず鏂囨湰 + button.Text = weekName; + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + } + /// <summary> + /// 閫変腑鏄熸湡鍑�(鍛ㄤ竴锛屽懆浜� 銆傘�傘��) + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void WeekMethod(FrameLayout fLayout, Button button) + { + + LogicView.DateView weekView = new LogicView.DateView(); + weekView.btnTitle.TextID = StringId.cyclic; + weekView.FLayoutView(fLayout, 7); + weekView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + weekView.frameLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮╳eekList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁; + List<string> weekList = new List<string>(); + if (Logic.currlogic.cycle.type == "week") + { + //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹� + weekList.AddRange(Logic.currlogic.cycle.value); + } + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string weekName = ""; + for (int i = 0; i < 7; i++) + { + LogicView.SelectTypeView weekTypeView = new LogicView.SelectTypeView(); + weekTypeView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + weekTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); + weekTypeView.btnIcon.Visible = false; + weekTypeView.btnText.X = Application.GetRealWidth(20); + weekTypeView.btnLine.X = Application.GetRealWidth(20); + weekTypeView.btnLine.Width = Application.GetRealWidth(303); + weekTypeView.btnNextIcon.X = Application.GetRealWidth(303); + weekTypeView.btnNextIcon.Width = Application.GetMinRealAverage(28); + weekTypeView.btnNextIcon.Height = Application.GetMinRealAverage(28); + weekTypeView.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + weekTypeView.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + weekView.frameLayout.AddChidren(weekTypeView.FLayoutView()); + weekTypeView.btnClick.Tag = i;//鏍囪绱㈠紩 + switch (i) + { + case 0: + { + weekName = Language.StringByID(StringId.monday); + } + break; + case 1: + { + weekName = Language.StringByID(StringId.tuesday); + } + break; + case 2: + { + weekName = Language.StringByID(StringId.wednesday); + } + break; + case 3: + { + weekName = Language.StringByID(StringId.thursday); + } + break; + case 4: + { + weekName = Language.StringByID(StringId.friday); + } + break; + case 5: + { + weekName = Language.StringByID(StringId.saturday); + } + break; + case 6: + { + weekName = Language.StringByID(StringId.sunday); + } + break; + + } + weekTypeView.btnText.Text = weekName; + if (weekList.Contains(i.ToString())) + { + //鏄剧ず涔嬪墠鐨勯�変腑鐘舵�� + weekTypeView.btnNextIcon.IsSelected = true; + } + //鏄熸湡鐨勭偣鍑讳簨浠� + weekTypeView.btnClick.MouseUpEventHandler += (sender, e) => + { + string clickIndex = weekTypeView.btnClick.Tag.ToString(); + weekTypeView.btnClick.IsSelected = !weekTypeView.btnClick.IsSelected; + if (weekTypeView.btnClick.IsSelected) + { + weekTypeView.btnNextIcon.IsSelected = true; + if (!weekList.Contains(clickIndex)) + { + //娣诲姞閫変腑鏁版嵁 + weekList.Add(clickIndex); + } + } + else + { + weekTypeView.btnNextIcon.IsSelected = false; + if (weekList.Contains(clickIndex)) + { + //绉婚櫎閫変腑鏁版嵁 + weekList.Remove(clickIndex); + } + } + + }; + + } + //纭畾鐐瑰嚮浜嬩欢 + weekView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (weekList.Count == 0) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.cycle.type = "week"; + Logic.currlogic.cycle.value = weekList; + button.Text = MainView.GetWeekString(weekList); + fLayout.RemoveFromParent(); + }; } + /// <summary> + /// 姣忔湀 + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void MonMethod(FrameLayout fLayout, Button button) + { + LogicView.MonView monView = new LogicView.MonView(); + monView.btnTitle.TextID = StringId.monthly; + monView.FLayoutView(fLayout); + monView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + monView.frameLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮╩onList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁; + List<string> monList = new List<string>(); + if (Logic.currlogic.cycle.type == "mon") + { + //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹� + monList.AddRange(Logic.currlogic.cycle.value); + } + //瀹氫箟涓�涓彉閲忚褰曡鏁� + int lineSun = 0; + for (int i = 1; i < 32; i++) + { + Button monTextBtn = new Button + { + Width = Application.GetMinRealAverage(30), + Height = Application.GetMinRealAverage(30), + Radius = (uint)Application.GetRealHeight(15), + Text = i.ToString(), + TextSize = LogicView.TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + SelectedTextColor = CSS.CSS_Color.view, + SelectedBackgroundColor = CSS.CSS_Color.textConfirmColor, + BackgroundColor = CSS.CSS_Color.viewTranslucence, + Tag = i, + }; + monView.frameLayout.AddChidren(monTextBtn); + if (lineSun > 0) + { + monTextBtn.X = Application.GetRealWidth(16 + ((i - 1) - lineSun * 7) * 46); + } + else + { + + monTextBtn.X = Application.GetRealWidth(16 + (i - 1) * 46); + } + monTextBtn.Y = Application.GetRealWidth(58 + 10 + lineSun * (30 + 10)); + + if (i % 7 == 0) + { + //涓�瀹氭墽琛屽畬鍐嶅垽鏂槸鍚﹁鎹㈣. + lineSun = lineSun + 1; + + } + monTextBtn.MouseUpEventHandler += (sender, e) => + { + string clickIndex = monTextBtn.Tag.ToString(); + monTextBtn.IsSelected = !monTextBtn.IsSelected; + if (monTextBtn.IsSelected) + { + monTextBtn.IsSelected = true; + if (!monList.Contains(clickIndex)) + { + //娣诲姞閫変腑鏁版嵁 + monList.Add(clickIndex); + } + } + else + { + monTextBtn.IsSelected = false; + if (monList.Contains(clickIndex)) + { + //绉婚櫎閫変腑鏁版嵁 + monList.Remove(clickIndex); + } + } + }; + + if (monList.Contains(i.ToString())) { + monTextBtn.IsSelected = true; + } + } + //纭畾鐐瑰嚮浜嬩欢 + monView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (monList.Count == 0) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.cycle.type = "mon"; + Logic.currlogic.cycle.value = monList; + button.Text = MainView.GetMonString(monList); + fLayout.RemoveFromParent(); + }; + } + /// <summary> + /// 婊¤冻鏉′欢 + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void AndOrMethod(FrameLayout fLayout, Button button) + { + LogicView.DateView meetTheConditionView = new LogicView.DateView(); + meetTheConditionView.btnTitle.TextID = StringId.meetTheCondition; + meetTheConditionView.FLayoutView(fLayout, 2); + meetTheConditionView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + fLayout.RemoveFromParent(); + }; + + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string condition = ""; + LogicView.SelectTypeView andConditionViews = new LogicView.SelectTypeView(); + andConditionViews.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + andConditionViews.frameLayout.Y = Application.GetRealHeight(56); + andConditionViews.btnIcon.Visible = false; + andConditionViews.btnText.X = Application.GetRealWidth(20); + andConditionViews.btnText.TextID = StringId.andCondition; + andConditionViews.btnLine.X = Application.GetRealWidth(20); + andConditionViews.btnLine.Width = Application.GetRealWidth(303); + andConditionViews.btnNextIcon.X = Application.GetRealWidth(303); + andConditionViews.btnNextIcon.Width = Application.GetMinRealAverage(28); + andConditionViews.btnNextIcon.Height = Application.GetMinRealAverage(28); + andConditionViews.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + andConditionViews.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + meetTheConditionView.frameLayout.AddChidren(andConditionViews.FLayoutView()); + + + LogicView.SelectTypeView orConditionView = new LogicView.SelectTypeView(); + orConditionView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + orConditionView.frameLayout.Y = Application.GetRealHeight(56 + 50); + orConditionView.btnIcon.Visible = false; + orConditionView.btnText.X = Application.GetRealWidth(20); + orConditionView.btnText.TextID = StringId.orCondition; + orConditionView.btnLine.X = Application.GetRealWidth(20); + orConditionView.btnLine.Width = Application.GetRealWidth(303); + orConditionView.btnNextIcon.X = Application.GetRealWidth(303); + orConditionView.btnNextIcon.Width = Application.GetMinRealAverage(28); + orConditionView.btnNextIcon.Height = Application.GetMinRealAverage(28); + orConditionView.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + orConditionView.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + meetTheConditionView.frameLayout.AddChidren(orConditionView.FLayoutView()); + + + if (Logic.currlogic.relation == "and") + { + andConditionViews.btnNextIcon.IsSelected = true; + condition = "and"; + } + else + { + orConditionView.btnNextIcon.IsSelected = true; + condition = "or"; + } + andConditionViews.btnClick.MouseUpEventHandler += (sen1, e) => + { + condition = "and"; + andConditionViews.btnNextIcon.IsSelected = true; + orConditionView.btnNextIcon.IsSelected = false; + }; + orConditionView.btnClick.MouseUpEventHandler += (sen1, e) => + { + condition = "or"; + andConditionViews.btnNextIcon.IsSelected = false; + orConditionView.btnNextIcon.IsSelected = true; + }; + //纭畾鐐瑰嚮浜嬩欢 + meetTheConditionView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (string.IsNullOrEmpty(condition)) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.relation = condition; + if (condition == "or") + { + button.Text = Language.StringByID(StringId.orCondition); + } + else + { + button.Text = Language.StringByID(StringId.andCondition); + } + fLayout.RemoveFromParent(); + }; + + } + + } } -- Gitblit v1.8.0