aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CREDITS.txt1
-rw-r--r--build.gradle2
-rw-r--r--src/main/java/io/github/cottonmc/cotton/gui/widget/WButton.java16
-rw-r--r--src/main/java/io/github/cottonmc/cotton/gui/widget/WLabeledSlider.java6
-rw-r--r--src/main/resources/assets/libgui/textures/widget/dark_widgets.pngbin0 -> 5798 bytes
5 files changed, 19 insertions, 6 deletions
diff --git a/CREDITS.txt b/CREDITS.txt
new file mode 100644
index 0000000..2f37fc1
--- /dev/null
+++ b/CREDITS.txt
@@ -0,0 +1 @@
+- Dark-mode button textures (dark_widgets.png) are from Roughly Enough Items by shedaniel, licensed under MIT
diff --git a/build.gradle b/build.gradle
index 9c4aa77..c3da0ef 100644
--- a/build.gradle
+++ b/build.gradle
@@ -71,7 +71,7 @@ task sourcesJar(type: Jar, dependsOn: classes) {
}
jar {
- from "LICENSE"
+ from "CREDITS.txt", "LICENSE"
}
checkstyle {
diff --git a/src/main/java/io/github/cottonmc/cotton/gui/widget/WButton.java b/src/main/java/io/github/cottonmc/cotton/gui/widget/WButton.java
index a8db003..dd2039a 100644
--- a/src/main/java/io/github/cottonmc/cotton/gui/widget/WButton.java
+++ b/src/main/java/io/github/cottonmc/cotton/gui/widget/WButton.java
@@ -8,7 +8,9 @@ import net.minecraft.client.sound.PositionedSoundInstance;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.sound.SoundEvents;
import net.minecraft.text.Text;
+import net.minecraft.util.Identifier;
+import io.github.cottonmc.cotton.gui.client.LibGui;
import io.github.cottonmc.cotton.gui.client.ScreenDrawing;
import io.github.cottonmc.cotton.gui.widget.data.HorizontalAlignment;
import io.github.cottonmc.cotton.gui.widget.data.InputResult;
@@ -16,6 +18,8 @@ import io.github.cottonmc.cotton.gui.widget.icon.Icon;
import org.jetbrains.annotations.Nullable;
public class WButton extends WWidget {
+ private static final Identifier DARK_WIDGETS_LOCATION = new Identifier("libgui", "textures/widget/dark_widgets.png");
+
private Text label;
protected int color = WLabel.DEFAULT_TEXT_COLOR;
protected int darkmodeColor = WLabel.DEFAULT_TEXT_COLOR;
@@ -93,9 +97,10 @@ public class WButton extends WWidget {
float buttonHeight = 20*px;
float buttonEndLeft = (200-(getWidth()/2)) * px;
-
- ScreenDrawing.texturedRect(matrices, x, y, getWidth()/2, 20, AbstractButtonWidget.WIDGETS_LOCATION, buttonLeft, buttonTop, buttonLeft+buttonWidth, buttonTop+buttonHeight, 0xFFFFFFFF);
- ScreenDrawing.texturedRect(matrices, x+(getWidth()/2), y, getWidth()/2, 20, AbstractButtonWidget.WIDGETS_LOCATION, buttonEndLeft, buttonTop, 200*px, buttonTop+buttonHeight, 0xFFFFFFFF);
+
+ Identifier texture = getTexture();
+ ScreenDrawing.texturedRect(matrices, x, y, getWidth()/2, 20, texture, buttonLeft, buttonTop, buttonLeft+buttonWidth, buttonTop+buttonHeight, 0xFFFFFFFF);
+ ScreenDrawing.texturedRect(matrices, x+(getWidth()/2), y, getWidth()/2, 20, texture, buttonEndLeft, buttonTop, 200*px, buttonTop+buttonHeight, 0xFFFFFFFF);
if (icon != null) {
icon.paint(matrices, x + 1, y + 1, 16);
@@ -211,4 +216,9 @@ public class WButton extends WWidget {
this.icon = icon;
return this;
}
+
+ @Environment(EnvType.CLIENT)
+ static Identifier getTexture() {
+ return LibGui.isDarkMode() ? DARK_WIDGETS_LOCATION : AbstractButtonWidget.WIDGETS_LOCATION;
+ }
}
diff --git a/src/main/java/io/github/cottonmc/cotton/gui/widget/WLabeledSlider.java b/src/main/java/io/github/cottonmc/cotton/gui/widget/WLabeledSlider.java
index 57cc8e6..4a89fa5 100644
--- a/src/main/java/io/github/cottonmc/cotton/gui/widget/WLabeledSlider.java
+++ b/src/main/java/io/github/cottonmc/cotton/gui/widget/WLabeledSlider.java
@@ -5,6 +5,7 @@ import net.fabricmc.api.Environment;
import net.minecraft.client.gui.widget.AbstractButtonWidget;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.text.Text;
+import net.minecraft.util.Identifier;
import net.minecraft.util.math.Vec3f;
import io.github.cottonmc.cotton.gui.client.ScreenDrawing;
@@ -207,8 +208,9 @@ public class WLabeledSlider extends WAbstractSlider {
float buttonHeight = 20 * px;
float buttonEndLeft = (200 - halfWidth) * px;
- ScreenDrawing.texturedRect(matrices, x, y, halfWidth, 20, AbstractButtonWidget.WIDGETS_LOCATION, buttonLeft, buttonTop, buttonLeft + buttonWidth, buttonTop + buttonHeight, 0xFFFFFFFF);
- ScreenDrawing.texturedRect(matrices, x + halfWidth, y, halfWidth, 20, AbstractButtonWidget.WIDGETS_LOCATION, buttonEndLeft, buttonTop, 200 * px, buttonTop + buttonHeight, 0xFFFFFFFF);
+ Identifier texture = WButton.getTexture();
+ ScreenDrawing.texturedRect(matrices, x, y, halfWidth, 20, texture, buttonLeft, buttonTop, buttonLeft + buttonWidth, buttonTop + buttonHeight, 0xFFFFFFFF);
+ ScreenDrawing.texturedRect(matrices, x + halfWidth, y, halfWidth, 20, texture, buttonEndLeft, buttonTop, 200 * px, buttonTop + buttonHeight, 0xFFFFFFFF);
}
/**
diff --git a/src/main/resources/assets/libgui/textures/widget/dark_widgets.png b/src/main/resources/assets/libgui/textures/widget/dark_widgets.png
new file mode 100644
index 0000000..8482d76
--- /dev/null
+++ b/src/main/resources/assets/libgui/textures/widget/dark_widgets.png
Binary files differ