From 91aff4f0933b9d0891a9978d4fba9d660c4b6cc2 Mon Sep 17 00:00:00 2001 From: = Date: Fri, 15 May 2026 10:27:07 +0200 Subject: [PATCH 01/12] Feat: Improved trade actions sections Added quantity buttons and buy / sell button in top section of dashboard view. Functionality not added yet. --- .../idatt2003/g40/mappe/engine/Exchange.java | 2 +- .../dashboard/DashBoardController.java | 4 +- .../view/widgets/dashboard/DashBoardView.java | 121 ++++++++++++++---- src/main/resources/styles.css | 59 +++++++-- 4 files changed, 148 insertions(+), 38 deletions(-) diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java index 88ca0b0..887fc27 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/engine/Exchange.java @@ -203,7 +203,6 @@ public Transaction sell(final Share share, final Player player) * Method for advancing time, increasing the amount of weeks. * */ public void advance() { - week.set(week.get() + 1); for (Stock stock : stockMap.values()) { BigDecimal currentPrice = stock.getSalesPrice(); @@ -213,6 +212,7 @@ public void advance() { BigDecimal newPrice = currentPrice.multiply(factor); stock.addNewSalesPrice(newPrice); } + week.set(week.get() + 1); } /** diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java index b6fe1bd..b2d94f7 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardController.java @@ -43,9 +43,7 @@ private void populateStockList() { for (Stock s : stockList) { Button stockBtn = getViewElement().createStockButton(s.getSymbol()); - getViewElement().setOnStockAction(stockBtn, s, selectedStock -> { - handleStockSelection(selectedStock); - }); + getViewElement().setOnStockAction(stockBtn, s, this::handleStockSelection); } } diff --git a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardView.java b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardView.java index 2710660..45ab0ff 100644 --- a/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardView.java +++ b/src/main/java/edu/ntnu/idi/idatt2003/g40/mappe/view/widgets/dashboard/DashBoardView.java @@ -9,6 +9,7 @@ import java.util.function.Consumer; import edu.ntnu.idi.idatt2003.g40.mappe.view.widgets.financialsummary.SummaryView; +import javafx.geometry.HPos; import javafx.geometry.Insets; import javafx.geometry.Pos; import javafx.scene.chart.LineChart; @@ -18,26 +19,24 @@ import javafx.scene.control.Label; import javafx.scene.control.ScrollPane; import javafx.scene.control.TextField; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.layout.VBox; +import javafx.scene.layout.*; public class DashBoardView extends ViewElement { private LineChart chart; private XYChart.Series dataSeries; private VBox sidebar; - private ArrayList