package workshop; import javafx.fxml.FXML; import javafx.scene.control.Alert; import javafx.scene.control.ButtonType; import javafx.scene.control.Label; import javafx.scene.control.Button; public class Controller { @FXML private Label BasicPriceLabel; @FXML private Label ProPriceLabel; @FXML private Label titleLabel; @FXML private Button themeToggle; private boolean isDark = true; @FXML private void initialize() { BasicPriceLabel.setText("$12.99 / month"); ProPriceLabel.setText("$21.99 / month"); } @FXML private void updatePrice(Label label) { String text = label.getText(); String[] parts = text.replace("$", "").split("/"); double price = Double.parseDouble(parts[0].trim()); price = price + 1; label.setText("$" + price + " / month"); } @FXML private void buyBasic() { showAlert("Basic plan selected"); updatePrice(BasicPriceLabel); } @FXML private void buyPro() { showAlert("Pro plan selected"); updatePrice(ProPriceLabel); } @FXML private void buyEnterprise() { showAlert("Enterprise plan selected"); } @FXML private void toggleTheme() { isDark = !isDark; var scene = themeToggle.getScene(); scene.getStylesheets().clear(); if (isDark) { var css = getClass().getResource("style.css"); if (css != null) { scene.getStylesheets().add(css.toExternalForm()); } themeToggle.setText("Switch to Light Mode"); } else { var css = getClass().getResource("light.css"); if (css != null) { scene.getStylesheets().add(css.toExternalForm()); } themeToggle.setText("Switch to Dark Mode"); } } private void showAlert(String message) { Alert alert = new Alert(Alert.AlertType.INFORMATION, message, new ButtonType("ok")); alert.show(); } }