summaryrefslogtreecommitdiff
path: root/src/main/java/design/controller/userinput/menus/StatisticsMenu.java
diff options
context:
space:
mode:
authorsowgro <tpoke.ferrari@gmail.com>2025-10-11 22:24:54 -0400
committersowgro <tpoke.ferrari@gmail.com>2025-10-11 22:24:54 -0400
commitfac7fb71260b901a893b5b90aae23e86d6c23550 (patch)
tree41132296ea8e2bf124f76b9cfad1d6e492e8f0e0 /src/main/java/design/controller/userinput/menus/StatisticsMenu.java
parent197e1961b4b9b2ab12dc070cd6a76ccb1ef3b369 (diff)
downloaddesignproject-design-6-fac7fb71260b901a893b5b90aae23e86d6c23550.tar.gz
designproject-design-6-fac7fb71260b901a893b5b90aae23e86d6c23550.tar.bz2
designproject-design-6-fac7fb71260b901a893b5b90aae23e86d6c23550.zip
Menu cleanup - pass 2
Diffstat (limited to '')
-rw-r--r--src/main/java/design/controller/userinput/menus/StatisticsMenu.java109
1 files changed, 57 insertions, 52 deletions
diff --git a/src/main/java/design/controller/userinput/menus/StatisticsMenu.java b/src/main/java/design/controller/userinput/menus/StatisticsMenu.java
index 8835ce1..9ce0bd0 100644
--- a/src/main/java/design/controller/userinput/menus/StatisticsMenu.java
+++ b/src/main/java/design/controller/userinput/menus/StatisticsMenu.java
@@ -19,8 +19,7 @@ import java.util.List;
import java.util.Scanner;
public class StatisticsMenu extends Menu {
-
- Golfer golfer = Session.getCurrentGolfer();
+ private final Golfer golfer = Session.getCurrentGolfer();
@Override
public String getTitle() {
@@ -29,54 +28,61 @@ public class StatisticsMenu extends Menu {
@Override
public List<MenuOption> getMenuOptions() {
- return List.of(
- new MenuOption("return to main menu", () -> new MainMenu().present()),
- new MenuOption("view lifetime statistics", () -> {
- Statistics stats = new LifetimeStats(golfer);
-
- System.out.printf("Total swings: %d\n", stats.get_score());
- System.out.printf("Total distance: %.1f\n", stats.get_distance());
- this.present();
- }),
- new MenuOption("view yearly statistics", () -> {
- Statistics baseStats = new LifetimeStats(golfer);
- Statistics yearStats = getUserYear(baseStats);
-
- System.out.printf("Total swings: %d\n", yearStats.get_score());
- System.out.printf("Total distance: %.1f\n", yearStats.get_distance());
- this.present();
- }),
- new MenuOption("view course statistics", () -> {
- Statistics baseStats = new LifetimeStats(golfer);
- Statistics yearStats = getUserYear(baseStats);
- Statistics courseStats = getUserCourse(yearStats);
-
- System.out.printf("Total swings: %d\n", courseStats.get_score());
- System.out.printf("Total distance: %.1f\n", courseStats.get_distance());
- this.present();
- }),
- new MenuOption("view round statistics", () -> {
- Statistics baseStats = new LifetimeStats(golfer);
- Statistics yearStats = getUserYear(baseStats);
- Statistics courseStats = getUserCourse(yearStats);
- Statistics roundStats = getUserRound(courseStats);
-
- System.out.printf("Total swings: %d\n", roundStats.get_score());
- System.out.printf("Total distance: %.1f\n", roundStats.get_distance());
- this.present();
- }),
- new MenuOption("view hole statistics", () -> {
- Statistics baseStats = new LifetimeStats(golfer);
- Statistics yearStats = getUserYear(baseStats);
- Statistics courseStats = getUserCourse(yearStats);
- Statistics roundStats = getUserRound(courseStats);
- Statistics holeStats = getUserHole(roundStats);
-
- System.out.printf("Total swings: %d\n", holeStats.get_score());
- System.out.printf("Total distance: %.1f\n", holeStats.get_distance());
- this.present();
- })
- );
+ List<MenuOption> opts = new java.util.ArrayList<>();
+
+ opts.add(new MenuOption("return to main menu", () -> new MainMenu().present()));
+
+ opts.add(new MenuOption("view lifetime statistics", () -> {
+ Statistics stats = new LifetimeStats(golfer);
+
+ System.out.printf("Total swings: %d\n", stats.get_score());
+ System.out.printf("Total distance: %.1f\n", stats.get_distance());
+ this.present();
+ }));
+
+ opts.add(new MenuOption("view yearly statistics", () -> {
+ Statistics baseStats = new LifetimeStats(golfer);
+ Statistics yearStats = getUserYear(baseStats);
+
+ System.out.printf("Total swings: %d\n", yearStats.get_score());
+ System.out.printf("Total distance: %.1f\n", yearStats.get_distance());
+ this.present();
+ }));
+
+ opts.add(new MenuOption("view course statistics", () -> {
+ Statistics baseStats = new LifetimeStats(golfer);
+ Statistics yearStats = getUserYear(baseStats);
+ Statistics courseStats = getUserCourse(yearStats);
+
+ System.out.printf("Total swings: %d\n", courseStats.get_score());
+ System.out.printf("Total distance: %.1f\n", courseStats.get_distance());
+ this.present();
+ }));
+
+ opts.add(new MenuOption("view round statistics", () -> {
+ Statistics baseStats = new LifetimeStats(golfer);
+ Statistics yearStats = getUserYear(baseStats);
+ Statistics courseStats = getUserCourse(yearStats);
+ Statistics roundStats = getUserRound(courseStats);
+
+ System.out.printf("Total swings: %d\n", roundStats.get_score());
+ System.out.printf("Total distance: %.1f\n", roundStats.get_distance());
+ this.present();
+ }));
+
+ opts.add(new MenuOption("view hole statistics", () -> {
+ Statistics baseStats = new LifetimeStats(golfer);
+ Statistics yearStats = getUserYear(baseStats);
+ Statistics courseStats = getUserCourse(yearStats);
+ Statistics roundStats = getUserRound(courseStats);
+ Statistics holeStats = getUserHole(roundStats);
+
+ System.out.printf("Total swings: %d\n", holeStats.get_score());
+ System.out.printf("Total distance: %.1f\n", holeStats.get_distance());
+ this.present();
+ }));
+
+ return opts;
}
// Helper classes to get user input and handle finding the data they requested (Course, Hole, Year, etc.)
@@ -86,8 +92,7 @@ public class StatisticsMenu extends Menu {
System.out.println("Enter year to search: ");
int year = Integer.parseInt(sc.nextLine());
- Statistics yearStats = new YearlyStats(baseStats, year);
- return yearStats;
+ return new YearlyStats(baseStats, year);
}
private Statistics getUserCourse(Statistics baseStats){