import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
import javafx.scene.control.*;
import je.NumberField;
import javafx.scene.text.*;
import javafx.scene.text.Font;
import javafx.event.*;

/**
 *
 * Beschreibung
 *
 * @version 1.0 vom 06.11.2024
 * @author 
 */

public class BruttoNetto extends Application {
  // Anfang Attribute
  private NumberField gehaltField = new NumberField();
  private NumberField steuerField = new NumberField();
  private Label lEndGehalt = new Label();
  private Label lSteuer = new Label();
  private Button bRechnen = new Button();
  // Ende Attribute
  
  public void start(Stage primaryStage) { 
    Pane root = new Pane();
    Scene scene = new Scene(root, 268, 224);
    // Anfang Komponenten
    
    gehaltField.setLayoutX(8);
    gehaltField.setLayoutY(16);
    gehaltField.setPrefHeight(24);
    gehaltField.setPrefWidth(80);
    gehaltField.setFont(Font.font("Dialog", 11));
    gehaltField.setPromptText("Gehalt");
    gehaltField.setText("3000");
    root.getChildren().add(gehaltField);
    steuerField.setLayoutX(8);
    steuerField.setLayoutY(48);
    steuerField.setPrefHeight(24);
    steuerField.setPrefWidth(80);
    steuerField.setFont(Font.font("Dialog", 11));
    steuerField.setText("19.0");
    root.getChildren().add(steuerField);
    lEndGehalt.setLayoutX(120);
    lEndGehalt.setLayoutY(16);
    lEndGehalt.setPrefHeight(24);
    lEndGehalt.setPrefWidth(112);
    lEndGehalt.setText("End Gehalt: 0");
    lEndGehalt.setFont(Font.font("Dialog", 11));
    root.getChildren().add(lEndGehalt);
    lSteuer.setLayoutX(120);
    lSteuer.setLayoutY(48);
    lSteuer.setPrefHeight(24);
    lSteuer.setPrefWidth(112);
    lSteuer.setText("Steuer");
    lSteuer.setFont(Font.font("Dialog", 11));
    root.getChildren().add(lSteuer);
    bRechnen.setLayoutX(72);
    bRechnen.setLayoutY(96);
    bRechnen.setPrefHeight(24);
    bRechnen.setPrefWidth(80);
    bRechnen.setText("Rechnen");
    bRechnen.setOnAction(
    (event) -> {bRechnen_Action(event);} 
    );
    bRechnen.setFont(Font.font("Dialog", 11));
    root.getChildren().add(bRechnen);
    // Ende Komponenten
    
    primaryStage.setOnCloseRequest(e -> System.exit(0));
    primaryStage.setTitle("BruttoNetto");
    primaryStage.setScene(scene);
    primaryStage.show();
  } // end of public BruttoNetto
  
  // Anfang Methoden
  
  public static void main(String[] args) {
    launch(args);
  } // end of main
  
  public void bRechnen_Action(Event evt) {
    int gehalt = gehaltField.getInt();
    double steuer = steuerField.getDouble();
    steuer = steuer + 1;
    lEndGehalt.setText("End Gehalt: " + (gehalt/steuer)));
    lSteuer.setText("Steuer: " + ((double)gehalt * steuer ));       
    
  } // end of bRechnen_Action

  // Ende Methoden
} // end of class BruttoNetto
