aboutsummaryrefslogtreecommitdiff
path: root/src/gui/Leaderboard.java
diff options
context:
space:
mode:
authorsowgro <tpoke.ferrari@gmail.com>2024-07-08 02:41:31 -0400
committersowgro <tpoke.ferrari@gmail.com>2024-07-08 02:41:31 -0400
commitee2229339429d50afa33e2f8b9c0ee0939766290 (patch)
treea5ee54bd23c24950e9b10815f3e87605906992d8 /src/gui/Leaderboard.java
parent9e1371424bdf4c31d756d686313730d4c61f7ac5 (diff)
downloadNPEhero-ee2229339429d50afa33e2f8b9c0ee0939766290.tar.gz
NPEhero-ee2229339429d50afa33e2f8b9c0ee0939766290.tar.bz2
NPEhero-ee2229339429d50afa33e2f8b9c0ee0939766290.zip
Change project structure, embed resources into jar and remove libraries from source control
Diffstat (limited to 'src/gui/Leaderboard.java')
-rw-r--r--src/gui/Leaderboard.java71
1 files changed, 0 insertions, 71 deletions
diff --git a/src/gui/Leaderboard.java b/src/gui/Leaderboard.java
deleted file mode 100644
index 39df409..0000000
--- a/src/gui/Leaderboard.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package gui;
-
-import javafx.geometry.Pos;
-import javafx.scene.control.Button;
-import javafx.scene.control.TableColumn;
-import javafx.scene.control.TableView;
-import javafx.scene.control.TableColumn.SortType;
-import javafx.scene.control.cell.PropertyValueFactory;
-import javafx.scene.layout.HBox;
-import javafx.scene.layout.Pane;
-import javafx.scene.layout.VBox;
-import main.Difficulty;
-import main.LeaderboardEntry;
-import main.Level;
-
-public class Leaderboard extends Pane
-{
- /*
- * this class is a layout class, most of its purpose is to place UI elements like Buttons within Panes like VBoxes.
- * the creation of these UI elements are mostly not commented due to their repetitive and self explanatory nature.
- * style classes are defined in the style.css file.
- */
- public Leaderboard(Level level, Difficulty diff, Pane prev)
- {
- //sets up table view: requires java bean getters, setters and constructors to work
- TableView<LeaderboardEntry> scores = new TableView<LeaderboardEntry>();
-
- TableColumn<LeaderboardEntry, String> nameCol = new TableColumn<LeaderboardEntry, String>("Name");
- TableColumn<LeaderboardEntry, String> scoreCol = new TableColumn<LeaderboardEntry, String>("Score");
- TableColumn<LeaderboardEntry, String> dateCol = new TableColumn<LeaderboardEntry, String>("Date");
-
- scores.getColumns().add(nameCol);
- scores.getColumns().add(scoreCol);
- scores.getColumns().add(dateCol);
-
- nameCol.setCellValueFactory(new PropertyValueFactory<LeaderboardEntry, String>("name"));
- scoreCol.setCellValueFactory(new PropertyValueFactory<LeaderboardEntry, String>("score"));
- dateCol.setCellValueFactory(new PropertyValueFactory<LeaderboardEntry, String>("date"));
-
- scores.setItems(diff.getLeaderboard());
-
- scores.getStyleClass().add("unselectable");
-
- scores.prefWidthProperty().bind(super.prefWidthProperty().multiply(0.25));
- scores.prefHeightProperty().bind(super.prefHeightProperty().multiply(0.75));
-
- scoreCol.setSortType(SortType.DESCENDING);
- scores.getSortOrder().add(scoreCol);
-
- Button exit = new Button();
- exit.setText("Back");
- exit.setOnAction(e -> {
- Driver.soundController.playSfx("backward");
- Driver.setMenu(prev);
- });
-
- VBox centerBox = new VBox();
- centerBox.setAlignment(Pos.CENTER);
- centerBox.setSpacing(10);
- centerBox.getChildren().addAll(scores,exit);
- centerBox.setMinWidth(400);
-
- HBox rootBox = new HBox();
- rootBox.prefWidthProperty().bind(super.prefWidthProperty());
- rootBox.prefHeightProperty().bind(super.prefHeightProperty());
- rootBox.getChildren().add(centerBox);
- rootBox.setAlignment(Pos.CENTER);
-
- super.getChildren().add(rootBox);
- }
-}