Skip to content
Snippets Groups Projects
Main.java 1.63 KiB
Newer Older
  • Learn to ignore specific revisions
  • Administrator's avatar
    Administrator committed
    package userInterface;
    
    import javafx.application.Application;
    import javafx.event.EventHandler;
    import javafx.fxml.FXMLLoader;
    import javafx.scene.Parent;
    import javafx.scene.Scene;
    import javafx.scene.control.Alert.AlertType;
    import javafx.scene.image.Image;
    import javafx.stage.Stage;
    import javafx.stage.WindowEvent;
    
    import tools.AlertGenerator;
    
    Administrator's avatar
    Administrator committed
    
    
    public class Main extends Application
    {
    	@Override
    	public void start(Stage stage)
    	{
    		try
    
    Robert Goldmann's avatar
    Robert Goldmann committed
    		{			
    
    Administrator's avatar
    Administrator committed
    			FXMLLoader loader = new FXMLLoader(getClass().getResource("userInterface.fxml"));
    			Parent root = (Parent)loader.load();
    
    			Scene scene = new Scene(root, 800, 800);
    
    			stage.setResizable(false);
    			stage.setTitle("SmartTime");
    			stage.setScene(scene);
    			
    
    			UserInterfaceController controller = (UserInterfaceController)loader.getController();			
    			controller.init(stage);
    
    Administrator's avatar
    Administrator committed
    
    			stage.getIcons().add(new Image("/userInterface/icon.png"));
    			stage.show();
    
    
    			// fängt die Aufforderung das Fenster zu schließen ab, um vorher
    			// noch eine Prüfung duchzuführen
    
    Administrator's avatar
    Administrator committed
    			stage.setOnCloseRequest(new EventHandler<WindowEvent>()
    			{
    				public void handle(WindowEvent we)
    				{
    
    					if(controller.stoppUhrLäuftFlag == true)
    
    Administrator's avatar
    Administrator committed
    					{
    
    						AlertGenerator.showAlert(AlertType.WARNING, "Warnung", "", "Die Stoppuhr läuft noch!", new Image("/userInterface/icon.png"), stage, null, false);
    						
    
    						// "schluckt" die Aufforderung das Fenster zu schließen
    
    Administrator's avatar
    Administrator committed
    						// (Fenster wird dadurch nicht geschlossen)
    						we.consume();
    					}
    					else
    					{
    						stage.close();
    					}
    				}
    			});
    		}
    		catch(Exception e)
    		{
    			e.printStackTrace();
    		}
    	}
    	
    	public static void main(String[] args)
    	{
    		launch(args);
    	}
    }