package imagerollover;
import javafx.scene.*;
import javafx.scene.input.*;
import javafx.scene.image.*;
public class CloseButton extends CustomNode {
var image:Image;
var images:Image[];
public var onClicked:function():Void;
init {
images = [
Image { url: "{__DIR__}resources/close_normal.png" },
Image { url: "{__DIR__}resources/close_hover.png" },
Image { url: "{__DIR__}resources/close_pressed.png" },
];
image = images[0];
}
override public function create():Node {
return ImageView {
image: bind image
onMouseEntered: function(e:MouseEvent) { image = images[1] }
onMouseExited: function(e:MouseEvent) { image = images[0] }
onMousePressed: function(e:MouseEvent) { image = images[2] }
onMouseReleased: function(e:MouseEvent) {
image = images[0];
if(onClicked != null) {
onClicked();
}
}
}
}
}