From 2bf5ec775cb57d8015bee58c745a1e48081ff1b1 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期二, 15 十月 2019 11:06:05 +0800
Subject: [PATCH] 首次合并了全部的代码

---
 ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs |  556 +++++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 392 insertions(+), 164 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs b/ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs
index 159b1eb..f257172 100755
--- a/ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs
+++ b/ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs
@@ -9,213 +9,441 @@
 {
     public class Cycle : FrameLayout
     {
+       
         Action action;
         public Cycle(Action action)
         {
             this.action = action;
         }
-        public Cycle()
-        {
-            Tag = "Logic";
-        }
-        /// <summary>
-        /// 閫変腑
-        /// </summary>
-        Button beforeClickButton = new Button();
-       
+     
         public void Show()
         {
-
-            this.BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor;
-            var topFrameLayout = new FrameLayout
+            Tag = "Logic";
+            
+            #region  鏈�涓婇潰鐨勫竷灞�浠g爜
+            var topRowLayout = new RowLayout
             {
-                Height = Application.GetRealHeight(140),
-                Y = Application.GetRealHeight(80),
+                BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor,
+                Height = Application.GetRealHeight(184),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor,
             };
-            AddChidren(topFrameLayout);
+            this.AddChidren(topRowLayout);
 
             var titleName = new Button
             {
-                TextID = MyInternationalizationString.cycle,
-                TextSize = 17,
+                TextSize = 16,
                 TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                X = Application.GetRealWidth(176),
+                Width = Application.GetRealWidth(400),
+                Height = Application.GetRealHeight(69),
+                Y = Application.GetRealHeight(92),
+                TextID = MyInternationalizationString.cycle,
             };
-            topFrameLayout.AddChidren(titleName);
+            topRowLayout.AddChidren(titleName);
 
-            var hdl = new Button
+            var clickBtn = new Button
             {
-                Width = Application.GetRealWidth(154),
-                Height = Application.GetRealHeight(90),
-                X = Application.GetRealWidth(1080 - 170),
-                Gravity = Gravity.CenterVertical,
-                UnSelectedImagePath = "Logo/Logo.png",
+                Width = Application.GetRealWidth(81 + 51),
+                Height = Application.GetRealHeight(58 + 40),
+                Y = Application.GetRealHeight(98 - 40),
             };
-            //topFrameLayout.AddChidren(hdl);
+            topRowLayout.AddChidren(clickBtn);
+            clickBtn.MouseDownEventHandler += (sender, e) =>
+            {
+                RemoveFromParent();
+                //if (action != null)
+                //    action();
+            };
 
             var back = new Button
             {
-                Width = Application.GetRealWidth(110),
-                Height = Application.GetRealHeight(110),
-                X = Application.GetRealWidth(20),
-                Gravity = Gravity.CenterVertical,
-                UnSelectedImagePath = "ZigeeLogic/Back.png",
+                Width = Application.GetRealWidth(30),
+                Height = Application.GetRealHeight(51),
+                X = Application.GetRealWidth(81),
+                Y = Application.GetRealHeight(98),
+                //Gravity = Gravity.CenterVertical;
+                UnSelectedImagePath = "ZigeeLogic/back.png",
             };
-            topFrameLayout.AddChidren(back);
-            back.MouseDownEventHandler += (sender, e) =>
-            {
+            topRowLayout.AddChidren(back);
+            back.MouseDownEventHandler += (sender, e) => {
+                //if (action != null)
+                //    action();
                 RemoveFromParent();
-                if (action != null)
-                    action();
+
             };
-            var titlerl = new RowLayout
+            #endregion
+
+
+
+
+            var middle = new FrameLayout
             {
-                Height = Application.GetRealHeight(180),
-               // BackgroundColor = 0xff0f0f0f,
-                Y = Application.GetRealHeight(220),
+                Y = topRowLayout.Bottom,
+                Height = Application.GetRealHeight(1920 - 184),
+                BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
             };
-            AddChidren(titlerl);
-
-            titlerl.AddChidren(
-                new Button
-                {
-                    X = Application.GetRealWidth(40),
-                    //Text = "璇烽�夋嫨閲嶅鎵ц鍛ㄦ湡",
-                    TextID = MyInternationalizationString.repeat,
-                    TextSize = 17,
-                    TextAlignment = TextAlignment.CenterLeft,
-                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                }
-            );
-
-            var middle = new VerticalScrolViewLayout();
-            middle.Y = titlerl.Bottom;
-            middle.Height = Application.GetRealHeight(1920 - 220 - 180 - 174);
-            middle.BackgroundColor =ZigbeeColor.Current.LogicBackgroundColor;
             this.AddChidren(middle);
+            
 
-
-
-
-            var cyclelist = new List<string>();
-            cyclelist.AddRange(new string[] {
-                Language.StringByID(MyInternationalizationString.executeonce),
-                Language.StringByID(MyInternationalizationString.everyday),
-                //"浠婂勾",
-                //Language.StringByID(MyInternationalizationString.workingday),
-                //Language.StringByID(MyInternationalizationString.weekend),
-                Language.StringByID(MyInternationalizationString.monthly),
-                Language.StringByID(MyInternationalizationString.everyyear),
-                Language.StringByID(MyInternationalizationString.logicminute),
-            });
-
-            foreach (var name in cyclelist)
+            var btnsave = new Button
             {
-                var cyclerwLayout = new RowLayout
-                {
-                    Height = Application.GetRealHeight(180),
-                };
-                middle.AddChidren(cyclerwLayout);
+                Y= middle.Height-Application.GetRealHeight(260),
+                X = Application.GetRealWidth(85),
+                Height = Application.GetRealHeight(130),
+                Width = Application.GetRealWidth(910),
+                Radius = (uint)Application.GetRealHeight(60),
+                BackgroundColor = ZigbeeColor.Current.LogicBtnSaveBackgroundColor,
+                TextID = MyInternationalizationString.Save,
+                TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor,
+            };
+            middle.AddChidren(btnsave);
 
-                var btn = new Button
-                {
-                    Height = Application.GetRealHeight(180),
-                    Width = LayoutParams.MatchParent,
-                    SelectedBackgroundColor = 0xfffe5e00,
-                };
-                cyclerwLayout.AddChidren(btn);
 
-                var btnName = new Button
-                {
-                    Gravity = Gravity.CenterVertical,
-                    Text = name,
-                    Width = Application.GetRealWidth(400),
-                    Height = Application.GetRealHeight(100),
-                    X = Application.GetRealWidth(30),
-                    TextSize = 16,
-                    TextAlignment = TextAlignment.CenterLeft,
-                    TextColor = ZigbeeColor.Current.LogicTextBlackColor,
-                };
-                cyclerwLayout.AddChidren(btnName);
 
-                var btntimeback = new Button
-                {
-                    Width = Application.GetRealWidth(110),
-                    Height = Application.GetRealHeight(110),
-                    //UnSelectedImagePath = "MusicIcon/Next.png",
-                    SelectedImagePath = "ZigeeLogic/next.png",
-                    X = Application.GetRealWidth(1080 - 140),
-                };
-                if (name == Language.StringByID(MyInternationalizationString.monthly) || name == Language.StringByID(MyInternationalizationString.everyyear) || name == Language.StringByID(MyInternationalizationString.logiccustom))
-                {
-                    cyclerwLayout.AddChidren(btntimeback);
-                }
+            #region   ----鎵ц涓�娆�----
+            var onceFramelayout = new FrameLayout
+            {
+                Height = Application.GetRealHeight(160),
+                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+            };
+            middle.AddChidren(onceFramelayout);
 
-                //if (timename == name) {
-                //    beforeClickButton.IsSelected = false;
-                //    beforeClickButton = btn;
-                //    btn.IsSelected = true;
-                //}
 
-                EventHandler<MouseEventArgs> timeclick = (sender, e) =>
-                {
-                    if (btnName.Text == Language.StringByID(MyInternationalizationString.logiccustom))
-                    {
-                        var weekPage = new WeekPage();
-                        UserView.HomePage.Instance.AddChidren(weekPage);
-                        UserView.HomePage.Instance.PageIndex += 1;
-                        weekPage.Show();
-                    }
-                    else if (btnName.Text == Language.StringByID(MyInternationalizationString.monthly))
-                    {
-                        var everymonthPage = new EverymonthPage();
-                        UserView.HomePage.Instance.AddChidren(everymonthPage);
-                        UserView.HomePage.Instance.PageIndex += 1;
-                        everymonthPage.Show();
-                    }
-                    else if (btnName.Text == Language.StringByID(MyInternationalizationString.everyyear))
-                    {
-                        var everyyearPage = new EveryyearPage();
-                        UserView.HomePage.Instance.AddChidren(everyyearPage);
-                        UserView.HomePage.Instance.PageIndex += 1;
-                        everyyearPage.Show();
-                    }
-                    else
-                    {
-                        beforeClickButton.IsSelected = false;
-                        beforeClickButton = btn;
-                        btn.IsSelected = true;
-                        if (btnName.Text == Language.StringByID(MyInternationalizationString.everyday))
-                        {
-                            Common.Logic.CurrentLogic.TimeAttribute.Repeat = 2;
-                        }
-                        else if (btnName.Text == Language.StringByID(MyInternationalizationString.executeonce))
-                        {
-                            Common.Logic.CurrentLogic.TimeAttribute.Repeat = 0;
-                        }
-                    }
-                };
-                cyclerwLayout.MouseUpEventHandler += timeclick;
-                btn.MouseUpEventHandler += timeclick;
-                btnName.MouseUpEventHandler += timeclick;
-                btntimeback.MouseUpEventHandler += timeclick;
+            var onceIconBtn = new Button
+            {
+                Width = Application.GetRealWidth(81),
+                Height = Application.GetRealHeight(81),
+                X = Application.GetRealWidth(58),
+                Y = Application.GetRealHeight(55),
+                UnSelectedImagePath = "ZigeeLogic/point.png",
 
             };
+            onceFramelayout.AddChidren(onceIconBtn);
 
-            var btncomplete = new Button
+            var onceRow = new RowLayout
             {
-                Y = middle.Bottom,
-                Height = Application.GetRealHeight(174),
-                TextID = MyInternationalizationString.complete,
-                //BackgroundColor = 0xff1f1f1f,
-                TextSize = 16,
+                Y = Application.GetRealHeight(30),
+                Width = Application.GetRealWidth(850),
+                Height = Application.GetRealHeight(130),
+                X = Application.GetRealWidth(176),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+            };
+            onceFramelayout.AddChidren(onceRow);
+            var onceTextBtn = new Button
+            {
+                Text = Language.StringByID(MyInternationalizationString.executeonce),
+                TextAlignment = TextAlignment.CenterLeft,
                 TextColor = ZigbeeColor.Current.LogicTextBlackColor,
             };
-            AddChidren(btncomplete);
+            onceRow.AddChidren(onceTextBtn);
 
-            btncomplete.MouseUpEventHandler += (sedder, e) =>
+            var onceBackBtn = new SelectedButton(789);
+            onceRow.AddChidren(onceBackBtn);
+
+
+
+            #endregion
+
+            #region   ----姣忓ぉ----
+            var everydayFramelayout = new FrameLayout
             {
+                Height = Application.GetRealHeight(160),
+                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+                Y = onceFramelayout.Bottom,
+            };
+            middle.AddChidren(everydayFramelayout);
+
+            var everydayIconBtn = new Button
+            {
+                Width = Application.GetRealWidth(81),
+                Height = Application.GetRealHeight(81),
+                X = Application.GetRealWidth(58),
+                Y = Application.GetRealHeight(55),
+                UnSelectedImagePath = "ZigeeLogic/point.png",
+
+            };
+            everydayFramelayout.AddChidren(everydayIconBtn);
+
+            var everydayRow = new RowLayout
+            {
+                Y = Application.GetRealHeight(30),
+                Width = Application.GetRealWidth(850),
+                Height = Application.GetRealHeight(130),
+                X = Application.GetRealWidth(176),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+            };
+            everydayFramelayout.AddChidren(everydayRow);
+
+
+            var everydayTxetBtn = new Button
+            {
+                TextID = MyInternationalizationString.everyday,
+                TextAlignment = TextAlignment.CenterLeft,
+                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+            };
+            everydayRow.AddChidren(everydayTxetBtn);
+
+            var everydayBack = new SelectedButton(789);
+            everydayRow.AddChidren(everydayBack);
+
+           
+            #endregion
+
+            #region   ----姣忓懆----
+            var weekFramelayout = new FrameLayout
+            {
+                Height = Application.GetRealHeight(160),
+                Y = everydayFramelayout.Bottom,
+                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+            };
+            middle.AddChidren(weekFramelayout);
+
+            var weekIconBtn = new Button
+            {
+                Width = Application.GetRealWidth(81),
+                Height = Application.GetRealHeight(81),
+                UnSelectedImagePath = "ZigeeLogic/point.png",
+                X = Application.GetRealWidth(58),
+                Y = Application.GetRealHeight(55),
+            };
+            weekFramelayout.AddChidren(weekIconBtn);
+
+            var weekRow = new RowLayout
+            {
+                Y = Application.GetRealHeight(30),
+                Width = Application.GetRealWidth(850),
+                Height = Application.GetRealHeight(130),
+                X = Application.GetRealWidth(176),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+            };
+            weekFramelayout.AddChidren(weekRow);
+
+
+            var weekTextBtn = new Button
+            {
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = MyInternationalizationString.weekly,
+                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+            };
+            weekRow.AddChidren(weekTextBtn);
+
+            var weekBack = new Button
+            {
+                Width = Application.GetRealWidth(58),
+                Height = Application.GetRealHeight(58),
+                UnSelectedImagePath = "ZigeeLogic/next.png",
+                X = Application.GetRealWidth(789),
+                Gravity = Gravity.CenterVertical,
+            };
+            weekRow.AddChidren(weekBack);
+
+            #endregion
+
+            #region   ----姣忔湀----
+            var monthlyFramelayout = new FrameLayout
+            {
+                Height = Application.GetRealHeight(160),
+                Y = weekFramelayout.Bottom,
+                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+            };
+            middle.AddChidren(monthlyFramelayout);
+
+            var monthlyIconBtn = new Button
+            {
+                Width = Application.GetRealWidth(81),
+                Height = Application.GetRealHeight(81),
+                UnSelectedImagePath = "ZigeeLogic/point.png",
+                X = Application.GetRealWidth(58),
+                Y = Application.GetRealHeight(55),
+            };
+            monthlyFramelayout.AddChidren(monthlyIconBtn);
+
+            var monthlyRow = new RowLayout
+            {
+                Y = Application.GetRealHeight(30),
+                Width = Application.GetRealWidth(850),
+                Height = Application.GetRealHeight(130),
+                X = Application.GetRealWidth(176),
+                LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+            };
+            monthlyFramelayout.AddChidren(monthlyRow);
+
+            var monthlyTextBtn = new Button
+            {
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = MyInternationalizationString.monthly,
+                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+            };
+            monthlyRow.AddChidren(monthlyTextBtn);
+
+            var monthlyBack = new Button
+            {
+                Width = Application.GetRealWidth(58),
+                Height = Application.GetRealHeight(58),
+                UnSelectedImagePath = "ZigeeLogic/next.png",
+                X = Application.GetRealWidth(789),
+                Gravity = Gravity.CenterVertical,
+            };
+            monthlyRow.AddChidren(monthlyBack);
+            #endregion
+
+            #region   ----姣忓勾----
+            var yearFramelayout = new FrameLayout
+            {
+                Height = Application.GetRealHeight(160),
+                Y = monthlyFramelayout.Bottom,
+                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
+            };
+            //middle.AddChidren(yearFramelayout);
+
+            var yearIconBtn = new Button
+            {
+                Width = Application.GetRealWidth(81),
+                Height = Application.GetRealHeight(81),
+                UnSelectedImagePath = "ZigeeLogic/point.png",
+                X = Application.GetRealWidth(58),
+                Y = Application.GetRealHeight(55),
+            };
+            yearFramelayout.AddChidren(yearIconBtn);
+
+            var yearRow = new RowLayout
+            {
+                Y = Application.GetRealHeight(30),
+                Width = Application.GetRealWidth(850),
+                Height = Application.GetRealHeight(130),
+                X = Application.GetRealWidth(176),
+                LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor,
+            };
+            yearFramelayout.AddChidren(yearRow);
+
+
+            var yearTextBtn = new Button
+            {
+                TextAlignment = TextAlignment.CenterLeft,
+                TextID = MyInternationalizationString.everyyear,
+                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
+            };
+            yearRow.AddChidren(yearTextBtn);
+
+            var yearBack = new Button
+            {
+                Width = Application.GetRealWidth(58),
+                Height = Application.GetRealHeight(58),
+                UnSelectedImagePath = "ZigeeLogic/next.png",
+                X = Application.GetRealWidth(789),
+                Gravity = Gravity.CenterVertical,
+            };
+            yearRow.AddChidren(yearBack);
+
+            EventHandler<MouseEventArgs> yearclick = (sender, e) =>
+            {
+                var everyyearPage = new EveryyearPage();
+                UserView.HomePage.Instance.AddChidren(everyyearPage);
+                UserView.HomePage.Instance.PageIndex += 1;
+                everyyearPage.Show();
+
+            };
+            yearFramelayout.MouseUpEventHandler += yearclick;
+            yearTextBtn.MouseUpEventHandler += yearclick;
+            yearBack.MouseUpEventHandler += yearclick;
+            yearIconBtn.MouseUpEventHandler += yearclick;
+            yearRow.MouseUpEventHandler += yearclick;
+
+            #endregion
+            EventHandler<MouseEventArgs> onceclick = (sender, e) =>
+            {
+                onceBackBtn.Visible = true;
+                everydayBack.Visible = false;
+            };
+            onceTextBtn.MouseUpEventHandler += onceclick;
+            onceBackBtn.MouseUpEventHandler += onceclick;
+            onceFramelayout.MouseUpEventHandler += onceclick;
+            onceIconBtn.MouseUpEventHandler += onceclick;
+            onceRow.MouseUpEventHandler += onceclick;
+
+            EventHandler<MouseEventArgs> everydayclick = (sender, e) =>
+            {
+                onceBackBtn.Visible = false;
+                everydayBack.Visible = true;
+
+            };
+            everydayFramelayout.MouseUpEventHandler += everydayclick;
+            everydayTxetBtn.MouseUpEventHandler += everydayclick;
+            everydayBack.MouseUpEventHandler += everydayclick;
+            everydayIconBtn.MouseUpEventHandler += everydayclick;
+            everydayRow.MouseUpEventHandler += everydayclick;
+
+            EventHandler<MouseEventArgs> weekclick = (sender, e) =>
+            {
+                onceBackBtn.Visible = false;
+                everydayBack.Visible = false;
+                var weekPage = new WeekPage();
+                UserView.HomePage.Instance.AddChidren(weekPage);
+                UserView.HomePage.Instance.PageIndex += 1;
+                weekPage.Show(weekTextBtn.Text);
+
+            };
+            weekFramelayout.MouseUpEventHandler += weekclick;
+            weekTextBtn.MouseUpEventHandler += weekclick;
+            weekBack.MouseUpEventHandler += weekclick;
+            weekIconBtn.MouseUpEventHandler += weekclick;
+            weekRow.MouseUpEventHandler += weekclick;
+
+            EventHandler<MouseEventArgs> monthlyclick = (sender, e) =>
+            {
+                onceBackBtn.Visible = false;
+                everydayBack.Visible = false;
+                var everymonthPage = new EverymonthPage();
+                UserView.HomePage.Instance.AddChidren(everymonthPage);
+                UserView.HomePage.Instance.PageIndex += 1;
+                everymonthPage.Show(monthlyTextBtn.Text);
+
+            };
+            monthlyFramelayout.MouseUpEventHandler += monthlyclick;
+            monthlyIconBtn.MouseUpEventHandler += monthlyclick;
+            monthlyRow.MouseUpEventHandler += monthlyclick;
+            monthlyTextBtn.MouseUpEventHandler += monthlyclick;
+            monthlyBack.MouseUpEventHandler += monthlyclick;
+            if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 0)
+            {
+                onceBackBtn.Visible = true;
+                everydayBack.Visible = false;
+            }
+            else if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 2)
+            {
+                onceBackBtn.Visible = false;
+                everydayBack.Visible = true;
+            }
+            else
+            {
+                onceBackBtn.Visible = false;
+                everydayBack.Visible = false;
+            }
+
+            btnsave.MouseUpEventHandler += (sedder, e) =>
+            {
+                if (!onceBackBtn.Visible && !everydayBack.Visible)
+                {
+                    var alert = new Alert(Language.StringByID(MyInternationalizationString.Prompt),
+                                                     Language.StringByID(MyInternationalizationString.selectweek),
+                                                 Language.StringByID(MyInternationalizationString.complete));
+
+                    alert.Show();
+                    return;
+                }
+                if (onceBackBtn.Visible)
+                {
+                    Common.Logic.CurrentLogic.TimeAttribute.Repeat = 0;
+
+                }
+                if (everydayBack.Visible)
+                {
+                    Common.Logic.CurrentLogic.TimeAttribute.Repeat = 2;
+                }
                 RemoveFromParent();
                 action();
+
             };
 
         }

--
Gitblit v1.8.0