diff options
| author | sowgro <tpoke.ferrari@gmail.com> | 2025-10-05 14:06:20 -0400 |
|---|---|---|
| committer | sowgro <tpoke.ferrari@gmail.com> | 2025-10-05 14:06:20 -0400 |
| commit | 75ef9ca83d43051616c0083af85eacbd71b4b4b6 (patch) | |
| tree | b93f11c54becbd8868959ec197c37180a4a94974 /src/main/java/design/controller/userinput/Menu.java | |
| parent | d97f1a846bb872db8a0954c2214fb0a757542e8b (diff) | |
| download | designproject-design-6-75ef9ca83d43051616c0083af85eacbd71b4b4b6.tar.gz designproject-design-6-75ef9ca83d43051616c0083af85eacbd71b4b4b6.tar.bz2 designproject-design-6-75ef9ca83d43051616c0083af85eacbd71b4b4b6.zip | |
Reorganize menu api
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/controller/userinput/Menu.java | 34 |
1 files changed, 5 insertions, 29 deletions
diff --git a/src/main/java/design/controller/userinput/Menu.java b/src/main/java/design/controller/userinput/Menu.java index 407d2ca..7677793 100644 --- a/src/main/java/design/controller/userinput/Menu.java +++ b/src/main/java/design/controller/userinput/Menu.java @@ -2,38 +2,14 @@ package design.controller.userinput; import java.util.*; -public class Menu { - private final String title; - private final List<MenuOption> menuOptions; +public abstract class Menu { + public abstract String getTitle(); - public Menu(String title, List<MenuOption> menuOptions) { - this.title = title; - this.menuOptions = menuOptions; - } - - public Menu(String title) { - this.title = title; - this.menuOptions = new ArrayList<>(); - } - - public boolean remove(MenuOption menuOption) { - return menuOptions.remove(menuOption); - } - - public boolean addAll(List<MenuOption> c) { - return menuOptions.addAll(c); - } - - public boolean addAll(MenuOption... c) { - return addAll(Arrays.stream(c).toList()); - } - - public boolean add(MenuOption menuOption) { - return menuOptions.add(menuOption); - } + public abstract List<MenuOption> getMenuOptions(); public void present() { - System.out.printf("-- %s --\n", title.toUpperCase()); + var menuOptions = getMenuOptions(); + System.out.printf("-- %s --\n", getTitle().toUpperCase()); for (int i = 0; i < menuOptions.size(); i++) { MenuOption menuOption = menuOptions.get(i); System.out.printf("%s: %s\n", i, menuOption.getName()); |
