sarl-fireworks/src/main/sarl/io/sarl/demos/fireworks/FireworksFXApplication.sarl

41 lines
1.1 KiB
Plaintext

package io.sarl.demos.fireworks
import io.sarl.demos.fireworks.gui.FXMLViewerController
import java.net.URL
import javafx.application.Application
import javafx.fxml.FXMLLoader
import javafx.fxml.JavaFXBuilderFactory
import javafx.scene.Parent
import javafx.scene.Scene
import javafx.stage.Stage
class FireworksFXApplication extends Application {
private var loader : FXMLLoader
@Override
public def start(stage : Stage) throws Exception {
var location : URL = getClass().getResource("FireworksFXApplication.fxml");
loader = new FXMLLoader();
loader.setLocation(location);
loader.setBuilderFactory(new JavaFXBuilderFactory());
var root : Parent = loader.load(location.openStream()) as Parent;
var scene : Scene = new Scene(root);
scene.getStylesheets().add(getClass().getResource("ViewerController.css").toExternalForm);
stage.setTitle("SARL Demo: Fireworks Animation");
stage.setScene(scene);
stage.show();
}
public static def main(args : String[]) {
launch(args);
}
@Override
public def stop() throws Exception {
super.stop();
(loader.getController() as FXMLViewerController).cleanExit();
}
}