From 06edeec70b59357657fab0da144e79a96671c749 Mon Sep 17 00:00:00 2001 From: Kostya Date: Tue, 18 Aug 2026 07:37:50 +0000 Subject: Fix menu wording and reprint prompt on retry Rename "option"/"but order" wording to "market"/"buy order", add a blank line before the command prompt, and reprint the prompt text on readInt() retries instead of leaving the user without context. --- ui-console/src/main/java/market/guess/ui/console/Menu.java | 1 + .../java/market/guess/ui/console/command/PlaceOrderMenuCommand.java | 2 +- .../java/market/guess/ui/console/command/SettleEventMenuCommand.java | 4 ++-- .../src/main/java/market/guess/ui/console/io/InputProcessor.java | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) (limited to 'ui-console/src/main') diff --git a/ui-console/src/main/java/market/guess/ui/console/Menu.java b/ui-console/src/main/java/market/guess/ui/console/Menu.java index 9041590..b18d6fb 100644 --- a/ui-console/src/main/java/market/guess/ui/console/Menu.java +++ b/ui-console/src/main/java/market/guess/ui/console/Menu.java @@ -26,6 +26,7 @@ public final class Menu implements Startable { for (var command : commands) { io.println(" [%d]->> %s".formatted(command.getIndex(), command.getName())); } + io.newLine(); var selection = io.readInt("Choose a command: ", 1, max); var commandOptional = commands.stream().filter(c -> c.getIndex() == selection).findFirst(); diff --git a/ui-console/src/main/java/market/guess/ui/console/command/PlaceOrderMenuCommand.java b/ui-console/src/main/java/market/guess/ui/console/command/PlaceOrderMenuCommand.java index 6c2e674..a03f757 100644 --- a/ui-console/src/main/java/market/guess/ui/console/command/PlaceOrderMenuCommand.java +++ b/ui-console/src/main/java/market/guess/ui/console/command/PlaceOrderMenuCommand.java @@ -26,7 +26,7 @@ public final class PlaceOrderMenuCommand implements MenuCommand { @Override public String getName() { - return "Create a but order on an event"; + return "Place a buy order on an event"; } @Override diff --git a/ui-console/src/main/java/market/guess/ui/console/command/SettleEventMenuCommand.java b/ui-console/src/main/java/market/guess/ui/console/command/SettleEventMenuCommand.java index 8cc7b02..3ab28a7 100644 --- a/ui-console/src/main/java/market/guess/ui/console/command/SettleEventMenuCommand.java +++ b/ui-console/src/main/java/market/guess/ui/console/command/SettleEventMenuCommand.java @@ -56,12 +56,12 @@ public final class SettleEventMenuCommand implements MenuCommand { io.printState(event.state()); var winner = - io.readSelect("Which option won? ", event.state().markets(), o -> "%s".formatted(o.name())); + io.readSelect("Which market won? ", event.state().markets(), o -> "%s".formatted(o.name())); var settleResult = context.settleEvent("Tester", event.summary().key(), winner.key()); if (settleResult.isSuccess()) { io.newLine(); - io.println("Settled. Winning option: %s".formatted(settleResult.getData().winningOption())); + io.println("Settled. Winning market: %s".formatted(settleResult.getData().winningOption())); return; } io.newLine(); diff --git a/ui-console/src/main/java/market/guess/ui/console/io/InputProcessor.java b/ui-console/src/main/java/market/guess/ui/console/io/InputProcessor.java index 512fdfe..721cf8b 100644 --- a/ui-console/src/main/java/market/guess/ui/console/io/InputProcessor.java +++ b/ui-console/src/main/java/market/guess/ui/console/io/InputProcessor.java @@ -73,7 +73,7 @@ public final class InputProcessor { public int readInt(String prompt, int min, int max) { while (true) { - var raw = nextLine(); + var raw = readLine(prompt); if (raw.isBlank()) { println("Please enter a number between %d and %d.".formatted(min, max)); continue; -- cgit v1.2.3