mirror of
https://github.com/aNNiMON/HotaruFX.git
synced 2024-09-19 14:14:21 +03:00
Add opacity and css style properties
This commit is contained in:
parent
bde0a910d3
commit
74cef92402
@ -14,7 +14,9 @@ public abstract class ObjectNode {
|
|||||||
|
|
||||||
private final Node node;
|
private final Node node;
|
||||||
private PropertyTimelineHolder<Boolean> visible;
|
private PropertyTimelineHolder<Boolean> visible;
|
||||||
|
private PropertyTimelineHolder<Number> opacity;
|
||||||
private PropertyTimelineHolder<Node> clip;
|
private PropertyTimelineHolder<Node> clip;
|
||||||
|
private PropertyTimelineHolder<String> style;
|
||||||
private PropertyTimelineHolder<Number> rotate;
|
private PropertyTimelineHolder<Number> rotate;
|
||||||
private PropertyTimelineHolder<Number> translateX, translateY, translateZ;
|
private PropertyTimelineHolder<Number> translateX, translateY, translateZ;
|
||||||
private PropertyTimelineHolder<Number> scaleX, scaleY, scaleZ;
|
private PropertyTimelineHolder<Number> scaleX, scaleY, scaleZ;
|
||||||
@ -25,7 +27,9 @@ public abstract class ObjectNode {
|
|||||||
public ObjectNode(Node node) {
|
public ObjectNode(Node node) {
|
||||||
this.node = node;
|
this.node = node;
|
||||||
visible = PropertyTimelineHolder.empty();
|
visible = PropertyTimelineHolder.empty();
|
||||||
|
opacity = PropertyTimelineHolder.empty();
|
||||||
clip = PropertyTimelineHolder.empty();
|
clip = PropertyTimelineHolder.empty();
|
||||||
|
style = PropertyTimelineHolder.empty();
|
||||||
rotate = PropertyTimelineHolder.empty();
|
rotate = PropertyTimelineHolder.empty();
|
||||||
translateX = PropertyTimelineHolder.empty();
|
translateX = PropertyTimelineHolder.empty();
|
||||||
translateY = PropertyTimelineHolder.empty();
|
translateY = PropertyTimelineHolder.empty();
|
||||||
@ -46,10 +50,18 @@ public abstract class ObjectNode {
|
|||||||
return visible.setIfEmptyThenGet(node::visibleProperty);
|
return visible.setIfEmptyThenGet(node::visibleProperty);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PropertyTimeline<Number> opacityProperty() {
|
||||||
|
return opacity.setIfEmptyThenGet(node::opacityProperty);
|
||||||
|
}
|
||||||
|
|
||||||
public PropertyTimeline<Node> clipProperty() {
|
public PropertyTimeline<Node> clipProperty() {
|
||||||
return clip.setIfEmptyThenGet(node::clipProperty);
|
return clip.setIfEmptyThenGet(node::clipProperty);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PropertyTimeline<String> styleProperty() {
|
||||||
|
return style.setIfEmptyThenGet(node::styleProperty);
|
||||||
|
}
|
||||||
|
|
||||||
public PropertyTimeline<Number> rotateProperty() {
|
public PropertyTimeline<Number> rotateProperty() {
|
||||||
return rotate.setIfEmptyThenGet(node::rotateProperty);
|
return rotate.setIfEmptyThenGet(node::rotateProperty);
|
||||||
}
|
}
|
||||||
@ -88,7 +100,9 @@ public abstract class ObjectNode {
|
|||||||
|
|
||||||
public void buildTimeline(TimeLine timeline) {
|
public void buildTimeline(TimeLine timeline) {
|
||||||
visible.applyIfPresent(timeline);
|
visible.applyIfPresent(timeline);
|
||||||
|
opacity.applyIfPresent(timeline);
|
||||||
clip.applyIfPresent(timeline);
|
clip.applyIfPresent(timeline);
|
||||||
|
style.applyIfPresent(timeline);
|
||||||
rotate.applyIfPresent(timeline);
|
rotate.applyIfPresent(timeline);
|
||||||
translateX.applyIfPresent(timeline);
|
translateX.applyIfPresent(timeline);
|
||||||
translateY.applyIfPresent(timeline);
|
translateY.applyIfPresent(timeline);
|
||||||
@ -107,7 +121,10 @@ public abstract class ObjectNode {
|
|||||||
protected PropertyBindings propertyBindings(PropertyBindings bindings) {
|
protected PropertyBindings propertyBindings(PropertyBindings bindings) {
|
||||||
return bindings
|
return bindings
|
||||||
.add("visible", BOOLEAN, this::visibleProperty)
|
.add("visible", BOOLEAN, this::visibleProperty)
|
||||||
|
.add("opacity", NUMBER, this::opacityProperty)
|
||||||
.add("clip", CLIP_NODE, this::clipProperty)
|
.add("clip", CLIP_NODE, this::clipProperty)
|
||||||
|
.add("css", STRING, this::styleProperty)
|
||||||
|
.add("style", STRING, this::styleProperty)
|
||||||
.add("rotate", NUMBER, this::rotateProperty)
|
.add("rotate", NUMBER, this::rotateProperty)
|
||||||
.add("translateX", NUMBER, this::translateXProperty)
|
.add("translateX", NUMBER, this::translateXProperty)
|
||||||
.add("translateY", NUMBER, this::translateYProperty)
|
.add("translateY", NUMBER, this::translateYProperty)
|
||||||
|
@ -47,6 +47,9 @@ C = text({
|
|||||||
font: 100,
|
font: 100,
|
||||||
underline: 1
|
underline: 1
|
||||||
clip: CLIP,
|
clip: CLIP,
|
||||||
|
css: '
|
||||||
|
-fx-effect: dropshadow(two-pass-box, rgba(0,0,0,0.8), 5, 0, 0.5, 0.25);
|
||||||
|
'
|
||||||
})
|
})
|
||||||
C@layoutX
|
C@layoutX
|
||||||
.add(100, 0)
|
.add(100, 0)
|
||||||
|
Loading…
Reference in New Issue
Block a user