Exemple #1
0
        public MainMenuPage(UiHelper helper)
        {
            _restartPage = new RestartPage(helper, this);

            var labelHeader = new HeaderText("Главное меню");
            var label2      = new TextView("-------------------");
            var label       = new TextView("Тут написано что-то умное!");
            var list        = new ListView(
                new string[]
            {
                "Управлние стримом",
                "Что-нибудь еще"
            }
                );
            var button = new SimpleButton("\u2B07", async(reaction) =>
            {
                list.Index++;
                await UpdateView();
            });
            var button2 = new SimpleButton("\u2B06", async(reaction) =>
            {
                list.Index--;
                await UpdateView();
            });
            var button3 = new SimpleButton("\uD83C\uDD97", async(reaction) =>
            {
                if (list._index == 0)
                {
                    await helper.ClosePage(this);
                    await helper.DisplayPage(_restartPage, Root.Channel);
                }
            });

            AddElement(label);
            AddElement(label2);
            AddElement(list);
            AddElement(button2);
            AddElement(button);
            AddElement(button3);
            AddElement(labelHeader);
        }
Exemple #2
0
        public RestartPage(UiHelper helper, UiPage parentPage)
        {
            _parentPage = parentPage;

            var label       = new TextView("Перезапуск");
            var label2      = new TextView("-------------------");
            var labelHeader = new HeaderText("Управление стримом");
            var list        = new ListView(
                new string[]
            {
                "Частичный перезапуск",
                "Полный перезапуск",
                "Назад"
            }
                );
            var button = new SimpleButton("\u2B07", async(reaction) =>
            {
                list.Index++;
                await UpdateView();
            });
            var button2 = new SimpleButton("\u2B06", async(reaction) =>
            {
                list.Index--;
                await UpdateView();
            });
            var button3 = new SimpleButton("\uD83C\uDD97", async(reaction) =>
            {
                //await Root.Channel.SendMessageAsync(list.Value);
                if (list.Index == 2)
                {
                    await helper.ClosePage(this);
                    await helper.DisplayPage(_parentPage, Root.Channel);
                }

                if (list.Index == 1)
                {
                    await helper.SwitchPage(this, new YesNoDialog(
                                                "Перезапуск",
                                                "Вы точно хотите сделать полный перезапуск?",
                                                async() =>
                    {
                        ConsoleUtil.ExecuteProcess("./../hard_restart.sh");
                        await Root.Channel.SendMessageAsync("Полный перезапуск by " + reaction.User.Value.Username);
                    },
                                                async() =>
                    {
                        //await Root.Channel.SendMessageAsync("NO");
                    },
                                                helper,
                                                this
                                                ));
                }

                if (list.Index == 0)
                {
                    await helper.SwitchPage(this, new YesNoDialog(
                                                "Перезапуск",
                                                "Вы точно хотите сделать частичный перезапуск?",
                                                async() =>
                    {
                        ConsoleUtil.ExecuteProcess("./../soft_restart.sh");
                        await Root.Channel.SendMessageAsync("Частичный перезапуск by " + reaction.User.Value.Username);
                    },
                                                async() =>
                    {
                        //await Root.Channel.SendMessageAsync("NO");
                    },
                                                helper,
                                                this
                                                ));
                }
            });

            AddElement(label);
            AddElement(label2);
            AddElement(list);
            AddElement(button2);
            AddElement(button);
            AddElement(button3);
            AddElement(labelHeader);
        }