Files
WS-06-intro-to-javafx/src/main/java/workshop/Controller.java
T
2026-05-17 22:38:58 +04:30

73 lines
2.3 KiB
Java

package workshop;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.Label;
import javafx.scene.control.Button;
public class Controller {
@FXML private Label basePrise;
private int price = 12;
@FXML private Label titleLabel;
@FXML private Button themeToggle;
private boolean isDark = true;
// TODO: (Optional) Create initialize function and use it to set prices during runtime.
@FXML
public void initialize()
{
basePrise.setText("$" + price + " / month");
}
@FXML
private void buyBasic() {
// TODO: Call showAlert() with a message indicating the user entered the payment gateway
price++;
basePrise.setText("$" + price + " / month");
showAlert("Basic plan selected.", Alert.AlertType.INFORMATION);
}
@FXML
private void buyPro() {
// TODO: Call showAlert() with a message indicating the user entered the payment gateway
showAlert("Pro plan selected.", Alert.AlertType.INFORMATION);
}
@FXML
private void buyEnterprise() {
// TODO: Call showAlert() with a message indicating the user entered the payment gateway
showAlert("Enterprise plan selected.", Alert.AlertType.INFORMATION);
}
@FXML
private void toggleTheme() {
isDark = !isDark;
themeToggle.getScene().getStylesheets().clear();
if(isDark)
{
themeToggle.getScene().getStylesheets().add(getClass().getResource("style.css").toExternalForm());
themeToggle.setText("Switch to Light Mode");
}
else
{
themeToggle.getScene().getStylesheets().add(getClass().getResource("light.css").toExternalForm());
themeToggle.setText("Switch to Dark Mode");
}
// TODO: Toggle the isDark flag. If dark, switch to style.css and set button text to "Switch to Light Mode"
// TODO: If light, switch to light.css and set button text to "Switch to Dark Mode"
}
private void showAlert(String message, Alert.AlertType alertType) {
// TODO: Create a new Alert of type INFORMATION with the given message and display it
Alert alert = new Alert(alertType);
alert.setTitle("Alert");
alert.setHeaderText("Header");
alert.setContentText(message);
alert.show();
}
}