From d7d92fd98d4099e4cca321644fcd1f5c218fc65a Mon Sep 17 00:00:00 2001 From: pawelsa Date: Mon, 25 May 2026 19:37:02 +0200 Subject: [PATCH] feat(Stock MVC): 'Sell in portfolio' button functionality --- .../idatt/view/primary/stock/StockController.java | 12 ++++++++++++ .../ntnu/idi/idatt/view/primary/stock/StockView.java | 3 ++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockController.java b/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockController.java index 62a4556..cfd7b42 100644 --- a/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockController.java +++ b/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockController.java @@ -8,6 +8,8 @@ import edu.ntnu.idi.idatt.model.transaction.Purchase; import edu.ntnu.idi.idatt.service.transaction.PurchaseCalculator; import edu.ntnu.idi.idatt.session.UserSession; +import edu.ntnu.idi.idatt.view.SceneFactory; +import edu.ntnu.idi.idatt.view.SceneManager; import edu.ntnu.idi.idatt.view.components.AbstractController; import edu.ntnu.idi.idatt.view.components.elements.RecieptComponent; import edu.ntnu.idi.idatt.view.components.ui.UIAlert; @@ -169,6 +171,16 @@ public void buyButtonClicked() { showReciept(purchase); } + /** + * Method to execute on portfolio button clicked. + *

+ * Navigates to portfolio with this stock as deafult search. + *

+ */ + public void portfolioButtonClicked() { + SceneManager.switchTo(SceneFactory.createPortfolioView(getSymbol())); + } + /** * Method for showing transaction reciept. * diff --git a/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockView.java b/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockView.java index 950808f..b1378bf 100644 --- a/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockView.java +++ b/src/main/java/edu/ntnu/idi/idatt/view/primary/stock/StockView.java @@ -77,7 +77,7 @@ public Parent createNavigation() { List.of( "Home", " • Newspaper"), - () -> SceneManager.switchTo(SceneFactory.createExchangeView(false)), + () -> SceneManager.switchTo(SceneFactory.createExchangeView(true)), () -> SceneManager.switchTo(SceneFactory.createNewspaperView(stockSymbol))); } @@ -188,6 +188,7 @@ public void setController(StockController controller) { title.setText(controller.getSymbol()); stockSymbol = controller.getSymbol(); tradeSection.getBuyButton().setOnAction((e) -> controller.buyButtonClicked()); + tradeSection.getPortfolioButton().setOnAction((e) -> controller.portfolioButtonClicked()); } }