xm
2020-04-16 6fa9d69da922c8049f5acfcbb9ce9fd26811024c
ZigbeeApp/Shared/Phone/Device/Logic/Cycle.cs
New file
@@ -0,0 +1,184 @@
using System;
using System.Collections.Generic;
using Shared;
using Shared.Common;
using Shared.Phone;
using Shared.R;
namespace Shared.Phone.Device.Logic
{
    public class Cycle : FrameLayout
    {
        Action action;
        public Cycle(Action action)
        {
            this.action = action;
        }
        public void Show()
        {
            Tag = "Logic";
            #region  上面的布局代码
            TopView view = new TopView();
            this.AddChidren(view.TopRowView());
            view.toptitleNameBtn.TextID = MyInternationalizationString.cycle;
            view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); };
            #endregion
            var middle = new FrameLayout
            {
                Y = view.topRowLayout.Bottom,
                Height = Application.GetRealHeight(Method.H - 184),
                BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
            };
            this.AddChidren(middle);
            LogicView.SaveView saveView = new LogicView.SaveView();
            saveView.frameLayout.Y = middle.Height - Application.GetRealHeight(260);
            middle.AddChidren(saveView.Show());
            #region   ----执行一次----
            FunView onceView = new FunView();
            onceView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
            onceView.funnameBtn.TextID = MyInternationalizationString.executeonce;
            onceView.funnextBtn.Width = Application.GetMinRealAverage(60);
            onceView.funnextBtn.Height = Application.GetMinRealAverage(60);
            onceView.funnextBtn.UnSelectedImagePath = "ZigeeLogic/selected.png";
            onceView.funnextBtn.Visible = false;
            middle.AddChidren(onceView.FunFrameView());
            #endregion
            #region   ----每天----
            FunView dayView = new FunView();
            dayView.funFrameLayout.Y = onceView.funFrameLayout.Bottom;
            dayView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
            dayView.funnameBtn.TextID = MyInternationalizationString.everyday;
            dayView.funnextBtn.Width = Application.GetMinRealAverage(60);
            dayView.funnextBtn.Height = Application.GetMinRealAverage(60);
            dayView.funnextBtn.UnSelectedImagePath = "ZigeeLogic/selected.png";
            dayView.funnextBtn.Visible = false;
            middle.AddChidren(dayView.FunFrameView());
            #endregion
            #region   ----每周----
            FunView weekView = new FunView();
            weekView.funFrameLayout.Y = dayView.funFrameLayout.Bottom;
            weekView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
            weekView.funnameBtn.TextID = MyInternationalizationString.weekly;
            middle.AddChidren(weekView.FunFrameView());
            #endregion
            #region   ----每月----
            FunView monView = new FunView();
            monView.funFrameLayout.Y = weekView.funFrameLayout.Bottom;
            monView.funFrameLayout.Height = Application.GetRealHeight(160 + 20);//最后一行增加20高度;
            monView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor; ///改变最后功能快线条颜色
            monView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
            monView.funnameBtn.TextID = MyInternationalizationString.monthly;
            middle.AddChidren(monView.FunFrameView());
            #endregion
            #region   ----每年----
            FunView yearView = new FunView();
            yearView.funFrameLayout.Y = monView.funFrameLayout.Bottom;
            yearView.iconBtn.UnSelectedImagePath = "ZigeeLogic/point.png";
            yearView.funnameBtn.TextID = MyInternationalizationString.everyyear;
            //middle.AddChidren(yearView.FunFrameView());
            yearView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
            {
                var everyyearPage = new EveryyearPage();
                UserView.HomePage.Instance.AddChidren(everyyearPage);
                UserView.HomePage.Instance.PageIndex += 1;
                everyyearPage.Show();
            };
            #endregion
            onceView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
            {
                onceView.funnextBtn.Visible = true;
                dayView.funnextBtn.Visible = false;
            };
            dayView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
            {
                onceView.funnextBtn.Visible = false;
                dayView.funnextBtn.Visible = true;
            };
            weekView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
            {
                onceView.funnextBtn.Visible = false;
                dayView.funnextBtn.Visible = false;
                var weekPage = new WeekPage();
                UserView.HomePage.Instance.AddChidren(weekPage);
                UserView.HomePage.Instance.PageIndex += 1;
                weekPage.Show(weekView.funnameBtn.Text);
            };
            monView.clickviewBtn.MouseUpEventHandler += (sender, e) =>
            {
                onceView.funnextBtn.Visible = false;
                dayView.funnextBtn.Visible = false;
                var everymonthPage = new EverymonthPage();
                UserView.HomePage.Instance.AddChidren(everymonthPage);
                UserView.HomePage.Instance.PageIndex += 1;
                everymonthPage.Show(monView.funnameBtn.Text);
            };
            if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 0)
            {
                onceView.funnextBtn.Visible = true;
                dayView.funnextBtn.Visible = false;
            }
            else if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 2)
            {
                onceView.funnextBtn.Visible = false;
                dayView.funnextBtn.Visible = true;
            }
            else
            {
                onceView.funnextBtn.Visible = false;
                dayView.funnextBtn.Visible = false;
            }
            saveView.clickviewBtn.MouseUpEventHandler += (sedder, e) =>
            {
                if (!onceView.funnextBtn.Visible && !dayView.funnextBtn.Visible)
                {
                    var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal,
                           Language.StringByID(MyInternationalizationString.selectweek),
                          Language.StringByID(MyInternationalizationString.confrim));
                    alert.Show();
                    return;
                }
                if (onceView.funnextBtn.Visible)
                {
                    Common.Logic.CurrentLogic.TimeAttribute.Repeat = 0;
                }
                if (dayView.funnextBtn.Visible)
                {
                    Common.Logic.CurrentLogic.TimeAttribute.Repeat = 2;
                }
                RemoveFromParent();
                action();
            };
        }
    }
}