Пример #1
0
        private DasMenuItem getCurrentItem(DasMenuArgs Args, DasMenuItem RootItem, string selected)
        {
            DasMenuCommand Cmd = new DasMenuCommand();
            DasMenuItem    Item;

            Item = Cmd.runCommand(Args.getCommand(), RootItem, selected);

            return(Item);
        }
Пример #2
0
        private void run(string args)
        {
            DasMenuArgs MenuArgs = new DasMenuArgs(args, ARGS_SPLIT);
            DasMenuTextPanelRepository TextPanelRepository = new DasMenuTextPanelRepository(GridTerminalSystem);
            DasMenuFactory             MenuFactory         = new DasMenuFactory(GridTerminalSystem);
            IMyTextPanel TextPanel = TextPanelRepository.findLcd(MenuArgs.getLcdPattern());

            if (TextPanel != null)
            {
                string        SelectedItemUid = TextPanelRepository.readStateFromTextPanel(TextPanel);
                DasMenuConfig MenuConfig      = new DasMenuConfig(TextPanel.GetPrivateText());
                DasMenuItem   RootItem        = MenuFactory.createFromConfig(MenuConfig);
                DasMenuView   View            = new DasMenuView();
                DasMenuItem   CurrentItem     = getCurrentItem(MenuArgs, RootItem, SelectedItemUid);
                string        content         = View.getContent(RootItem, MenuConfig, CurrentItem);

                TextPanel.WritePublicText(content);
                Echo(content);
                TextPanelRepository.saveStateToTextPanel(TextPanel, CurrentItem.getUid());
            }
        }