aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java
diff options
context:
space:
mode:
authorDanielshe <shekwancheung0528@gmail.com>2019-11-03 19:02:00 +0800
committerDanielshe <shekwancheung0528@gmail.com>2019-11-03 19:02:00 +0800
commitad7f945d6f724d51ee843b334838fda84c6197f2 (patch)
treeb67cd5a1b95826435ef54813e4221ff3fda39212 /src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java
parent9f5a9eae9a7863412cc5eb433bf15e5ee71da616 (diff)
downloadRoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.tar.gz
RoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.tar.bz2
RoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.zip
API Changes
Diffstat (limited to 'src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java')
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java318
1 files changed, 0 insertions, 318 deletions
diff --git a/src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java b/src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java
deleted file mode 100644
index 372736567..000000000
--- a/src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java
+++ /dev/null
@@ -1,318 +0,0 @@
-/*
- * Roughly Enough Items by Danielshe.
- * Licensed under the MIT License.
- */
-
-package me.shedaniel.rei.gui.widget;
-
-import com.google.common.collect.Lists;
-import com.mojang.blaze3d.systems.RenderSystem;
-import me.shedaniel.math.api.Rectangle;
-import me.shedaniel.math.impl.PointHelper;
-import me.shedaniel.rei.RoughlyEnoughItemsCore;
-import me.shedaniel.rei.api.ClientHelper;
-import me.shedaniel.rei.api.EntryStack;
-import me.shedaniel.rei.api.Renderer;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
-import me.shedaniel.rei.gui.renderers.FluidRenderer;
-import me.shedaniel.rei.gui.renderers.ItemStackRenderer;
-import me.shedaniel.rei.impl.ScreenHelper;
-import me.shedaniel.rei.utils.CollectionUtils;
-import net.minecraft.client.gui.Element;
-import net.minecraft.fluid.Fluid;
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.Formatting;
-import net.minecraft.util.Identifier;
-import net.minecraft.util.math.MathHelper;
-import net.minecraft.util.registry.Registry;
-
-import java.util.Collections;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Locale;
-import java.util.function.Function;
-
-@SuppressWarnings("deprecation")
-public class SlotWidget extends WidgetWithBounds {
-
- public static final Identifier RECIPE_GUI = new Identifier("roughlyenoughitems", "textures/gui/recipecontainer.png");
- public static final Identifier RECIPE_GUI_DARK = new Identifier("roughlyenoughitems", "textures/gui/recipecontainer_dark.png");
- private static final Function<ItemStack, Renderer> ITEM_STACK_RENDERER = Renderer::fromItemStack;
- private Rectangle bounds;
- private List<Renderer> renderers = new LinkedList<>();
- private boolean drawBackground, showToolTips, clickToMoreRecipes, drawHighlightedBackground;
-
- public SlotWidget(int x, int y, Renderer renderer, boolean drawBackground, boolean showToolTips) {
- this(x, y, Collections.singletonList(renderer), drawBackground, showToolTips);
- }
-
- public SlotWidget(int x, int y, Renderer renderer, boolean drawBackground, boolean showToolTips, boolean clickToMoreRecipes) {
- this(x, y, Collections.singletonList(renderer), drawBackground, showToolTips, clickToMoreRecipes);
- }
-
- public SlotWidget(int x, int y, List<Renderer> renderers, boolean drawBackground, boolean showToolTips) {
- this.renderers = renderers;
- this.drawBackground = drawBackground;
- this.showToolTips = showToolTips;
- this.bounds = new Rectangle(x - 1, y - 1, 18, 18);
- this.clickToMoreRecipes = false;
- this.drawHighlightedBackground = true;
- }
-
- public SlotWidget(int x, int y, List<Renderer> itemList, boolean drawBackground, boolean showToolTips, boolean clickToMoreRecipes) {
- this(x, y, itemList, drawBackground, showToolTips);
- this.clickToMoreRecipes = clickToMoreRecipes;
- }
-
- /**
- * @see WidgetWithBounds#getBounds()
- */
- @ToBeRemoved
- @Deprecated
- public int getX() {
- return bounds.x + 1;
- }
-
- /**
- * @see WidgetWithBounds#getBounds()
- */
- @ToBeRemoved
- @Deprecated
- public void setX(int x) {
- bounds.x = x - 1;
- }
-
- /**
- * @see WidgetWithBounds#getBounds()
- */
- @ToBeRemoved
- @Deprecated
- public int getY() {
- return bounds.y + 1;
- }
-
- /**
- * @see WidgetWithBounds#getBounds()
- */
- @ToBeRemoved
- @Deprecated
- public void setY(int y) {
- bounds.y = y - 1;
- }
-
- public boolean isShowToolTips() {
- return showToolTips;
- }
-
- public void setShowToolTips(boolean showToolTips) {
- this.showToolTips = showToolTips;
- }
-
- public boolean isClickToMoreRecipes() {
- return clickToMoreRecipes;
- }
-
- public void setClickToMoreRecipes(boolean clickToMoreRecipes) {
- this.clickToMoreRecipes = clickToMoreRecipes;
- }
-
- public boolean isDrawHighlightedBackground() {
- return drawHighlightedBackground;
- }
-
- public void setDrawHighlightedBackground(boolean drawHighlightedBackground) {
- this.drawHighlightedBackground = drawHighlightedBackground;
- }
-
- @Override
- public List<? extends Element> children() {
- return Collections.emptyList();
- }
-
- public boolean isDrawBackground() {
- return drawBackground;
- }
-
- public void setDrawBackground(boolean drawBackground) {
- this.drawBackground = drawBackground;
- }
-
- @Override
- public void render(int mouseX, int mouseY, float delta) {
- Renderer renderer = getCurrentRenderer();
- boolean darkTheme = ScreenHelper.isDarkModeEnabled();
- if (drawBackground) {
- minecraft.getTextureManager().bindTexture(darkTheme ? RECIPE_GUI_DARK : RECIPE_GUI);
- blit(bounds.x, bounds.y, 0, 222, bounds.width, bounds.height);
- }
- boolean highlighted = containsMouse(mouseX, mouseY);
- renderer.setBlitOffset(200);
- renderer.render(bounds.x + 9, bounds.y + 7, mouseX, mouseY, delta);
- if (highlighted && showToolTips) {
- QueuedTooltip queuedTooltip = renderer.getQueuedTooltip(delta);
- if (queuedTooltip != null) {
- ScreenHelper.getLastOverlay().addTooltip(queuedTooltip);
- }
- }
- if (drawHighlightedBackground && highlighted) {
- RenderSystem.disableLighting();
- RenderSystem.disableDepthTest();
- RenderSystem.colorMask(true, true, true, false);
- int color = darkTheme ? -1877929711 : -2130706433;
- setBlitOffset(300);
- fillGradient(bounds.x + 1, bounds.y + 1, bounds.getMaxX() - 1, bounds.getMaxY() - 1, color, color);
- setBlitOffset(0);
- RenderSystem.colorMask(true, true, true, true);
- RenderSystem.enableLighting();
- RenderSystem.enableDepthTest();
- }
- }
- /**
- * @deprecated Not used anymore, see {@link Renderer#getQueuedTooltip(float)}
- */
- @ToBeRemoved
- @Deprecated
- protected void queueTooltip(Fluid fluid, float delta) {
- ScreenHelper.getLastOverlay().addTooltip(QueuedTooltip.create(getTooltip(fluid)));
- }
-
- /**
- * @deprecated Not used anymore, see {@link Renderer#getQueuedTooltip(float)}
- */
- @ToBeRemoved
- @Deprecated
- private List<String> getTooltip(Fluid fluid) {
- List<String> toolTip = Lists.newArrayList(EntryListWidget.tryGetFluidName(fluid));
- toolTip.addAll(getExtraFluidToolTips(fluid));
- if (RoughlyEnoughItemsCore.getConfigManager().getConfig().shouldAppendModNames()) {
- final String modString = ClientHelper.getInstance().getFormattedModFromIdentifier(Registry.FLUID.getId(fluid));
- boolean alreadyHasMod = false;
- for (String s : toolTip)
- if (s.equalsIgnoreCase(modString)) {
- alreadyHasMod = true;
- break;
- }
- if (!alreadyHasMod)
- toolTip.add(modString);
- }
- return toolTip;
- }
-
- /**
- * @deprecated Not used anymore, see {@link Renderer#getQueuedTooltip(float)}
- */
- @ToBeRemoved
- @Deprecated
- protected void queueTooltip(ItemStack itemStack, float delta) {
- ScreenHelper.getLastOverlay().addTooltip(QueuedTooltip.create(getTooltip(itemStack)));
- }
-
- /**
- * @deprecated Not used anymore, see {@link Renderer#getQueuedTooltip(float)}
- */
- @ToBeRemoved
- @Deprecated
- protected List<String> getTooltip(ItemStack itemStack) {
- List<String> toolTip = Lists.newArrayList(EntryListWidget.tryGetItemStackToolTip(itemStack, true));
- toolTip.addAll(getExtraItemToolTips(itemStack));
- if (RoughlyEnoughItemsCore.getConfigManager().getConfig().shouldAppendModNames()) {
- final String modString = ClientHelper.getInstance().getFormattedModFromItem(itemStack.getItem());
- String s1 = ClientHelper.getInstance().getModFromItem(itemStack.getItem()).toLowerCase(Locale.ROOT);
- if (!modString.isEmpty()) {
- toolTip.removeIf(s -> !s.equals(toolTip.get(0)) && Formatting.strip(s).equalsIgnoreCase(s1));
- toolTip.add(modString);
- }
- }
- return toolTip;
- }
-
- /**
- * @deprecated See {@link ItemStackRenderer#getExtraToolTips(ItemStack)}
- */
- @ToBeRemoved
- @Deprecated
- protected List<String> getExtraItemToolTips(ItemStack stack) {
- return Collections.emptyList();
- }
-
- /**
- * @deprecated See {@link FluidRenderer#getExtraToolTips(Fluid)}
- */
- @ToBeRemoved
- @Deprecated
- protected List<String> getExtraFluidToolTips(Fluid fluid) {
- return Collections.emptyList();
- }
-
- @ToBeRemoved
- @Deprecated
- public ItemStack getCurrentItemStack() {
- if (getCurrentRenderer() instanceof ItemStackRenderer)
- return ((ItemStackRenderer) getCurrentRenderer()).getItemStack();
- return ItemStack.EMPTY;
- }
-
- public Renderer getCurrentRenderer() {
- if (renderers.isEmpty())
- return Renderer.empty();
- return renderers.get(MathHelper.floor((System.currentTimeMillis() / 500 % (double) renderers.size()) / 1f));
- }
-
- /**
- * @param itemList the list of items
- * @deprecated Use {@link SlotWidget#setRenderers(List)}
- */
- @ToBeRemoved
- @Deprecated
- public void setItemList(List<ItemStack> itemList) {
- setRenderers(CollectionUtils.map(itemList, ITEM_STACK_RENDERER));
- }
-
- public void setRenderers(List<Renderer> renderers) {
- this.renderers = renderers;
- }
-
- @Override
- public Rectangle getBounds() {
- return bounds;
- }
-
- @Override
- public boolean mouseClicked(double mouseX, double mouseY, int button) {
- if (!clickToMoreRecipes)
- return false;
- EntryStack entry = getCurrentRenderer().getEntry();
- if (getBounds().contains(mouseX, mouseY))
- if (button == 0)
- return ClientHelper.getInstance().executeRecipeKeyBind(entry);
- else if (button == 1)
- return ClientHelper.getInstance().executeUsageKeyBind(entry);
- return false;
- }
-
- @ToBeRemoved
- @Deprecated
- public boolean isCurrentRendererItem() {
- return getCurrentRenderer() instanceof ItemStackRenderer;
- }
-
- @ToBeRemoved
- @Deprecated
- public boolean isCurrentRendererFluid() {
- return getCurrentRenderer() instanceof FluidRenderer;
- }
-
- @Override
- public boolean keyPressed(int int_1, int int_2, int int_3) {
- if (!clickToMoreRecipes)
- return false;
- EntryStack entry = getCurrentRenderer().getEntry();
- if (getBounds().contains(PointHelper.fromMouse()))
- if (ClientHelper.getInstance().getRecipeKeyBinding().matchesKey(int_1, int_2))
- return ClientHelper.getInstance().executeRecipeKeyBind(entry);
- else if (ClientHelper.getInstance().getUsageKeyBinding().matchesKey(int_1, int_2))
- return ClientHelper.getInstance().executeUsageKeyBind(entry);
- return false;
- }
-
-}