diff --git a/client/src/main/java/com/kritsit/casetracker/client/domain/services/IMenuService.java b/client/src/main/java/com/kritsit/casetracker/client/domain/services/IMenuService.java index f8310b3..e0660ce 100644 --- a/client/src/main/java/com/kritsit/casetracker/client/domain/services/IMenuService.java +++ b/client/src/main/java/com/kritsit/casetracker/client/domain/services/IMenuService.java @@ -4,6 +4,7 @@ public interface IMenuService { void changePasswordFrame(); int changePassword(String username, int currentHashedPass, int newHashedPass); void updateFrame(); + void aboutFrame(); void closeConnection(); void restart(); } diff --git a/client/src/main/java/com/kritsit/casetracker/client/domain/services/Menu.java b/client/src/main/java/com/kritsit/casetracker/client/domain/services/Menu.java index 1ce3d50..c1f82e3 100644 --- a/client/src/main/java/com/kritsit/casetracker/client/domain/services/Menu.java +++ b/client/src/main/java/com/kritsit/casetracker/client/domain/services/Menu.java @@ -93,6 +93,27 @@ public void updateFrame() { stage.showAndWait(); } + public void aboutFrame() { + BorderPane aboutFrame = null; + FXMLLoader fxmlLoader = new FXMLLoader(getClass() + .getResource("/ui/fxml/AboutFrame.fxml")); + fxmlLoader.setRoot(aboutFrame); + + try { + aboutFrame = (BorderPane) fxmlLoader.load(); + } catch(IOException e) { + logger.error("Error loading about frame.", e); + return; + } + + Scene scene = new Scene(aboutFrame); + Stage stage = new Stage(); + stage.setTitle("About CaseTracker"); + stage.setResizable(false); + stage.setScene(scene); + stage.showAndWait(); + } + public void closeConnection() { try { connectionService.close(); diff --git a/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/AdministratorController.java b/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/AdministratorController.java index 9fa93fa..229189e 100644 --- a/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/AdministratorController.java +++ b/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/AdministratorController.java @@ -152,6 +152,10 @@ public void initialize(){ exportItem.setOnAction(event->{ export(); }); + + aboutItem.setOnAction(event->{ + menuService.aboutFrame(); + }); } private void export() { diff --git a/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/EditorController.java b/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/EditorController.java index 2b82651..9597622 100644 --- a/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/EditorController.java +++ b/client/src/main/java/com/kritsit/casetracker/client/domain/ui/controller/EditorController.java @@ -155,7 +155,9 @@ public void initialize() { showHelpFrame(); }); - aboutItem.setDisable(true); + aboutItem.setOnAction(event->{ + menuService.aboutFrame(); + }); } private void showHelpFrame(){ diff --git a/client/src/main/resources/ui/fxml/AboutFrame.fxml b/client/src/main/resources/ui/fxml/AboutFrame.fxml new file mode 100644 index 0000000..e3a5fdb --- /dev/null +++ b/client/src/main/resources/ui/fxml/AboutFrame.fxml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +