diff options
Diffstat (limited to 'src/main/java/dev/isxander/yacl/gui/controllers/slider')
-rw-r--r-- | src/main/java/dev/isxander/yacl/gui/controllers/slider/SliderControllerElement.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/main/java/dev/isxander/yacl/gui/controllers/slider/SliderControllerElement.java b/src/main/java/dev/isxander/yacl/gui/controllers/slider/SliderControllerElement.java index 5c5e20e..a7dec64 100644 --- a/src/main/java/dev/isxander/yacl/gui/controllers/slider/SliderControllerElement.java +++ b/src/main/java/dev/isxander/yacl/gui/controllers/slider/SliderControllerElement.java @@ -29,8 +29,6 @@ public class SliderControllerElement extends ControllerWidget<ISliderController< public void render(MatrixStack matrices, int mouseX, int mouseY, float delta) { super.render(matrices, mouseX, mouseY, delta); - if (sliderBounds == null) - sliderBounds = Dimension.ofInt(dim.xLimit() - getXPadding() - getThumbWidth() / 2 - dim.width() / 3, dim.centerY() - 4, dim.width() / 3, 8); calculateInterpolation(); } @@ -111,6 +109,12 @@ public class SliderControllerElement extends ControllerWidget<ISliderController< interpolation = (float) ((control.pendingValue() - control.min()) * 1 / control.range()); } + @Override + public void setDimension(Dimension<Integer> dim) { + super.setDimension(dim); + sliderBounds = Dimension.ofInt(dim.xLimit() - getXPadding() - getThumbWidth() / 2 - dim.width() / 3, dim.centerY() - 4, dim.width() / 3, 8); + } + private int getThumbX() { return (int) (sliderBounds.x() + sliderBounds.width() * interpolation); } |