private DasMenuItem getCurrentItem(DasMenuArgs Args, DasMenuItem RootItem, string selected) { DasMenuCommand Cmd = new DasMenuCommand(); DasMenuItem Item; Item = Cmd.runCommand(Args.getCommand(), RootItem, selected); return(Item); }
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()); } }