Skip to content

Commit 129b700

Browse files
committed
minor code cleanup.
1 parent 6351346 commit 129b700

5 files changed

Lines changed: 67 additions & 40 deletions

File tree

editor/src/main/java/oxy/bascenario/editor/containers/inspector/defaults/ColorContainer.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,15 +26,13 @@ public ColorContainer(ObjectOrEvent object) {
2626
container.addChild(colorPicker = new AdvancedColorPicker(object.color));
2727
container.addChild(new Label("Overlay Color"));
2828
container.addChild(overlayColorPicker = new AdvancedColorPicker(object.overlapColor));
29-
30-
// container.addChild(new ColorWheelPicker(Color.RED));
3129
}
3230

3331
@Override
3432
public void render(Renderer renderer, Size size) {
3533
super.render(renderer, size);
3634

37-
// object.color = colorPicker.color();
38-
// object.overlapColor = overlayColorPicker.color();
35+
object.color = colorPicker.color();
36+
object.overlapColor = overlayColorPicker.color();
3937
}
4038
}

editor/src/main/java/oxy/bascenario/editor/containers/inspector/defaults/TransformContainer.java

Lines changed: 42 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,52 +22,49 @@ public class TransformContainer extends DropdownContainer {
2222
@Getter
2323
private final ObjectOrEvent object;
2424

25-
private final PositionPicker xPosition, yPosition;
26-
private final PositionPicker xScale, yScale;
27-
private final PositionPicker xRotation, yRotation, zRotation;
28-
private final PositionPicker xPivot, yPivot;
25+
private final FixedSizePicker xPosition, yPosition;
26+
private final FixedSizePicker xScale, yScale;
27+
private final FixedSizePicker xRotation, yRotation, zRotation;
28+
private final FixedSizePicker xPivot, yPivot;
2929

3030
public TransformContainer(ObjectOrEvent object) {
3131
super("Transforms", new GridLayout(10, 5));
3232

3333
this.object = object;
3434

35-
container.addChild(new Label("Position X").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 0).withAnchor(GridAnchor.LEFT)));
36-
container.addChild(new Label("Position Y").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 1).withAnchor(GridAnchor.LEFT)));
35+
container.addChild(label("Position X"), c -> c.layoutOptions(leftGrid(0, 0)));
36+
container.addChild(label("Position Y"), c -> c.layoutOptions(leftGrid(0, 1)));
3737

3838
Vec2 position = (Vec2) object.transformations().getOrDefault(ObjectTransform.POSITION, new Vec2(0, 0));
3939

40-
container.addChild(xPosition = new PositionPicker(-10000.0, 10000.0, 5, position.x()), c -> c.layoutOptions(new GridOptions(1, 0)));
41-
container.addChild(yPosition = new PositionPicker(-10000.0, 10000.0, 5, position.y()), c -> c.layoutOptions(new GridOptions(1, 1)));
40+
container.addChild(xPosition = new FixedSizePicker(-10000.0, 10000.0, 5, position.x()), c -> c.layoutOptions(grid(1, 0)));
41+
container.addChild(yPosition = new FixedSizePicker(-10000.0, 10000.0, 5, position.y()), c -> c.layoutOptions(grid(1, 1)));
4242

43-
container.addChild(new Label("Scale X").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT),
44-
c -> c.layoutOptions(new GridOptions(0, 3).withAnchor(GridAnchor.LEFT).withPadding(new Padding(0, 5, 0, 0))));
45-
container.addChild(new Label("Scale Y").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 4).withAnchor(GridAnchor.LEFT)));
43+
container.addChild(label("Scale X"), c -> c.layoutOptions(leftGrid(0, 3).withPadding(new Padding(0, 5, 0, 0))));
44+
container.addChild(label("Scale Y"), c -> c.layoutOptions(leftGrid(0, 4)));
4645

4746
Vec2 scale = (Vec2) object.transformations().getOrDefault(ObjectTransform.SCALE, new Vec2(1, 1));
4847

49-
container.addChild(xScale = new PositionPicker(0, 1000, 1, scale.x()), c -> c.layoutOptions(new GridOptions(1, 3).withPadding(new Padding(0, 5, 0, 0))));
50-
container.addChild(yScale = new PositionPicker(0, 1000, 1, scale.y()), c -> c.layoutOptions(new GridOptions(1, 4)));
48+
container.addChild(xScale = new FixedSizePicker(0, 1000, 1, scale.x()), c -> c.layoutOptions(grid(1, 3).withPadding(new Padding(0, 5, 0, 0))));
49+
container.addChild(yScale = new FixedSizePicker(0, 1000, 1, scale.y()), c -> c.layoutOptions(grid(1, 4)));
5150

52-
container.addChild(new Label("Rotation X").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT),
53-
c -> c.layoutOptions(new GridOptions(0, 5).withAnchor(GridAnchor.LEFT).withPadding(new Padding(0, 5, 0, 0))));
54-
container.addChild(new Label("Rotation Y").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 6).withAnchor(GridAnchor.LEFT)));
55-
container.addChild(new Label("Rotation Z").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 7).withAnchor(GridAnchor.LEFT)));
51+
container.addChild(label("Rotation X"), c -> c.layoutOptions(leftGrid(0, 5).withPadding(new Padding(0, 5, 0, 0))));
52+
container.addChild(label("Rotation Y"), c -> c.layoutOptions(leftGrid(0, 6)));
53+
container.addChild(label("Rotation Z"), c -> c.layoutOptions(leftGrid(0, 7)));
5654

5755
Vec3 rotation = (Vec3) object.transformations().getOrDefault(ObjectTransform.ROTATE, new Vec3(0, 0, 0));
5856

59-
container.addChild(xRotation = new PositionPicker(-360, 360, 1, rotation.x()), c -> c.layoutOptions(new GridOptions(1, 5).withPadding(new Padding(0, 5, 0, 0))));
60-
container.addChild(yRotation = new PositionPicker(-360, 360, 1, rotation.y()), c -> c.layoutOptions(new GridOptions(1, 6)));
61-
container.addChild(zRotation = new PositionPicker(-360, 360, 1, rotation.z()), c -> c.layoutOptions(new GridOptions(1, 7)));
57+
container.addChild(xRotation = new FixedSizePicker(-360, 360, 1, rotation.x()), c -> c.layoutOptions(grid(1, 5).withPadding(new Padding(0, 5, 0, 0))));
58+
container.addChild(yRotation = new FixedSizePicker(-360, 360, 1, rotation.y()), c -> c.layoutOptions(grid(1, 6)));
59+
container.addChild(zRotation = new FixedSizePicker(-360, 360, 1, rotation.z()), c -> c.layoutOptions(grid(1, 7)));
6260

63-
container.addChild(new Label("Pivot X").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT),
64-
c -> c.layoutOptions(new GridOptions(0, 8).withAnchor(GridAnchor.LEFT).withPadding(new Padding(0, 5, 0, 0))));
65-
container.addChild(new Label("Pivot Y").scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT), c -> c.layoutOptions(new GridOptions(0, 9).withAnchor(GridAnchor.LEFT)));
61+
container.addChild(label("Pivot X"), c -> c.layoutOptions(leftGrid(0, 8).withPadding(new Padding(0, 5, 0, 0))));
62+
container.addChild(label("Pivot Y"), c -> c.layoutOptions(leftGrid(0, 9)));
6663

6764
Vec2 pivot = (Vec2) object.transformations().getOrDefault(ObjectTransform.PIVOT, new Vec2(0, 0));
6865

69-
container.addChild(xPivot = new PositionPicker(-10000.0, 10000.0, 5, pivot.x()), c -> c.layoutOptions(new GridOptions(1, 8).withPadding(new Padding(0, 5, 0, 0))));
70-
container.addChild(yPivot = new PositionPicker(-10000.0, 10000.0, 5, pivot.y()), c -> c.layoutOptions(new GridOptions(1, 9)));
66+
container.addChild(xPivot = new FixedSizePicker(-10000.0, 10000.0, 5, pivot.x()), c -> c.layoutOptions(grid(1, 8).withPadding(new Padding(0, 5, 0, 0))));
67+
container.addChild(yPivot = new FixedSizePicker(-10000.0, 10000.0, 5, pivot.y()), c -> c.layoutOptions(grid(1, 9)));
7168
}
7269

7370
@Override
@@ -95,14 +92,32 @@ public void render(Renderer renderer, Size size) {
9592
}
9693
}
9794

98-
private static class PositionPicker extends NumberPicker {
99-
public PositionPicker(double min, double max, double step, double value) {
95+
private static class FixedSizePicker extends NumberPicker {
96+
public FixedSizePicker(double min, double max, double step, double value) {
10097
super(min, max, step, value);
10198
}
10299

100+
@Override
101+
protected void onComponentAdded() {
102+
super.onComponentAdded();
103+
font(rivet().backend().font().derive(14));
104+
}
105+
103106
@Override
104107
public Size computeIdealSize(Size constraints) {
105108
return super.computeIdealSize(constraints).withWidth(constraints.width() - 60f);
106109
}
107110
}
111+
112+
private GridOptions leftGrid(int column, int row) {
113+
return new GridOptions(column, row).withAnchor(GridAnchor.LEFT);
114+
}
115+
116+
private GridOptions grid(int column, int row) {
117+
return new GridOptions(column, row);
118+
}
119+
120+
private Label label(String string) {
121+
return new Label(string).scale(0.8f).horizontalOrigin(TextOrigin.Horizontal.VISUAL_LEFT);
122+
}
108123
}

editor/src/main/java/oxy/bascenario/editor/object/ObjectOrEvent.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@
44
import lombok.experimental.Accessors;
55
import net.lenni0451.commons.color.Color;
66
import oxy.bascenario.api.render.RenderLayer;
7+
import oxy.bascenario.editor.object.values.KeyframeValue;
78
import oxy.bascenario.editor.object.values.ObjectTransform;
89

910
import java.util.EnumMap;
11+
import java.util.HashMap;
12+
import java.util.Map;
1013

1114
@Accessors(fluent = true)
1215
public class ObjectOrEvent {
@@ -29,4 +32,7 @@ public ObjectOrEvent(long start, long duration, Object object, RenderLayer rende
2932

3033
public Color color = Color.WHITE;
3134
public Color overlapColor = Color.TRANSPARENT;
35+
36+
@Getter
37+
private final Map<Long, KeyframeValue> keyframes = new HashMap<>();
3238
}
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package oxy.bascenario.editor.object.values;
2+
3+
import lombok.Getter;
4+
import lombok.experimental.Accessors;
5+
import net.lenni0451.commons.color.Color;
6+
7+
import java.util.EnumMap;
8+
9+
@Accessors(fluent = true)
10+
public class KeyframeValue {
11+
@Getter
12+
private final EnumMap<ObjectTransform, Object> transformations = new EnumMap<>(ObjectTransform.class);
13+
14+
public Color color = null;
15+
public Color overlapColor = null;
16+
}

editor/src/main/java/oxy/bascenario/utils/components/AdvancedColorPicker.java

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -142,16 +142,8 @@ protected boolean onComponentMouseUp(MouseButtonEvent event, Size size) {
142142
.withPadding(new Padding(5, 15, 0, 0)).withAnchor(GridAnchor.LEFT)));
143143
container.addChild(hexField, c -> c.layoutOptions(new GridOptions(1, 1)
144144
.withPadding(new Padding(5, 15, 0, 0)).withAnchor(GridAnchor.LEFT)));
145-
//
146145
container.addChild(colorValuesComponent, c -> c.layoutOptions(new GridOptions(0, 2)
147146
.withPadding(new Padding(5, 15, 0, 0)).withAnchor(GridAnchor.LEFT).withColumnSpan(2)));
148-
149-
150-
// container.addChild(redField, c -> c.layoutOptions(new GridOptions(0, 2)
151-
// .withPadding(new Padding(0, 15, 0, 0))));
152-
// container.addChild(greenField, c -> c.layoutOptions(new GridOptions(0, 3)));
153-
// container.addChild(blueField, c -> c.layoutOptions(new GridOptions(0, 4)));
154-
// container.addChild(alphaField, c -> c.layoutOptions(new GridOptions(0, 5)));
155147
}
156148

157149
layerContainer.addChild(this.container);
@@ -168,7 +160,7 @@ public Size computeIdealSize(Size size) {
168160
return size.withHeight(height.value()).withWidth(size.width() - 8f); // Don't comment on this.
169161
}
170162

171-
private Color color() {
163+
public Color color() {
172164
return picker.color();
173165
}
174166
}

0 commit comments

Comments
 (0)