From ab48e726af81ab12de3d3433de5358efea64b160 Mon Sep 17 00:00:00 2001 From: Nathan Christopher McRae Date: Tue, 8 Apr 2025 21:12:33 -0700 Subject: [PATCH] Add basic help page lsafej --- pom.xml | 5 ++++ .../numbersstation/HelpController.java | 21 +++++++++++++++ .../numbersstation/MainController.java | 22 +++++++++++++++ src/main/resources/HelpView.fxml | 6 +++++ src/main/resources/MainView.fxml | 2 +- src/main/resources/help-index.html | 25 ++++++++++++++++++ src/main/resources/overview.png | Bin 0 -> 46997 bytes 7 files changed, 80 insertions(+), 1 deletion(-) create mode 100644 src/main/java/name/nathanmcrae/numbersstation/HelpController.java create mode 100644 src/main/resources/HelpView.fxml create mode 100644 src/main/resources/help-index.html create mode 100644 src/main/resources/overview.png diff --git a/pom.xml b/pom.xml index 23630c4..18b98dd 100644 --- a/pom.xml +++ b/pom.xml @@ -57,6 +57,11 @@ javafx-controls ${javafx.version} + + org.openjfx + javafx-web + ${javafx.version} + org.openjfx javafx-fxml diff --git a/src/main/java/name/nathanmcrae/numbersstation/HelpController.java b/src/main/java/name/nathanmcrae/numbersstation/HelpController.java new file mode 100644 index 0000000..296fc1a --- /dev/null +++ b/src/main/java/name/nathanmcrae/numbersstation/HelpController.java @@ -0,0 +1,21 @@ +package name.nathanmcrae.numbersstation; + +import java.util.logging.Logger; +import javafx.fxml.FXML; +import javafx.scene.web.WebView; +import javafx.stage.Stage; + +public class HelpController { + private static final Logger logger = Logger.getLogger(Main.class.getName()); + + @FXML + WebView webView; + + @FXML + public void initialize() throws Exception { + logger.info("20250407T222451"); + String url = HelpController.class.getResource("/help-index.html").toExternalForm(); + webView.getEngine().load(url); + logger.info("20250407T222456"); + } +} diff --git a/src/main/java/name/nathanmcrae/numbersstation/MainController.java b/src/main/java/name/nathanmcrae/numbersstation/MainController.java index 2b16529..ce6aaa8 100644 --- a/src/main/java/name/nathanmcrae/numbersstation/MainController.java +++ b/src/main/java/name/nathanmcrae/numbersstation/MainController.java @@ -40,6 +40,7 @@ import javafx.stage.Stage; public class MainController implements Initializable { private static final Logger logger = Logger.getLogger(Main.class.getName()); + private Stage helpStage; private Stage settingsStage; private Stage selectStationStage; private MainSettings settings; @@ -373,4 +374,25 @@ public class MainController implements Initializable { return true; } + + public void handleHelpButtonPress() { + try { + if (helpStage == null) { + FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/HelpView.fxml")); + Parent root = fxmlLoader.load(); + helpStage = new Stage(); + helpStage.setTitle("Numbers Station Help"); + helpStage.getIcons().add(new Image(getClass().getResourceAsStream("/icon.png"))); + helpStage.setScene(new Scene(root)); + } + + if (helpStage.isShowing()) { + helpStage.toFront(); + } else { + helpStage.show(); + } + } catch (IOException e) { + logger.log(Level.SEVERE, "Exception while opening help", e); + } + } } diff --git a/src/main/resources/HelpView.fxml b/src/main/resources/HelpView.fxml new file mode 100644 index 0000000..113c1a9 --- /dev/null +++ b/src/main/resources/HelpView.fxml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/main/resources/MainView.fxml b/src/main/resources/MainView.fxml index bab5aab..90b5ec4 100644 --- a/src/main/resources/MainView.fxml +++ b/src/main/resources/MainView.fxml @@ -66,7 +66,7 @@