static void CommonSettings(IDrawningRectangle <SignConsole> location, Action startWithClose) { var menu = new KeyboardMenu <ButtonInConsole>("Settings"); var sattingsMenu = new ConsolePrintMenu(location.Width, location.Height, location, menu); location.Register((0, 0), sattingsMenu, sattingsMenu.GetCoordinates()); var printer = new BigPixelPrint(sattingsMenu.Width, 5, sattingsMenu, letters); sattingsMenu.Register((0, 1), printer, printer.GetCoordinates()); sattingsMenu.SetWriter(printer); var buttons = SetControl("Menu", menu, sattingsMenu, new string[] { "Menu Up", "Menu Down", "Menu Select" }, new needOption[] { needOption.menuUp, needOption.menuDown, needOption.menuPress }); var b4 = new ButtonInConsole(6, 1, sattingsMenu, SignConsole.GetSignConsoles("Exit")); sattingsMenu.Register((5, 9 + buttons.Length * 2), b4, b4.GetCoordinates()); menu.AddLastButton(b4); b4.IsPressed += () => { sattingsMenu.Close(); location.CancelRegistration(sattingsMenu); MenuKeyClose(); startWithClose?.Invoke(); }; sattingsMenu.Load(); MenuKeySet(menu); }
static ButtonInConsole[] MenuInicialisation(KeyboardMenu <ButtonInConsole> menu, IDrawningRectangle <SignConsole> menuPrinter, string[] buttonsName) { var buttons = new ButtonInConsole[buttonsName.Length]; for (int i = 0; i < buttons.Length; i++) { buttons[i] = new ButtonInConsole(menuPrinter.Width - 10, 1, menuPrinter, SignConsole.GetSignConsoles(buttonsName[i])); menuPrinter.Register((5, 8 + i * 2), buttons[i], buttons[i].GetCoordinates()); menu.AddLastButton(buttons[i]); } return(buttons); }
void RemoveButton(ButtonInConsole button) { button.SetColors(ConsoleColor.Black, ConsoleColor.White); }
void SetButton(ButtonInConsole button) { button.SetColors(ConsoleColor.White, ConsoleColor.Black); }
public void ChangeButton(ButtonInConsole last, ButtonInConsole now) { RemoveButton(last); SetButton(now); }