diff --git a/bin/.gitignore b/bin/.gitignore index c525beb..9a0bb19 100644 --- a/bin/.gitignore +++ b/bin/.gitignore @@ -1,3 +1,4 @@ /application/ /cloudControllerInstances/ /datatypes/ +/UIElements/ diff --git a/bin/application/MainWindowController$1.class b/bin/application/MainWindowController$1.class index 657b563..1fa8041 100644 Binary files a/bin/application/MainWindowController$1.class and b/bin/application/MainWindowController$1.class differ diff --git a/bin/application/MainWindowController$10.class b/bin/application/MainWindowController$10.class index 42a7f19..9973eec 100644 Binary files a/bin/application/MainWindowController$10.class and b/bin/application/MainWindowController$10.class differ diff --git a/bin/application/MainWindowController$11.class b/bin/application/MainWindowController$11.class index 95ab54e..2215b8d 100644 Binary files a/bin/application/MainWindowController$11.class and b/bin/application/MainWindowController$11.class differ diff --git a/bin/application/MainWindowController$12.class b/bin/application/MainWindowController$12.class index 50ac6b3..1f4bf2b 100644 Binary files a/bin/application/MainWindowController$12.class and b/bin/application/MainWindowController$12.class differ diff --git a/bin/application/MainWindowController$2.class b/bin/application/MainWindowController$2.class index 3fb586c..7fddedc 100644 Binary files a/bin/application/MainWindowController$2.class and b/bin/application/MainWindowController$2.class differ diff --git a/bin/application/MainWindowController$3.class b/bin/application/MainWindowController$3.class index 1be9464..d21053b 100644 Binary files a/bin/application/MainWindowController$3.class and b/bin/application/MainWindowController$3.class differ diff --git a/bin/application/MainWindowController$4.class b/bin/application/MainWindowController$4.class index 391eec4..0a34b68 100644 Binary files a/bin/application/MainWindowController$4.class and b/bin/application/MainWindowController$4.class differ diff --git a/bin/application/MainWindowController$5.class b/bin/application/MainWindowController$5.class index d9d3d21..b4cf2e5 100644 Binary files a/bin/application/MainWindowController$5.class and b/bin/application/MainWindowController$5.class differ diff --git a/bin/application/MainWindowController$6.class b/bin/application/MainWindowController$6.class index 787f90d..1a5b672 100644 Binary files a/bin/application/MainWindowController$6.class and b/bin/application/MainWindowController$6.class differ diff --git a/bin/application/MainWindowController$7.class b/bin/application/MainWindowController$7.class index 058c406..b669139 100644 Binary files a/bin/application/MainWindowController$7.class and b/bin/application/MainWindowController$7.class differ diff --git a/bin/application/MainWindowController$8.class b/bin/application/MainWindowController$8.class index 8281739..0344e7a 100644 Binary files a/bin/application/MainWindowController$8.class and b/bin/application/MainWindowController$8.class differ diff --git a/bin/application/MainWindowController$9.class b/bin/application/MainWindowController$9.class index 56e7b23..3ec4eb1 100644 Binary files a/bin/application/MainWindowController$9.class and b/bin/application/MainWindowController$9.class differ diff --git a/bin/application/MainWindowController.class b/bin/application/MainWindowController.class index 7a69b52..70ce78f 100644 Binary files a/bin/application/MainWindowController.class and b/bin/application/MainWindowController.class differ diff --git a/src/UIElements/JFXInfoDialog.java b/src/UIElements/JFXInfoDialog.java new file mode 100644 index 0000000..619dc0c --- /dev/null +++ b/src/UIElements/JFXInfoDialog.java @@ -0,0 +1,56 @@ +package UIElements; + +import com.jfoenix.controls.JFXButton; +import com.jfoenix.controls.JFXDialog; +import com.jfoenix.controls.JFXDialogLayout; + +import javafx.event.ActionEvent; +import javafx.event.EventHandler; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.Pane; +import javafx.scene.layout.StackPane; +import javafx.scene.text.Text; + +public class JFXInfoDialog { + + private String headingText; + private String bodyText; + private String dialogBtnStyle; + private int dialogWidth; + private int dialogHeigh; + private Pane pane; + + public JFXInfoDialog(String headingText, String bodyText, String dialogBtnStyle, int dialogWidth, int dialogHeigh, Pane pane) { + this.headingText = headingText; + this.bodyText = bodyText; + this.dialogBtnStyle = dialogBtnStyle; + this.dialogWidth = dialogWidth; + this.dialogHeigh = dialogHeigh; + this.pane = pane; + } + + public void show() { + JFXDialogLayout content = new JFXDialogLayout(); + content.setHeading(new Text(headingText)); + content.setBody(new Text(bodyText)); + content.setPrefSize(dialogWidth, dialogHeigh); + StackPane stackPane = new StackPane(); + stackPane.autosize(); + JFXDialog dialog = new JFXDialog(stackPane, content, JFXDialog.DialogTransition.LEFT, true); + JFXButton button = new JFXButton("Okay"); + button.setOnAction(new EventHandler() { + @Override + public void handle(ActionEvent event) { + dialog.close(); + } + }); + button.setButtonType(com.jfoenix.controls.JFXButton.ButtonType.RAISED); + button.setPrefHeight(32); + button.setStyle(dialogBtnStyle); + content.setActions(button); + pane.getChildren().add(stackPane); + AnchorPane.setTopAnchor(stackPane, (pane.getHeight() - content.getPrefHeight()) / 2); + AnchorPane.setLeftAnchor(stackPane, (pane.getWidth() - content.getPrefWidth()) / 2); + dialog.show(); + } +} diff --git a/src/application/MainWindowController.java b/src/application/MainWindowController.java index c786756..1d55d73 100644 --- a/src/application/MainWindowController.java +++ b/src/application/MainWindowController.java @@ -62,6 +62,7 @@ import com.jfoenix.controls.JFXTreeTableColumn; import com.jfoenix.controls.JFXTreeTableView; import com.jfoenix.transitions.hamburger.HamburgerBackArrowBasicTransition; +import UIElements.JFXInfoDialog; import datatypes.CourseTableDataType; import datatypes.SmmdbApiDataType; import datatypes.UIROMDataType; @@ -732,29 +733,13 @@ public class MainWindowController { } @FXML - void aboutBtnAction(){ - JFXDialogLayout content= new JFXDialogLayout(); - content.setHeading(new Text("cemu_UI")); - content.setBody(new Text("cemu_UI by @Seil0 \nVersion: "+version+" ("+buildNumber+") \""+versionName+"\" \nThis Application is made with free Software\nwww.kellerkinder.xyz")); - content.setPrefSize(350, 170); - StackPane stackPane = new StackPane(); - stackPane.autosize(); - JFXDialog dialog =new JFXDialog(stackPane, content, JFXDialog.DialogTransition.LEFT, true); - JFXButton button=new JFXButton("Okay"); - button.setOnAction(new EventHandler(){ - @Override - public void handle(ActionEvent event){ - dialog.close(); - } - }); - button.setButtonType(com.jfoenix.controls.JFXButton.ButtonType.RAISED); - button.setPrefHeight(32); - button.setStyle(dialogBtnStyle); - content.setActions(button); - main.pane.getChildren().add(stackPane); - AnchorPane.setTopAnchor(stackPane, (main.pane.getHeight()-content.getPrefHeight())/2); - AnchorPane.setLeftAnchor(stackPane, (main.pane.getWidth()-content.getPrefWidth())/2); - dialog.show(); + void aboutBtnAction(){ + String headingText = "cemu_UI"; + String bodyText = "cemu_UI by @Seil0 \nVersion: " + version + " (" + buildNumber + ") \"" + versionName + "\" \n" + + "This Application is made with free Software\n" + + "www.kellerkinder.xyz"; + JFXInfoDialog aboutDialog = new JFXInfoDialog(headingText, bodyText, dialogBtnStyle, 350, 170, main.pane); + aboutDialog.show(); } @FXML