陈嘉乐
2020-12-03 0f2e0147e8990e913d16d99bc1b94fb6bc53abd7
HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
@@ -4,7 +4,7 @@
using HDL_ON.UI.CSS;
using Shared;
namespace HDL_ON.UI
namespace HDL_ON.UI
{
    public partial class IntelligencePage : FrameLayout
    {
@@ -177,7 +177,8 @@
            #endregion
            sceneFunctionView = new VerticalScrolViewLayout() {
            sceneFunctionView = new VerticalScrolViewLayout()
            {
                Y = floorChangeView.Bottom,
                Height = Application.GetRealHeight(667 - 64 - 49 - 52 + 30),
            };
@@ -197,11 +198,11 @@
            try
            {
                int index = 0;
                foreach (var function in DB_ResidenceData.functionList.scenes)
                foreach (var scene in DB_ResidenceData.functionList.scenes)
                {
                    if (function.roomIdList.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示
                    if (scene.roomIds.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示
                    {
                        function.collection = false;
                        scene.collect = false;
                        continue;
                    }
                    if (index % 2 == 0)
@@ -221,12 +222,12 @@
                        X = functionView_X,
                        Width = Application.GetRealWidth(164),
                        Height = Application.GetRealWidth(122),
                        Tag = function.sid,
                        BackgroundImagePath = (function as Scene).ImagePath,
                        Tag = scene.sid,
                        BackgroundImagePath = (scene as Scene).ImagePath,
                    };
                    rowView.AddChidren(functionView);
                    LoadSceneFunctionDiv(functionView, function);
                    LoadSceneFunctionDiv(functionView, scene);
                    index++;
                }
@@ -268,7 +269,7 @@
        /// <summary>
        /// 加载场景控制卡片
        /// </summary>
        void LoadSceneFunctionDiv(FrameLayout view, Function function)
        void LoadSceneFunctionDiv(FrameLayout view, Scene scene)
        {
            try
            {
@@ -285,7 +286,7 @@
                    Y = Application.GetRealWidth(68),
                    Width = Application.GetRealWidth(150),
                    Height = Application.GetRealHeight(24),
                    Text = function.name,
                    Text = scene.name,
                    TextSize = CSS_FontSize.TextFontSize,
                    TextColor = CSS_Color.MainBackgroundColor,
                    TextAlignment = TextAlignment.CenterLeft,
@@ -303,7 +304,7 @@
                    TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
                    TextAlignment = TextAlignment.CenterLeft,
                    SelectedTextColor = CSS_Color.MainBackgroundColor,
                    Text = function.GetRoomListName(),
                    Text = scene.GetRoomListName(),
                };
                view.AddChidren(btnZone);
@@ -328,24 +329,24 @@
                    Height = Application.GetMinRealAverage(32),
                    UnSelectedImagePath = "Collection/CollectionWhiteIcon.png",
                    SelectedImagePath = "Collection/CollectionIcon.png",
                    IsSelected = function.collection,
                    IsSelected = scene.collect,
                };
                view.AddChidren(btnCollection);
                btnCollection.MouseUpEventHandler = (sender, e) => {
                    function.collection = btnCollection.IsSelected = !btnCollection.IsSelected;
                    function.SaveFunctionData();
                    scene.collect = btnCollection.IsSelected = !btnCollection.IsSelected;
                    scene.SaveSceneData();
                };
                LoadEvent_ControlScene(btnCoverd,btnName,btnZone, function);
                LoadEvent_ControlScene(btnCoverd,btnName,btnZone, scene);
                btnSettingIcon.MouseUpEventHandler = (sender, e) => {
                    Action backAction = () => {
                        LoadSceneFunctionControlZone();
                    };
                    Action refreshAction = () => {
                        btnName.Text = function.name;
                        btnZone.Text = function.GetRoomListName();
                        view.BackgroundImagePath = (function as Scene).ImagePath;
                        btnName.Text = scene.name;
                        btnZone.Text = scene.GetRoomListName();
                        view.BackgroundImagePath = scene.ImagePath;
                    };
                    var aep = new SceneEditPage(function as Scene, backAction);
                    var aep = new SceneEditPage(scene, backAction);
                    MainPage.BasePageView.AddChidren(aep);
                    aep.LoadPage(StringId.EditScene, refreshAction);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -365,30 +366,11 @@
        void LoadAutomationPageView()
        {
            //btnAddIcon.RemoveFromParent();
            automationPage = new FrameLayout();
            contentPageView.AddChidren(automationPage);
            HDL_ON.UI.UI2.Intelligence.Automation.MainView.automationPage = automationPage;
            HDL_ON.UI.UI2.Intelligence.Automation.MainView.MainShow();
            Button btnTipNot = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
                Y = Application.GetRealHeight(120),
                Width = Application.GetRealWidth(180),
                Height = Application.GetRealWidth(180),
                UnSelectedImagePath = "TipNot.png",
            };
            automationPage.AddChidren(btnTipNot);
            Button btnTipNotText = new Button()
            {
                Y = btnTipNot.Bottom,
                Height = Application.GetRealWidth(100),
                TextID = StringId.TipNotOpen,
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
            };
            automationPage.AddChidren(btnTipNotText);
        }
        #endregion
    }
@@ -441,9 +423,9 @@
                btnSceneTilte.TextSize = CSS_FontSize.HeadlineFontSize;
                btnAutomationTitle.IsSelected = false;
                btnAutomationTitle.TextSize = CSS_FontSize.TextFontSize;
                contentPageView.PageIndex = 0;
            };
            //逻辑点击事件
            btnAutomationTitle.MouseUpEventHandler = (sender, e) => {
                if (btnAutomationTitle.IsSelected)
                {
@@ -454,6 +436,7 @@
                btnSceneTilte.IsSelected = false;
                btnSceneTilte.TextSize = CSS_FontSize.TextFontSize;
                contentPageView.PageIndex = 1;
            };
        }
        #endregion
@@ -465,13 +448,22 @@
        {
            btnAddIcon.MouseUpEventHandler = (sender, e) =>
            {
                Action action = () => {
                    LoadSceneFunctionControlZone();
                };
                var aep = new NewSceneMenuListPage(action);
                MainPage.BasePageView.AddChidren(aep);
                aep.LoadPage();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                if (!btnAutomationTitle.IsSelected)
                {
                    Action action = () =>
                    {
                        LoadSceneFunctionControlZone();
                    };
                    var aep = new NewSceneMenuListPage(action);
                    MainPage.BasePageView.AddChidren(aep);
                    aep.LoadPage();
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                }
                else
                {
                    //跳转到逻辑界面
                    HDL_ON.UI.UI2.Intelligence.Automation.MainView.SkipAddLogicPage();
                }
            };
        }
@@ -479,19 +471,20 @@
        /// <summary>
        /// 加载场景控制事件
        /// </summary>
        void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone, Function function)
        void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone, Scene scene)
        {
            EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
            {
                string msg = function.name + Language.StringByID(StringId.AlreadyOpened);
                string msg = scene.name + Language.StringByID(StringId.AlreadyOpened);
                new PublicAssmebly().TipMsgAutoClose(msg, true);
                Control.Ins.ControlScene(function as Scene);
                Control.Ins.ControlScene(scene);
            };
            btnCoverd.MouseUpEventHandler = eventHandler;
            btnName.MouseUpEventHandler = eventHandler;
            btnZone.MouseUpEventHandler = eventHandler;
        }
    }
}