summaryrefslogtreecommitdiff
path: root/src/main/java/design/controller/userinput/menus/MainMenu.java
diff options
context:
space:
mode:
authorsowgro <tpoke.ferrari@gmail.com>2025-11-16 02:01:58 -0500
committersowgro <tpoke.ferrari@gmail.com>2025-11-16 02:01:58 -0500
commit969b8071dd799dfaed939e10bf77b8a1ad42f9dc (patch)
tree214016dc742a155512fbb2f851cf589509f3b361 /src/main/java/design/controller/userinput/menus/MainMenu.java
parentcf59d52cba70742f1d4098c38b4c7a798b3d89fa (diff)
parent43530df067b1132b944e9619bdf60b72264829ec (diff)
downloaddesignproject-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.java39
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())
+ );
+ }
}
}