Skip to content

Commit

Permalink
refactor
Browse files Browse the repository at this point in the history
  • Loading branch information
andsam0 committed Feb 16, 2024
1 parent 6cb7a76 commit 8fc30a1
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 36 deletions.
2 changes: 1 addition & 1 deletion src/main/java/it/unibo/view/CurrentPlayerView.java
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ private Button getEndTurnButton() {
final Button endTurnButton = new Button("End turn");
endTurnButton.setOnAction(e -> {
if (controller.canEndTurn()) {
controller.getTurnController().endTurn();
controller.endTurn();
roll1.setVisible(false);
roll2.setVisible(false);
draw();
Expand Down
16 changes: 16 additions & 0 deletions src/main/java/it/unibo/view/ResourcesViewFactory.java
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
package it.unibo.view;

import java.util.Locale;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

import it.unibo.common.api.tile.ResourceType;
import javafx.beans.value.ChangeListener;
import javafx.geometry.Pos;
import javafx.scene.control.Alert;
import javafx.scene.control.Label;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.ComboBox;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.VBox;
Expand Down Expand Up @@ -52,6 +56,18 @@ public static VBox getResourceLabelAmount(final ResourceType resource, final int
return resourceAndAmount;
}

public static VBox resourceAndComboBox(final ResourceType resource, final int amount,
final ChangeListener<Integer> listener) {
final VBox resourceBox = new VBox();
resourceBox.getChildren().add(ResourcesViewFactory.generateResource(resource));
final ComboBox<Integer> comboBox = new ComboBox<>();
comboBox.getItems().addAll(IntStream.range(0, amount + 1).boxed().collect(Collectors.toList()));
comboBox.getSelectionModel().selectFirst();
comboBox.getSelectionModel().selectedItemProperty().addListener(listener);
resourceBox.getChildren().add(comboBox);
return resourceBox;
}

public static Alert getAlert(final String text) {
final Alert alert = new Alert(AlertType.CONFIRMATION);
alert.setHeaderText(text);
Expand Down
18 changes: 1 addition & 17 deletions src/main/java/it/unibo/view/RobberView.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,12 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.stream.Stream;

import it.unibo.common.api.tile.ResourceType;
import it.unibo.controller.api.MainController;
import javafx.beans.value.ChangeListener;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.control.Label;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
Expand Down Expand Up @@ -64,7 +60,7 @@ private void showDiscardStage(final String player) {

reloadConfirmButton.run();
Stream.of(ResourceType.values()).forEach(resource -> {
discardResourcesBox.getChildren().add(resourceAndComboBox(resource,
discardResourcesBox.getChildren().add(ResourcesViewFactory.resourceAndComboBox(resource,
controller.getResourceController().getPlayerResources(player).get(resource),
(options, oldValue, newValue) -> {
discardResources.put(resource, newValue);
Expand Down Expand Up @@ -93,16 +89,4 @@ private void showDiscardStage(final String player) {
stage.setResizable(false);
stage.show();
}

private VBox resourceAndComboBox(final ResourceType resource, final int amount,
final ChangeListener<Integer> listener) {
final VBox resourceBox = new VBox();
resourceBox.getChildren().add(ResourcesViewFactory.generateResource(resource));
final ComboBox<Integer> comboBox = new ComboBox<>();
comboBox.getItems().addAll(IntStream.range(0, amount + 1).boxed().collect(Collectors.toList()));
comboBox.getSelectionModel().selectFirst();
comboBox.getSelectionModel().selectedItemProperty().addListener(listener);
resourceBox.getChildren().add(comboBox);
return resourceBox;
}
}
20 changes: 2 additions & 18 deletions src/main/java/it/unibo/view/TradeView.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,12 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
import java.util.stream.Stream;

import it.unibo.common.api.tile.ResourceType;
import it.unibo.controller.api.MainController;
import javafx.beans.value.ChangeListener;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.control.Label;

import javafx.scene.layout.HBox;
Expand Down Expand Up @@ -90,13 +86,13 @@ private void showTradeStage() {
reloadBankTradeButton.run();
buttonToAction.forEach((button, action) -> action.run());
Stream.of(ResourceType.values()).forEach(resource -> {
proposedResourcesBox.getChildren().add(resourceAndComboBox(resource,
proposedResourcesBox.getChildren().add(ResourcesViewFactory.resourceAndComboBox(resource,
controller.getResourceController().getPlayerResources(controller.getCurrentPlayer()).get(resource),
(options, oldValue, newValue) -> {
proposedResources.put(resource, newValue);
reloadBankTradeButton.run();
}));
wantedResourcesBox.getChildren().add(resourceAndComboBox(resource,
wantedResourcesBox.getChildren().add(ResourcesViewFactory.resourceAndComboBox(resource,
defaultWantedResources, (options, oldValue, newValue) -> {
wantedResources.put(resource, newValue);
buttonToAction.forEach((button, action) -> action.run());
Expand Down Expand Up @@ -134,18 +130,6 @@ private void showTradeStage() {
stage.show();
}

private VBox resourceAndComboBox(final ResourceType resource, final int amount,
final ChangeListener<Integer> listener) {
final VBox resourceBox = new VBox();
resourceBox.getChildren().add(ResourcesViewFactory.generateResource(resource));
final ComboBox<Integer> comboBox = new ComboBox<>();
comboBox.getItems().addAll(IntStream.range(0, amount + 1).boxed().collect(Collectors.toList()));
comboBox.getSelectionModel().selectFirst();
comboBox.getSelectionModel().selectedItemProperty().addListener(listener);
resourceBox.getChildren().add(comboBox);
return resourceBox;
}

private Runnable setTradePlayerButton(final Button button, final String playerName,
final Map<ResourceType, Integer> proposedResources,
final Map<ResourceType, Integer> wantedResources) {
Expand Down

0 comments on commit 8fc30a1

Please sign in to comment.