diff options
| author | shedaniel <daniel@shedaniel.me> | 2020-03-16 16:19:25 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2020-03-16 16:19:25 +0800 |
| commit | 9e990de7685960391d78ca2cca0ff68bebe1a8cd (patch) | |
| tree | 1ce7e36a326d11d0d278bb070df9ba7984515c01 /src/main/java/me/shedaniel/rei/impl | |
| parent | 921fbe77b6ebbbb7e5a78dc996ca5c98faf5fcc5 (diff) | |
| download | RoughlyEnoughItems-9e990de7685960391d78ca2cca0ff68bebe1a8cd.tar.gz RoughlyEnoughItems-9e990de7685960391d78ca2cca0ff68bebe1a8cd.tar.bz2 RoughlyEnoughItems-9e990de7685960391d78ca2cca0ff68bebe1a8cd.zip | |
4.0.13
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java/me/shedaniel/rei/impl')
16 files changed, 87 insertions, 54 deletions
diff --git a/src/main/java/me/shedaniel/rei/impl/ClientHelperImpl.java b/src/main/java/me/shedaniel/rei/impl/ClientHelperImpl.java index bf21bae6e..efedb7a35 100644 --- a/src/main/java/me/shedaniel/rei/impl/ClientHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/ClientHelperImpl.java @@ -146,7 +146,7 @@ public class ClientHelperImpl implements ClientHelper, ClientModInitializer { @Override public void sendDeletePacket() { - if (ScreenHelper.getLastScreenWithHandler() instanceof CreativeInventoryScreen) { + if (ScreenHelper.getLastHandledScreen() instanceof CreativeInventoryScreen) { MinecraftClient.getInstance().player.inventory.setCursorStack(ItemStack.EMPTY); return; } @@ -257,7 +257,7 @@ public class ClientHelperImpl implements ClientHelper, ClientModInitializer { screen = new VillagerRecipeViewingScreen(map, category); } else if (ConfigObject.getInstance().getRecipeScreenType() == RecipeScreenType.UNSET) { @Nullable Identifier finalCategory = category; - screen = new PreRecipeViewingScreen(ScreenHelper.getLastScreenWithHandler(), RecipeScreenType.UNSET, true, original -> { + screen = new PreRecipeViewingScreen(ScreenHelper.getLastHandledScreen(), RecipeScreenType.UNSET, true, original -> { ConfigObject.getInstance().setRecipeScreenType(original ? RecipeScreenType.ORIGINAL : RecipeScreenType.VILLAGER); ConfigManager.getInstance().saveConfig(); openRecipeViewingScreen(map, finalCategory, ingredientNotice, resultNotice); diff --git a/src/main/java/me/shedaniel/rei/impl/ConfigManagerImpl.java b/src/main/java/me/shedaniel/rei/impl/ConfigManagerImpl.java index b1ff8d4a7..b2532227a 100644 --- a/src/main/java/me/shedaniel/rei/impl/ConfigManagerImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/ConfigManagerImpl.java @@ -117,7 +117,7 @@ public class ConfigManagerImpl implements ConfigManager { Collections.singletonList(new RecipeScreenTypeEntry(220, i13n, getUnsafely(field, config, RecipeScreenType.UNSET), getUnsafely(field, defaults), type -> setUnsafely(field, config, type))) , (field) -> field.getType() == RecipeScreenType.class, ConfigObjectImpl.UseSpecialRecipeTypeScreen.class); guiRegistry.registerAnnotationProvider((i13n, field, config, defaults, guiProvider) -> - ScreenHelper.getLastScreenWithHandlerHooks() == null || MinecraftClient.getInstance().getNetworkHandler() == null || MinecraftClient.getInstance().getNetworkHandler().getRecipeManager() == null ? + ScreenHelper.getLastHandledScreen() == null || MinecraftClient.getInstance().getNetworkHandler() == null || MinecraftClient.getInstance().getNetworkHandler().getRecipeManager() == null ? Collections.singletonList(new NoFilteringEntry(getUnsafely(field, config, new ArrayList<>()), getUnsafely(field, defaults), list -> setUnsafely(field, config, list))) : Collections.singletonList(new FilteringEntry(getUnsafely(field, config, new ArrayList<>()), getUnsafely(field, defaults), list -> setUnsafely(field, config, list))) diff --git a/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java b/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java index 083fd043e..319523c82 100644 --- a/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/DisplayHelperImpl.java @@ -110,6 +110,7 @@ public class DisplayHelperImpl implements DisplayHelper { screenDisplayBoundsHandlers.sort(BOUNDS_HANDLER_COMPARATOR); } + @Deprecated @Override public BaseBoundsHandler getBaseBoundsHandler() { return baseBoundsHandler; diff --git a/src/main/java/me/shedaniel/rei/impl/EmptyEntryStack.java b/src/main/java/me/shedaniel/rei/impl/EmptyEntryStack.java index edf8b37a3..a92ced874 100644 --- a/src/main/java/me/shedaniel/rei/impl/EmptyEntryStack.java +++ b/src/main/java/me/shedaniel/rei/impl/EmptyEntryStack.java @@ -23,9 +23,10 @@ package me.shedaniel.rei.impl; +import me.shedaniel.math.Point; import me.shedaniel.math.api.Rectangle; import me.shedaniel.rei.api.EntryStack; -import me.shedaniel.rei.gui.widget.QueuedTooltip; +import me.shedaniel.rei.api.widgets.Tooltip; import net.minecraft.util.Identifier; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; @@ -131,8 +132,7 @@ public class EmptyEntryStack implements EntryStack { } @Override - @Nullable - public QueuedTooltip getTooltip(int mouseX, int mouseY) { + public @Nullable Tooltip getTooltip(Point point) { return null; } diff --git a/src/main/java/me/shedaniel/rei/impl/FluidEntryStack.java b/src/main/java/me/shedaniel/rei/impl/FluidEntryStack.java index 256048542..312f6a130 100644 --- a/src/main/java/me/shedaniel/rei/impl/FluidEntryStack.java +++ b/src/main/java/me/shedaniel/rei/impl/FluidEntryStack.java @@ -24,11 +24,12 @@ package me.shedaniel.rei.impl; import com.google.common.collect.Lists; +import me.shedaniel.math.Point; import me.shedaniel.math.api.Rectangle; import me.shedaniel.rei.api.ClientHelper; import me.shedaniel.rei.api.ConfigObject; import me.shedaniel.rei.api.EntryStack; -import me.shedaniel.rei.gui.widget.QueuedTooltip; +import me.shedaniel.rei.api.widgets.Tooltip; import net.fabricmc.fabric.api.client.render.fluid.v1.FluidRenderHandler; import net.fabricmc.fabric.api.client.render.fluid.v1.FluidRenderHandlerRegistry; import net.minecraft.client.MinecraftClient; @@ -178,7 +179,7 @@ public class FluidEntryStack extends AbstractEntryStack { @Nullable @Override - public QueuedTooltip getTooltip(int mouseX, int mouseY) { + public Tooltip getTooltip(Point point) { if (!get(Settings.TOOLTIP_ENABLED).get() || isEmpty()) return null; List<String> toolTip = Lists.newArrayList(SearchArgument.tryGetEntryStackName(this)); @@ -199,7 +200,7 @@ public class FluidEntryStack extends AbstractEntryStack { if (!alreadyHasMod) toolTip.add(modString); } - return QueuedTooltip.create(toolTip); + return Tooltip.create(toolTip); } @SuppressWarnings("deprecation") diff --git a/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java b/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java index 043064024..7c65fc096 100644 --- a/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java +++ b/src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java @@ -25,9 +25,10 @@ package me.shedaniel.rei.impl; import com.google.common.collect.Lists; import com.mojang.blaze3d.platform.GlStateManager; +import me.shedaniel.math.Point; import me.shedaniel.math.api.Rectangle; import me.shedaniel.rei.api.*; -import me.shedaniel.rei.gui.widget.QueuedTooltip; +import me.shedaniel.rei.api.widgets.Tooltip; import net.minecraft.client.MinecraftClient; import net.minecraft.client.render.OverlayTexture; import net.minecraft.client.render.VertexConsumerProvider; @@ -215,7 +216,7 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt @Nullable @Override - public QueuedTooltip getTooltip(int mouseX, int mouseY) { + public Tooltip getTooltip(Point point) { if (isEmpty() || !get(Settings.TOOLTIP_ENABLED).get()) return null; List<String> toolTip = Lists.newArrayList(SearchArgument.tryGetItemStackToolTip(getItemStack(), true)); @@ -231,7 +232,7 @@ public class ItemEntryStack extends AbstractEntryStack implements OptimalEntrySt if (!alreadyHasMod) toolTip.add(modString); } - return QueuedTooltip.create(toolTip); + return Tooltip.create(toolTip); } @Override diff --git a/src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java b/src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java index 7e8fe50ce..ebc6fc9fb 100644 --- a/src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java +++ b/src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java @@ -31,7 +31,7 @@ import me.shedaniel.rei.RoughlyEnoughItemsCore; import me.shedaniel.rei.api.*; import me.shedaniel.rei.api.plugins.REIPluginV0; import me.shedaniel.rei.utils.CollectionUtils; -import net.minecraft.client.gui.screen.ingame.ScreenWithHandler; +import net.minecraft.client.gui.screen.ingame.HandledScreen; import net.minecraft.recipe.Recipe; import net.minecraft.recipe.RecipeManager; import net.minecraft.util.ActionResult; @@ -355,7 +355,7 @@ public class RecipeHelperImpl implements RecipeHelper { @Override public ActionResult shouldScreenBeOverlayed(Class<?> screen) { - return ScreenWithHandler.class.isAssignableFrom(screen) ? ActionResult.SUCCESS : ActionResult.PASS; + return HandledScreen.class.isAssignableFrom(screen) ? ActionResult.SUCCESS : ActionResult.PASS; } @Override @@ -461,7 +461,7 @@ public class RecipeHelperImpl implements RecipeHelper { } @Override - public void registerScreenClickArea(Rectangle rectangle, Class<? extends ScreenWithHandler<?>> screenClass, Identifier... categories) { + public void registerScreenClickArea(Rectangle rectangle, Class<? extends HandledScreen<?>> screenClass, Identifier... categories) { this.screenClickAreas.add(new ScreenClickAreaImpl(screenClass, rectangle, categories)); } @@ -493,17 +493,17 @@ public class RecipeHelperImpl implements RecipeHelper { } private static class ScreenClickAreaImpl implements ScreenClickArea { - Class<? extends ScreenWithHandler<?>> screenClass; + Class<? extends HandledScreen<?>> screenClass; Rectangle rectangle; Identifier[] categories; - private ScreenClickAreaImpl(Class<? extends ScreenWithHandler<?>> screenClass, Rectangle rectangle, Identifier[] categories) { + private ScreenClickAreaImpl(Class<? extends HandledScreen<?>> screenClass, Rectangle rectangle, Identifier[] categories) { this.screenClass = screenClass; this.rectangle = rectangle; this.categories = categories; } - public Class<? extends ScreenWithHandler<?>> getScreenClass() { + public Class<? extends HandledScreen<?>> getScreenClass() { return screenClass; } diff --git a/src/main/java/me/shedaniel/rei/impl/RenderingEntry.java b/src/main/java/me/shedaniel/rei/impl/RenderingEntry.java index e94040cf6..8a9f92e74 100644 --- a/src/main/java/me/shedaniel/rei/impl/RenderingEntry.java +++ b/src/main/java/me/shedaniel/rei/impl/RenderingEntry.java @@ -131,7 +131,9 @@ public abstract class RenderingEntry extends DrawableHelper implements EntryStac @Nullable @Override + @Deprecated + @ApiStatus.ScheduledForRemoval public QueuedTooltip getTooltip(int mouseX, int mouseY) { - return null; + return EntryStack.super.getTooltip(mouseX, mouseY); } } diff --git a/src/main/java/me/shedaniel/rei/impl/ScreenHelper.java b/src/main/java/me/shedaniel/rei/impl/ScreenHelper.java index a404e94df..bcb99e52f 100644 --- a/src/main/java/me/shedaniel/rei/impl/ScreenHelper.java +++ b/src/main/java/me/shedaniel/rei/impl/ScreenHelper.java @@ -30,17 +30,17 @@ import me.shedaniel.cloth.hooks.ClothClientHooks; import me.shedaniel.rei.api.ConfigManager; import me.shedaniel.rei.api.ConfigObject; import me.shedaniel.rei.api.REIHelper; +import me.shedaniel.rei.api.widgets.Tooltip; import me.shedaniel.rei.gui.ContainerScreenOverlay; import me.shedaniel.rei.gui.OverlaySearchField; import me.shedaniel.rei.gui.RecipeScreen; -import me.shedaniel.rei.gui.widget.QueuedTooltip; import me.shedaniel.rei.gui.widget.TextFieldWidget; import me.shedaniel.rei.listeners.ContainerScreenHooks; import net.fabricmc.api.ClientModInitializer; import net.fabricmc.fabric.api.event.client.ClientTickCallback; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.Screen; -import net.minecraft.client.gui.screen.ingame.ScreenWithHandler; +import net.minecraft.client.gui.screen.ingame.HandledScreen; import net.minecraft.client.util.Window; import net.minecraft.item.ItemStack; import net.minecraft.util.ActionResult; @@ -59,7 +59,7 @@ public class ScreenHelper implements ClientModInitializer, REIHelper { @ApiStatus.Internal public static List<ItemStack> inventoryStacks = Lists.newArrayList(); private static ContainerScreenOverlay overlay; - private static ScreenWithHandler<?> lastScreenWithHandler = null; + private static HandledScreen<?> lastHandledScreen = null; private static LinkedHashSet<RecipeScreen> lastRecipeScreen = Sets.newLinkedHashSetWithExpectedSize(5); private static ScreenHelper instance; @@ -73,7 +73,7 @@ public class ScreenHelper implements ClientModInitializer, REIHelper { } @Override - public void addTooltip(@Nullable QueuedTooltip tooltip) { + public void queueTooltip(@Nullable Tooltip tooltip) { if (overlay != null && tooltip != null) { overlay.addTooltip(tooltip); } @@ -148,32 +148,52 @@ public class ScreenHelper implements ClientModInitializer, REIHelper { @Deprecated @ApiStatus.ScheduledForRemoval - public static ScreenWithHandler<?> getLastContainerScreen() { - return getLastScreenWithHandler(); + public static HandledScreen<?> getLastContainerScreen() { + return getLastHandledScreen(); } - public static ScreenWithHandler<?> getLastScreenWithHandler() { - return lastScreenWithHandler; + @Deprecated + @ApiStatus.ScheduledForRemoval + public static HandledScreen<?> getLastScreenWithHandler() { + return getLastHandledScreen(); + } + + public static HandledScreen<?> getLastHandledScreen() { + return lastHandledScreen; + } + + @Deprecated + @ApiStatus.ScheduledForRemoval + public static void setLastContainerScreen(HandledScreen<?> lastScreenWithHandler) { + setLastHandledScreen(lastScreenWithHandler); } @Deprecated @ApiStatus.ScheduledForRemoval - public static void setLastContainerScreen(ScreenWithHandler<?> lastScreenWithHandler) { - setLastScreenWithHandler(lastScreenWithHandler); + public static void setLastScreenWithHandler(HandledScreen<?> lastScreenWithHandler) { + setLastHandledScreen(lastScreenWithHandler); } - public static void setLastScreenWithHandler(ScreenWithHandler<?> lastScreenWithHandler) { - ScreenHelper.lastScreenWithHandler = lastScreenWithHandler; + public static void setLastHandledScreen(HandledScreen<?> lastScreenWithHandler) { + ScreenHelper.lastHandledScreen = lastScreenWithHandler; } + /** + * @deprecated Please create your own mixin hooks + */ @Deprecated @ApiStatus.ScheduledForRemoval public static ContainerScreenHooks getLastContainerScreenHooks() { return getLastScreenWithHandlerHooks(); } + /** + * @deprecated Please create your own mixin hooks + */ + @Deprecated + @ApiStatus.ScheduledForRemoval public static ContainerScreenHooks getLastScreenWithHandlerHooks() { - return (ContainerScreenHooks) lastScreenWithHandler; + return (ContainerScreenHooks) lastHandledScreen; } public static void drawHoveringWidget(int x, int y, TriConsumer<Integer, Integer, Float> consumer, int width, int height, float delta) { @@ -210,8 +230,8 @@ public class ScreenHelper implements ClientModInitializer, REIHelper { @Override public void onInitializeClient() { ClothClientHooks.SCREEN_INIT_PRE.register((client, screen, screenHooks) -> { - if (lastScreenWithHandler != screen && screen instanceof ScreenWithHandler) - lastScreenWithHandler = (ScreenWithHandler<?>) screen; + if (lastHandledScreen != screen && screen instanceof HandledScreen) + lastHandledScreen = (HandledScreen<?>) screen; return ActionResult.PASS; }); ClientTickCallback.EVENT.register(minecraftClient -> { diff --git a/src/main/java/me/shedaniel/rei/impl/SearchArgument.java b/src/main/java/me/shedaniel/rei/impl/SearchArgument.java index f1a84b604..1146c68ea 100644 --- a/src/main/java/me/shedaniel/rei/impl/SearchArgument.java +++ b/src/main/java/me/shedaniel/rei/impl/SearchArgument.java @@ -24,9 +24,10 @@ package me.shedaniel.rei.impl; import com.google.common.collect.Lists; +import me.shedaniel.math.Point; import me.shedaniel.rei.api.ClientHelper; import me.shedaniel.rei.api.EntryStack; -import me.shedaniel.rei.gui.widget.QueuedTooltip; +import me.shedaniel.rei.api.widgets.Tooltip; import me.shedaniel.rei.utils.CollectionUtils; import net.minecraft.client.MinecraftClient; import net.minecraft.client.item.TooltipContext; @@ -198,7 +199,7 @@ public class SearchArgument { } public static String tryGetEntryStackTooltip(EntryStack stack) { - QueuedTooltip tooltip = stack.getTooltip(0, 0); + Tooltip tooltip = stack.getTooltip(new Point()); if (tooltip != null) return CollectionUtils.joinToString(tooltip.getText(), "\n"); return ""; diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/BurningFireWidget.java b/src/main/java/me/shedaniel/rei/impl/widgets/BurningFireWidget.java index 7933cffb8..da24f0d3e 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/BurningFireWidget.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/BurningFireWidget.java @@ -57,7 +57,8 @@ public class BurningFireWidget extends BurningFire { } @Override - public @NotNull Rectangle getBounds() { + @NotNull + public Rectangle getBounds() { return bounds; } diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/DrawableWidget.java b/src/main/java/me/shedaniel/rei/impl/widgets/DrawableWidget.java index daac4cb34..104ec00a8 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/DrawableWidget.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/DrawableWidget.java @@ -26,14 +26,16 @@ package me.shedaniel.rei.impl.widgets; import me.shedaniel.rei.api.DrawableConsumer; import me.shedaniel.rei.gui.widget.Widget; import net.minecraft.client.gui.Element; +import org.jetbrains.annotations.NotNull; import java.util.Collections; import java.util.List; public final class DrawableWidget extends Widget { + @NotNull private DrawableConsumer drawable; - public DrawableWidget(DrawableConsumer drawable) { + public DrawableWidget(@NotNull DrawableConsumer drawable) { this.drawable = drawable; } diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/FillRectangleDrawableConsumer.java b/src/main/java/me/shedaniel/rei/impl/widgets/FillRectangleDrawableConsumer.java index 012620340..a3384d246 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/FillRectangleDrawableConsumer.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/FillRectangleDrawableConsumer.java @@ -30,18 +30,20 @@ import net.minecraft.client.gui.DrawableHelper; import net.minecraft.client.render.BufferBuilder; import net.minecraft.client.render.Tessellator; import net.minecraft.client.render.VertexFormats; +import org.jetbrains.annotations.NotNull; public class FillRectangleDrawableConsumer implements DrawableConsumer { + @NotNull private Rectangle rectangle; private int color; - public FillRectangleDrawableConsumer(Rectangle rectangle, int color) { + public FillRectangleDrawableConsumer(@NotNull Rectangle rectangle, int color) { this.rectangle = rectangle; this.color = color; } @Override - public void render(DrawableHelper helper, int mouseX, int mouseY, float delta) { + public void render(@NotNull DrawableHelper helper, int mouseX, int mouseY, float delta) { float a = (color >> 24 & 255) / 255.0F; float r = (color >> 16 & 255) / 255.0F; float g = (color >> 8 & 255) / 255.0F; diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/LabelWidget.java b/src/main/java/me/shedaniel/rei/impl/widgets/LabelWidget.java index 8e97cf196..e6f19aee1 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/LabelWidget.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/LabelWidget.java @@ -27,8 +27,8 @@ import me.shedaniel.math.Point; import me.shedaniel.math.api.Rectangle; import me.shedaniel.rei.api.REIHelper; import me.shedaniel.rei.api.widgets.Label; +import me.shedaniel.rei.api.widgets.Tooltip; import me.shedaniel.rei.api.widgets.Widgets; -import me.shedaniel.rei.gui.widget.QueuedTooltip; import net.minecraft.client.gui.Element; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -48,14 +48,14 @@ public final class LabelWidget extends Label { private boolean focusable = true; private int color = REIHelper.getInstance().isDarkThemeEnabled() ? 0xFFBBBBBB : -1; private int hoveredColor = REIHelper.getInstance().isDarkThemeEnabled() ? -1 : 0xFF66FFCC; - private Point point; + @NotNull private Point point; @Nullable private Function<Label, @Nullable String> tooltip; @Nullable private Consumer<Label> onClick; @Nullable private Consumer<Label> onRender; @NotNull private String text; - public LabelWidget(Point point, @NotNull String text) { - this.point = point; + public LabelWidget(@NotNull Point point, @NotNull String text) { + Objects.requireNonNull(this.point = point); Objects.requireNonNull(this.text = text); } @@ -219,9 +219,9 @@ public final class LabelWidget extends Label { String tooltip = getTooltip(); if (tooltip != null) { if (!focused && containsMouse(mouseX, mouseY)) - QueuedTooltip.create(tooltip.split("\n")).queue(); + Tooltip.create(tooltip.split("\n")).queue(); else if (focused) - QueuedTooltip.create(point, tooltip.split("\n")).queue(); + Tooltip.create(point, tooltip.split("\n")).queue(); } } } diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/PanelWidget.java b/src/main/java/me/shedaniel/rei/impl/widgets/PanelWidget.java index ade913478..5cf1ad13a 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/PanelWidget.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/PanelWidget.java @@ -44,7 +44,7 @@ public final class PanelWidget extends Panel { private static final Identifier CHEST_GUI_TEXTURE_DARK = new Identifier("roughlyenoughitems", "textures/gui/recipecontainer_dark.png"); private static final PanelWidget TEMP = new PanelWidget(new Rectangle()); - private Rectangle bounds; + private me.shedaniel.math.api.Rectangle bounds; private int color = -1; private int innerColor = REIHelper.getInstance().isDarkThemeEnabled() ? -13750738 : -3750202; private int xTextureOffset = 0; @@ -56,12 +56,12 @@ public final class PanelWidget extends Panel { return ConfigObject.getInstance().getRecipeScreenType() != RecipeScreenType.VILLAGER; } - public PanelWidget(Rectangle bounds) { - this.bounds = bounds; + public PanelWidget(@NotNull Rectangle bounds) { + this.bounds = new me.shedaniel.math.api.Rectangle(bounds); } - public static void render(Rectangle bounds, int color) { - TEMP.bounds = bounds; + public static void render(@NotNull Rectangle bounds, int color) { + TEMP.bounds.setBounds(bounds); TEMP.color = color; TEMP.render(0, 0, 0); } @@ -118,7 +118,7 @@ public final class PanelWidget extends Panel { @Override public me.shedaniel.math.api.Rectangle getBounds() { - return new me.shedaniel.math.api.Rectangle(bounds); + return bounds; } @Override diff --git a/src/main/java/me/shedaniel/rei/impl/widgets/TexturedDrawableConsumer.java b/src/main/java/me/shedaniel/rei/impl/widgets/TexturedDrawableConsumer.java index 9ceddcfee..7578a9d0b 100644 --- a/src/main/java/me/shedaniel/rei/impl/widgets/TexturedDrawableConsumer.java +++ b/src/main/java/me/shedaniel/rei/impl/widgets/TexturedDrawableConsumer.java @@ -30,15 +30,17 @@ import net.minecraft.client.render.BufferBuilder; import net.minecraft.client.render.Tessellator; import net.minecraft.client.render.VertexFormats; import net.minecraft.util.Identifier; +import org.jetbrains.annotations.NotNull; import org.lwjgl.opengl.GL11; public class TexturedDrawableConsumer implements DrawableConsumer { + @NotNull private Identifier identifier; private int x, y, width, height, uWidth, vHeight, textureWidth, textureHeight; private float u, v; - public TexturedDrawableConsumer(Identifier identifier, int x, int y, int width, int height, float u, float v, int uWidth, int vHeight, int textureWidth, int textureHeight) { + public TexturedDrawableConsumer(@NotNull Identifier identifier, int x, int y, int width, int height, float u, float v, int uWidth, int vHeight, int textureWidth, int textureHeight) { this.identifier = identifier; this.x = x; this.y = y; @@ -53,7 +55,7 @@ public class TexturedDrawableConsumer implements DrawableConsumer { } @Override - public void render(DrawableHelper helper, int mouseX, int mouseY, float delta) { + public void render(@NotNull DrawableHelper helper, int mouseX, int mouseY, float delta) { MinecraftClient.getInstance().getTextureManager().bindTexture(identifier); innerBlit(x, x + width, y, y + height, helper.getZOffset(), uWidth, vHeight, u, v, textureWidth, textureHeight); } |
