[quote=giovanni_stiwes]Jesuino Master:
Esclarece uma dúvida, já que o javafx vai virar API java, todo o código javafx (components e tal) será repassado para a linguagem java?[/quote]
Sim. Será possível programar para gerar gráficos em javaFX usando Java ou uma das outras linguagens suportadas.
A apresentação de Jonathan Giles bastante esclarecedora:
http://jonathangiles.net/blog/wp-content/uploads/2010/09/JavaFXYourWay.pdf
? JavaFX Script no longer required to write JavaFX
applications
? Benefits:
? Easier integration with business logic on JVM
? Access to generics, annotations, (closures), etc
? Java has great IDE support
? Downsides:
? JavaFX Script was kind to us
Daí ele apresenta como será com Java, Scala, Groovy, JRuby e Clojure:
Java:
public class HelloStage implements Runnable {
public void run() {
Stage stage = new Stage();
stage.setTitle("Hello Stage");
stage.setWidth(600);
stage.setHeight(450);
Scene scene = new Scene();
scene.setFill(Color.LIGHTGREEN);
stage.setScene(scene);
stage.setVisible(true);
}
public static void main(String[] args) {
FX.start(new HelloStage());
}
}
JRuby
require 'swiby'
class HelloWorldModel
attr_accessor :saying
end
model = HelloWorldModel.new
model.saying = "Hello World"
Frame {
title "Hello World?
width 200
content {
Label {
text bind(model,:saying)
}
}
visible true
}
Clojure
(defn javafxapp []
(let [stage (Stage. "JavaFX Stage")
scene (Scene.)]
(.setFill scene Color/LIGHTGREEN)
(.setWidth stage 600)
(.setHeight stage 450)
(.setScene stage scene)
(.setVisible stage true)))
(javafxapp)
Groovy
FxBuilder.build {
stage = stage(
title: "Hello Rectangle (Groovy FxBuilder 2)",
width: 600,
height: 450,
scene: scene(fill: Color.LIGHTSKYBLUE) {
rectangle(
x: 25, y: 40,
width: 100, height: 50,
fill: Color.RED
)
}
)
stage.visible = true;
}
Scala
object HelloJavaFX extends JavaFXApplication {
def stage = new Stage {
title = "Hello Stage"
width = 600
height = 450
scene = new Scene {
fill = Color.LIGHTGREEN
content = List(new Rectangle {
x = 25
y = 40
width = 100
height = 50
fill = Color.RED
})
}
}
}
Embora eu tenha perdido muito tempo com JFXScript, eu gostei muito das mudanças e, como podem ver ai em cima, as classes são as mesmas do JavaFX…