diff options
| author | sowgro <tpoke.ferrari@gmail.com> | 2025-11-16 02:01:58 -0500 |
|---|---|---|
| committer | sowgro <tpoke.ferrari@gmail.com> | 2025-11-16 02:01:58 -0500 |
| commit | 969b8071dd799dfaed939e10bf77b8a1ad42f9dc (patch) | |
| tree | 214016dc742a155512fbb2f851cf589509f3b361 /src/main/java/design/controller/userinput/menus/MainMenu.java | |
| parent | cf59d52cba70742f1d4098c38b4c7a798b3d89fa (diff) | |
| parent | 43530df067b1132b944e9619bdf60b72264829ec (diff) | |
| download | designproject-design-6-969b8071dd799dfaed939e10bf77b8a1ad42f9dc.tar.gz designproject-design-6-969b8071dd799dfaed939e10bf77b8a1ad42f9dc.tar.bz2 designproject-design-6-969b8071dd799dfaed939e10bf77b8a1ad42f9dc.zip | |
Merge branch 'main' into import-exportimport-export
# Conflicts:
# data/personaldb.json
# src/main/java/design/controller/userinput/menus/MainMenu.java
# src/main/java/design/persistence/JSONLeagueDatabase.java
# src/main/java/design/persistence/JSONPersonalDatabase.java
# src/test/java/design/model/ClubTest.java
# src/test/java/design/model/GolferTest.java
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/controller/userinput/menus/MainMenu.java | 39 |
1 files changed, 30 insertions, 9 deletions
diff --git a/src/main/java/design/controller/userinput/menus/MainMenu.java b/src/main/java/design/controller/userinput/menus/MainMenu.java index 9d5204f..0c42422 100644 --- a/src/main/java/design/controller/userinput/menus/MainMenu.java +++ b/src/main/java/design/controller/userinput/menus/MainMenu.java @@ -2,6 +2,8 @@ package design.controller.userinput.menus; import design.controller.userinput.Menu; import design.controller.userinput.MenuOption; +import design.controller.userinput.UndoActions; +import design.runtime.Session; import java.util.List; @@ -13,14 +15,33 @@ public class MainMenu extends Menu { @Override public List<MenuOption> getMenuOptions() { - return List.of( - new MenuOption("quit", () -> System.exit(0)), - new MenuOption("user settings...", () -> new UserSettings().present()), - new MenuOption("manage courses...", () -> new ManageCourses().present()), - new MenuOption("manage clubs...", () -> new ManageClubs().present()), - new MenuOption("statistics...", () -> new StatisticsMenu().present()), - new MenuOption("log round...", () -> new HolePlayMenu().present()), - new MenuOption("manage data...", () -> new ImportExportMenu().present()) - ); + boolean guest = Session.isGuest(); + if (guest) { + return List.of( + new MenuOption("quit", () -> System.exit(0)), + new MenuOption("guest settings...", () -> new UserSettings().present()), + new MenuOption("browse courses...", () -> new SearchMenu().present()) + + ); + } else { + return List.of( + new MenuOption("quit", () -> System.exit(0)), + new MenuOption("undo", () -> { + UndoActions.undoWithSave(); + this.present(); + }), + new MenuOption("redo", () -> { + UndoActions.redoWithSave(); + this.present(); + }), + new MenuOption("user settings...", () -> new UserSettings().present()), + new MenuOption("manage courses...", () -> new ManageCourses().present()), + new MenuOption("manage clubs...", () -> new ManageClubs().present()), + new MenuOption("statistics...", () -> new StatisticsMenu().present()), + new MenuOption("log round...", () -> new HolePlayMenu().present()), + new MenuOption("League play...", () -> new SelectLeague().present()), + new MenuOption("manage data...", () -> new ImportExportMenu().present()) + ); + } } } |
