From e0208a4514a13f885b6b87feac76a51969b96a81 Mon Sep 17 00:00:00 2001 From: Irtimaled Date: Mon, 4 May 2020 00:41:07 -0700 Subject: [PATCH] Change button ON state highlighting to make it more obvious in 1.15+ --- .../irtimaled/bbor/client/gui/BoolButton.java | 17 ++++++++++++++++- .../bbor/client/gui/BoundingBoxTypeButton.java | 2 ++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/irtimaled/bbor/client/gui/BoolButton.java b/src/main/java/com/irtimaled/bbor/client/gui/BoolButton.java index 3b42bbe..df85436 100644 --- a/src/main/java/com/irtimaled/bbor/client/gui/BoolButton.java +++ b/src/main/java/com/irtimaled/bbor/client/gui/BoolButton.java @@ -1,6 +1,10 @@ package com.irtimaled.bbor.client.gui; +import java.awt.*; + public abstract class BoolButton extends AbstractButton { + private static final Color OVERLAY_COLOR = new Color(0, 255, 0, 48); + private boolean value; BoolButton(int width, String label, boolean enabled) { @@ -13,7 +17,7 @@ public abstract class BoolButton extends AbstractButton { @Override protected int getState() { - return enabled ? this.getValue() ? 2 : 1 : 0; + return enabled ? super.getState() : 0; } protected boolean getValue() { @@ -23,4 +27,15 @@ public abstract class BoolButton extends AbstractButton { protected void setValue(boolean value) { this.value = value; } + + @Override + protected void renderBackground(int mouseX, int mouseY) { + int left = this.x + 1; + int top = this.y + 1; + int right = left + this.width - 2; + int bottom = top + this.height - 2; + if (this.getValue()) { + drawRectangle(left, top, right, bottom, OVERLAY_COLOR); + } + } } diff --git a/src/main/java/com/irtimaled/bbor/client/gui/BoundingBoxTypeButton.java b/src/main/java/com/irtimaled/bbor/client/gui/BoundingBoxTypeButton.java index 5c85899..938d2f4 100644 --- a/src/main/java/com/irtimaled/bbor/client/gui/BoundingBoxTypeButton.java +++ b/src/main/java/com/irtimaled/bbor/client/gui/BoundingBoxTypeButton.java @@ -14,6 +14,8 @@ public class BoundingBoxTypeButton extends BoolSettingButton { @Override protected void renderBackground(int mouseX, int mouseY) { + super.renderBackground(mouseX, mouseY); + int left = x + 1; int top = y + 1; int right = left + width - 2; -- 2.44.0