diff --git a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java index 4b18637..2b39986 100644 --- a/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java +++ b/src/main/java/ch/unibas/dmi/dbis/cs108/multiplayer/client/gui/lounge/LoungeSceneViewController.java @@ -156,82 +156,6 @@ public class LoungeSceneViewController implements Initializable { bgAnimationView.setFitHeight(1950); bgAnimationView.setFitWidth(6667.968); - ClientListView.setItems(clients); - ClientListView.setCellFactory(param -> { - ListCell cell = new ListCell<>() { - Label name = new Label(); - Label id = new Label(); - HBox nameAndId = new HBox(name, id); - - { - nameAndId.setAlignment(Pos.CENTER_LEFT); - } - - /** - * The updateItem method should not be called by developers, but it is the - * best method for developers to override to allow for them to customise the - * visuals of the cell. To clarify, developers should never call this method - * in their code (they should leave it up to the UI control, such as the - * {@link ListView} control) to call this method. However, the purpose of - * having the updateItem method is so that developers, when specifying - * custom cell factories (again, like the ListView {@link - * ListView#cellFactoryProperty() cell factory}), the updateItem method can - * be overridden to allow for complete customisation of the cell. - * - *

It is very important that subclasses - * of Cell override the updateItem method properly, as failure to do so will - * lead to issues such as blank cells or cells with unexpected content - * appearing within them. Here is an example of how to properly override the - * updateItem method: - * - *

-         * protected void updateItem(T item, boolean empty) {
-         *     super.updateItem(item, empty);
-         *
-         *     if (empty || item == null) {
-         *         setText(null);
-         *         setGraphic(null);
-         *     } else {
-         *         setText(item.toString());
-         *     }
-         * }
-         * 
- * - *

Note in this code sample two important points: - *

    - *
  1. We call the super.updateItem(T, boolean) method. If this is not - * done, the item and empty properties are not correctly set, and you are - * likely to end up with graphical issues.
  2. - *
  3. We test for the empty condition, and if true, we - * set the text and graphic properties to null. If we do not do this, - * it is almost guaranteed that end users will see graphical artifacts - * in cells unexpectedly.
  4. - *
- * @param item The new item for the cell. - * - * @param empty whether or not this cell represents data from the list. If - * it is empty, then it does not represent any domain data, but - * is a cell - */ - @Override - protected void updateItem(ClientListItem item, boolean empty) { - super.updateItem(item, empty); - if (empty) { - setText(null); - setGraphic(null); - } else { - LOGGER.debug("In updateItem(item, empty) Method. Else branch -> nonnull item"); - name.setText(item.getName()); - name.setTextFill(Color.BLACK); - id.setText(String.valueOf(item.getId())); - id.setTextFill(Color.BLACK); - setGraphic(nameAndId); - } - } - }; - return cell; - }); - LobbyListView.setItems(lobbies); LOGGER.debug("In Initialize 2 LobbyListView" + LobbyListView); LobbyListView.setCellFactory(param -> { @@ -248,7 +172,7 @@ public class LoungeSceneViewController implements Initializable { { head.setAlignment(Pos.CENTER_LEFT); head.setSpacing(5); - playerList.setAlignment(Pos.CENTER_LEFT); + playerList.setAlignment(Pos.CENTER_LEFT); headParent.setCollapsible(true); }