-
Notifications
You must be signed in to change notification settings - Fork 0
Home
The aim of JavaFXUtils Repository, is to create a Framework with some utilities for JavaFX Framework, creating some small components to help developers building their own applications.
Feel free to contribute by creating new components, finding or solving bugs, documenting and sharing this Repository! :)
Component is a class that implements IComponent which mounts some utilities on Node object, for example: Imagine that we want to trigger some code on double click of a Button.
With JavaFX you can do something like:
Button button = new Button();
button.setOnMouseClicked((event)->{
if(event.getClickCount() == 2)
this.onDoubleClick();
});On JavaFXUtils there is DoubleClickable which deal with click count for you, so you can write the equivalent to the above code like:
Button button = new Button();
new DoubleClickable(button, this::onDoubleClick).mount();All components existent:
| Component | src | demo |
|---|---|---|
| Animation | src | demo |
| ButtonMagnifier | src | demo |
| ChangeButtonOnPass | src | demo |
| ChangeButtonOnPress | src | demo |
| ChangeMouseOnPass | src | demo |
| ChangeMouseOnPress | src | demo |
| DoubleClickable | src | demo |
| FXMLFile | src | demo |
| ImageMagnifier | src | demo |
| Movable | src | demo |
| MultiOption | src | demo |
| PassAnimation | src | demo |
| PressAnimation | src | demo |
| PressAndPassAnimation | src | demo |
| Tip | src | demo |
| Window | src | demo |
It is usual to mount different components over the same node for example
-
Mount tooltip -
Mount magnifier -
Mount double click
which will result in code like:
Button button;
new ButtonMagnifier(button).mount();
new Tip(button, "Button with Tip").mount();
new DoubleClickable(button, this::OnDoubleClick).mount(); Button button;
new ButtonMounter(button)
.buttonMagnifier()
.tip("Button with Tip")
.doubleClickable(this::onDoubleClick)
.mount();