diff options
| author | sowgro <tpoke.ferrari@gmail.com> | 2025-10-04 15:13:22 -0400 |
|---|---|---|
| committer | sowgro <tpoke.ferrari@gmail.com> | 2025-10-04 15:13:22 -0400 |
| commit | d97f1a846bb872db8a0954c2214fb0a757542e8b (patch) | |
| tree | af7a2c4d18d27a9de0b12e2070eb55df20eb4f8b /src/main/java/design/controller/userinput/menus | |
| parent | b34c67556d47c74974adad32668dc0801ff9d1ed (diff) | |
| download | designproject-design-6-d97f1a846bb872db8a0954c2214fb0a757542e8b.tar.gz designproject-design-6-d97f1a846bb872db8a0954c2214fb0a757542e8b.tar.bz2 designproject-design-6-d97f1a846bb872db8a0954c2214fb0a757542e8b.zip | |
Initial version mostly working
Diffstat (limited to 'src/main/java/design/controller/userinput/menus')
4 files changed, 69 insertions, 0 deletions
diff --git a/src/main/java/design/controller/userinput/menus/MainMenu.java b/src/main/java/design/controller/userinput/menus/MainMenu.java new file mode 100644 index 0000000..b6fca7c --- /dev/null +++ b/src/main/java/design/controller/userinput/menus/MainMenu.java @@ -0,0 +1,17 @@ +package design.controller.userinput.menus; + +import design.controller.userinput.Menu; +import design.controller.userinput.MenuOption; + +public class MainMenu extends Menu { + public MainMenu() { + super("main menu"); + + addAll( + new MenuOption("user settings...", (a) -> new UserSettings().present()), + new MenuOption("statistics...", (a) -> new StatisticsMenu().present()), + new MenuOption("log round...", (a) -> {}), + new MenuOption("quit", (a) -> {}) + ); + } +} diff --git a/src/main/java/design/controller/userinput/menus/SelectUser.java b/src/main/java/design/controller/userinput/menus/SelectUser.java new file mode 100644 index 0000000..f5ddd64 --- /dev/null +++ b/src/main/java/design/controller/userinput/menus/SelectUser.java @@ -0,0 +1,20 @@ +package design.controller.userinput.menus; + +import design.controller.userinput.Menu; +import design.controller.userinput.MenuOption; +import design.persistence.PersonalDatabase; + +import java.util.Arrays; + +public class SelectUser extends Menu { + + PersonalDatabase personalDB = PersonalDatabase.INSTANCE; + + public SelectUser() { + super("select user"); + + addAll(Arrays.stream(personalDB.getGolfers()) + .map(i -> new MenuOption(i.getUsername(), (a) -> {})).toList()); + add(new MenuOption("<create>", (a) -> {})); + } +} diff --git a/src/main/java/design/controller/userinput/menus/StatisticsMenu.java b/src/main/java/design/controller/userinput/menus/StatisticsMenu.java new file mode 100644 index 0000000..1d6de4b --- /dev/null +++ b/src/main/java/design/controller/userinput/menus/StatisticsMenu.java @@ -0,0 +1,14 @@ +package design.controller.userinput.menus; + +import design.controller.userinput.Menu; +import design.controller.userinput.MenuOption; + +public class StatisticsMenu extends Menu { + public StatisticsMenu() { + super("statistics menu"); + + addAll( + new MenuOption("return to main menu", (c) -> new MainMenu().present()) + ); + } +} diff --git a/src/main/java/design/controller/userinput/menus/UserSettings.java b/src/main/java/design/controller/userinput/menus/UserSettings.java new file mode 100644 index 0000000..fd9a311 --- /dev/null +++ b/src/main/java/design/controller/userinput/menus/UserSettings.java @@ -0,0 +1,18 @@ +package design.controller.userinput.menus; + +import design.controller.userinput.Menu; +import design.controller.userinput.MenuOption; + +public class UserSettings extends Menu { + + public UserSettings() { + super("user settings"); + + addAll( + new MenuOption("return to main menu", (a) -> new MainMenu().present()), + new MenuOption("switch user...", (a) -> new SelectUser().present()), + new MenuOption("set username...", (a -> {})), + new MenuOption("set password...", (a) -> {}) + ); + } +} |
