aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me
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
parent9f5a9eae9a7863412cc5eb433bf15e5ee71da616 (diff)
downloadRoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.tar.gz
RoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.tar.bz2
RoughlyEnoughItems-ad7f945d6f724d51ee843b334838fda84c6197f2.zip
API Changes
Diffstat (limited to 'src/main/java/me')
-rw-r--r--src/main/java/me/shedaniel/rei/api/Entry.java52
-rw-r--r--src/main/java/me/shedaniel/rei/api/EntryRegistry.java68
-rw-r--r--src/main/java/me/shedaniel/rei/api/EntryStack.java7
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeCategory.java17
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeDisplay.java65
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeHelper.java42
-rw-r--r--src/main/java/me/shedaniel/rei/api/Renderer.java211
-rw-r--r--src/main/java/me/shedaniel/rei/api/TransferRecipeDisplay.java23
-rw-r--r--src/main/java/me/shedaniel/rei/gui/OverlaySearchField.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java9
-rw-r--r--src/main/java/me/shedaniel/rei/gui/VillagerRecipeViewingScreen.java125
-rw-r--r--src/main/java/me/shedaniel/rei/gui/entries/RecipeEntry.java117
-rw-r--r--src/main/java/me/shedaniel/rei/gui/renderers/EmptyRenderer.java23
-rw-r--r--src/main/java/me/shedaniel/rei/gui/renderers/FluidRenderer.java122
-rw-r--r--src/main/java/me/shedaniel/rei/gui/renderers/ItemStackRenderer.java106
-rw-r--r--src/main/java/me/shedaniel/rei/gui/renderers/RecipeRenderer.java18
-rw-r--r--src/main/java/me/shedaniel/rei/gui/renderers/SimpleRecipeEntry.java (renamed from src/main/java/me/shedaniel/rei/gui/renderers/SimpleRecipeRenderer.java)98
-rw-r--r--src/main/java/me/shedaniel/rei/gui/toast/CopyRecipeIdentifierToast.java1
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java1
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ClickableLabelWidget.java14
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/DetailedButtonWidget.java48
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/EntryListWidget.java22
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/EntryWidget.java29
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/LabelWidget.java5
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/PanelWidget.java11
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/RecipeArrowWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/RecipeBaseWidget.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/SlotWidget.java318
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/TabWidget.java2
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/Widget.java4
-rw-r--r--src/main/java/me/shedaniel/rei/impl/AbstractEntryStack.java4
-rw-r--r--src/main/java/me/shedaniel/rei/impl/BaseBoundsHandlerImpl.java1
-rw-r--r--src/main/java/me/shedaniel/rei/impl/EmptyEntryStack.java6
-rw-r--r--src/main/java/me/shedaniel/rei/impl/FluidEntry.java53
-rw-r--r--src/main/java/me/shedaniel/rei/impl/FluidEntryStack.java6
-rw-r--r--src/main/java/me/shedaniel/rei/impl/ItemEntryStack.java19
-rw-r--r--src/main/java/me/shedaniel/rei/impl/ItemStackEntry.java53
-rw-r--r--src/main/java/me/shedaniel/rei/impl/RecipeHelperImpl.java20
-rw-r--r--src/main/java/me/shedaniel/rei/mixin/MixinBrewingRecipeRegistry.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java16
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java33
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/brewing/DefaultBrewingDisplay.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/campfire/DefaultCampfireDisplay.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/composting/DefaultCompostingCategory.java20
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingCategory.java17
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/cooking/DefaultCookingDisplay.java13
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/crafting/DefaultCraftingCategory.java10
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapedDisplay.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/crafting/DefaultShapelessDisplay.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingCategory.java4
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/stonecutting/DefaultStoneCuttingDisplay.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/stripping/DefaultStrippingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/utils/CollectionUtils.java21
56 files changed, 403 insertions, 1489 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/Entry.java b/src/main/java/me/shedaniel/rei/api/Entry.java
deleted file mode 100644
index c0eb609bb..000000000
--- a/src/main/java/me/shedaniel/rei/api/Entry.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Roughly Enough Items by Danielshe.
- * Licensed under the MIT License.
- */
-
-package me.shedaniel.rei.api;
-
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
-import me.shedaniel.rei.impl.FluidEntry;
-import me.shedaniel.rei.impl.ItemStackEntry;
-import net.minecraft.fluid.Fluid;
-import net.minecraft.item.ItemStack;
-
-import javax.annotation.Nullable;
-
-@Deprecated
-@ToBeRemoved
-public interface Entry extends Cloneable {
- @SuppressWarnings("deprecation")
- static Entry create(ItemStack itemStack) {
- return new ItemStackEntry(itemStack);
- }
-
- @SuppressWarnings("deprecation")
- static Entry create(Fluid fluid) {
- return new FluidEntry(fluid);
- }
-
- Type getEntryType();
-
- @Nullable
- ItemStack getItemStack();
-
- @Nullable
- Fluid getFluid();
-
- Entry clone();
-
- default EntryStack toEntryStack() {
- if (getEntryType() == Type.ITEM)
- return EntryStack.create(getItemStack());
- if (getEntryType() == Type.FLUID)
- return EntryStack.create(getFluid());
- return EntryStack.empty();
- }
-
- boolean equalsEntry(Entry other, boolean checkTags);
-
- public static enum Type {
- ITEM, FLUID
- }
-}
diff --git a/src/main/java/me/shedaniel/rei/api/EntryRegistry.java b/src/main/java/me/shedaniel/rei/api/EntryRegistry.java
index 9a811a127..338986578 100644
--- a/src/main/java/me/shedaniel/rei/api/EntryRegistry.java
+++ b/src/main/java/me/shedaniel/rei/api/EntryRegistry.java
@@ -5,28 +5,15 @@
package me.shedaniel.rei.api;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
import me.shedaniel.rei.utils.CollectionUtils;
-import net.minecraft.fluid.Fluid;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
-import java.util.Collections;
import java.util.List;
public interface EntryRegistry {
/**
- * Gets the current unmodifiable item list
- *
- * @return an unmodifiable item list
- */
- @Deprecated
- default List<Entry> getEntryList() {
- return Collections.unmodifiableList(getModifiableEntryList());
- }
-
- /**
* Gets the current modifiable stacks list
*
* @return a stacks list
@@ -34,16 +21,6 @@ public interface EntryRegistry {
List<EntryStack> getStacksList();
/**
- * Gets the current modifiable item list
- *
- * @return an modifiable item list
- */
- @Deprecated
- default List<Entry> getModifiableEntryList() {
- return CollectionUtils.map(getStacksList(), EntryStack::toEntry);
- }
-
- /**
* Gets all possible stacks from an item
*
* @param item the item to find
@@ -51,39 +28,18 @@ public interface EntryRegistry {
*/
ItemStack[] getAllStacksFromItem(Item item);
- /**
- * Registers an new stack to the item list
- *
- * @param afterItem the stack to put after
- * @param stack the stack to register
- */
- @Deprecated
- default void registerItemStack(Item afterItem, ItemStack stack) {
- registerEntryAfter(EntryStack.create(afterItem), EntryStack.create(stack));
- }
-
- @Deprecated
- default void registerFluid(Fluid fluid) {
- registerEntry(EntryStack.create(fluid));
- }
-
default void registerEntry(EntryStack stack) {
registerEntryAfter(null, stack);
}
+ /**
+ * Registers an new stack to the entry list
+ *
+ * @param afterEntry the stack to put after
+ * @param stack the stack to register
+ */
void registerEntryAfter(EntryStack afterEntry, EntryStack stack);
- @ToBeRemoved
- @Deprecated
- default void registerItemStack(Item afterItem, ItemStack... stacks) {
- EntryStack afterStack = EntryStack.create(afterItem);
- for (int i = stacks.length - 1; i >= 0; i--) {
- ItemStack stack = stacks[i];
- if (stack != null && !stack.isEmpty())
- registerEntryAfter(afterStack, EntryStack.create(stack));
- }
- }
-
/**
* Registers multiple stacks to the item list
*
@@ -98,12 +54,6 @@ public interface EntryRegistry {
}
}
- @ToBeRemoved
- @Deprecated
- default void registerItemStack(ItemStack... stacks) {
- registerItemStack(null, stacks);
- }
-
/**
* Registers multiple stacks to the item list
*
@@ -113,12 +63,6 @@ public interface EntryRegistry {
registerEntriesAfter(null, stacks);
}
- @ToBeRemoved
- @Deprecated
- default boolean alreadyContain(ItemStack stack) {
- return alreadyContain(EntryStack.create(stack));
- }
-
/**
* Checks if a stack is already registered
*
diff --git a/src/main/java/me/shedaniel/rei/api/EntryStack.java b/src/main/java/me/shedaniel/rei/api/EntryStack.java
index 3baa4e5e0..01fc901b4 100644
--- a/src/main/java/me/shedaniel/rei/api/EntryStack.java
+++ b/src/main/java/me/shedaniel/rei/api/EntryStack.java
@@ -6,7 +6,6 @@
package me.shedaniel.rei.api;
import me.shedaniel.math.api.Rectangle;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
import me.shedaniel.rei.gui.widget.QueuedTooltip;
import me.shedaniel.rei.impl.EmptyEntryStack;
import me.shedaniel.rei.impl.FluidEntryStack;
@@ -61,10 +60,6 @@ public interface EntryStack {
boolean isEmpty();
- @ToBeRemoved
- @Deprecated
- Entry toEntry();
-
EntryStack copy();
Object getObject();
@@ -119,7 +114,7 @@ public interface EntryStack {
void render(Rectangle bounds, int mouseX, int mouseY, float delta);
public static enum Type {
- ITEM, FLUID, EMPTY
+ ITEM, FLUID, EMPTY, RENDER
}
public static class Settings<T> {
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
index 4cecb6fce..82ed70eca 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
@@ -6,9 +6,9 @@
package me.shedaniel.rei.api;
import me.shedaniel.math.api.Rectangle;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
import me.shedaniel.rei.gui.RecipeViewingScreen;
-import me.shedaniel.rei.gui.renderers.RecipeRenderer;
+import me.shedaniel.rei.gui.entries.RecipeEntry;
+import me.shedaniel.rei.gui.renderers.SimpleRecipeEntry;
import me.shedaniel.rei.gui.widget.CategoryBaseWidget;
import me.shedaniel.rei.gui.widget.RecipeBaseWidget;
import me.shedaniel.rei.gui.widget.Widget;
@@ -33,17 +33,10 @@ public interface RecipeCategory<T extends RecipeDisplay> {
/**
* Gets the renderer of the icon, allowing developers to render things other than items
*
- * @see RecipeCategory#getLogo()
* @return the renderer of the icon
*/
- @ToBeRemoved
- @Deprecated
- default Renderer getIcon() {
- return Renderer.empty();
- }
-
default EntryStack getLogo() {
- return getIcon().getEntry();
+ return EntryStack.empty();
}
/**
@@ -60,8 +53,8 @@ public interface RecipeCategory<T extends RecipeDisplay> {
* @return the recipe renderer
*/
@SuppressWarnings("unchecked")
- default RecipeRenderer getSimpleRenderer(T recipe) {
- return Renderer.fromRecipeEntries(recipe::getInputEntries, recipe::getOutputEntries);
+ default RecipeEntry getSimpleRenderer(T recipe) {
+ return SimpleRecipeEntry.create(recipe::getInputEntries, recipe::getOutputEntries);
}
/**
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java b/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java
index dd563f01a..328d28973 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeDisplay.java
@@ -5,11 +5,8 @@
package me.shedaniel.rei.api;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
-import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
-import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
@@ -17,55 +14,14 @@ import java.util.Optional;
public interface RecipeDisplay {
/**
- * @return a list of items
- * @see RecipeDisplay#getInputStacks()
- */
- @ToBeRemoved
- @Deprecated
- default List<List<ItemStack>> getInput() {
- return Collections.emptyList();
- }
-
- /**
* @return a list of inputs
*/
- default List<List<EntryStack>> getInputEntries() {
- List<List<ItemStack>> input = getInput();
- if (input.isEmpty())
- return Collections.emptyList();
- List<List<EntryStack>> list = new ArrayList<>();
- for (List<ItemStack> stacks : input) {
- List<EntryStack> entries = new ArrayList<>();
- for (ItemStack stack : stacks) {
- entries.add(EntryStack.create(stack));
- }
- list.add(entries);
- }
- return list;
- }
+ List<List<EntryStack>> getInputEntries();
/**
* @return a list of outputs
*/
- @ToBeRemoved
- @Deprecated
- default List<ItemStack> getOutput() {
- return Collections.emptyList();
- }
-
- /**
- * @return a list of outputs
- */
- default List<EntryStack> getOutputEntries() {
- List<ItemStack> input = getOutput();
- if (input.isEmpty())
- return Collections.emptyList();
- List<EntryStack> entries = new ArrayList<>();
- for (ItemStack stack : input) {
- entries.add(EntryStack.create(stack));
- }
- return entries;
- }
+ List<EntryStack> getOutputEntries();
/**
* Gets the required items used in craftable filters
@@ -73,23 +29,6 @@ public interface RecipeDisplay {
* @return the list of required items
*/
default List<List<EntryStack>> getRequiredEntries() {
- List<List<ItemStack>> input = getRequiredItems();
- if (input.isEmpty())
- return Collections.emptyList();
- List<List<EntryStack>> list = new ArrayList<>();
- for (List<ItemStack> stacks : input) {
- List<EntryStack> entries = new ArrayList<>();
- for (ItemStack stack : stacks) {
- entries.add(EntryStack.create(stack));
- }
- list.add(entries);
- }
- return list;
- }
-
- @ToBeRemoved
- @Deprecated
- default List<List<ItemStack>> getRequiredItems() {
return Collections.emptyList();
}
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
index 9c66a6eb4..30915a794 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
@@ -7,14 +7,11 @@ package me.shedaniel.rei.api;
import me.shedaniel.math.api.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
-import net.minecraft.item.ItemStack;
import net.minecraft.recipe.Recipe;
import net.minecraft.recipe.RecipeManager;
import net.minecraft.util.Identifier;
-import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
@@ -50,24 +47,9 @@ public interface RecipeHelper {
* Gets all craftable items from materials.
*
* @param inventoryItems the materials
- * @return the list of craftable items
- */
- default List<ItemStack> findCraftableByItems(List<ItemStack> inventoryItems) {
- List<ItemStack> itemStacks = new ArrayList<>();
- for (EntryStack item : findCraftableEntriesByItems(inventoryItems)) {
- if (item.getItemStack() != null)
- itemStacks.add(item.getItemStack());
- }
- return itemStacks;
- }
-
- /**
- * Gets all craftable items from materials.
- *
- * @param inventoryItems the materials
* @return the list of craftable entries
*/
- List<EntryStack> findCraftableEntriesByItems(List<ItemStack> inventoryItems);
+ List<EntryStack> findCraftableEntriesByItems(List<EntryStack> inventoryItems);
/**
* Registers a category
@@ -82,7 +64,7 @@ public interface RecipeHelper {
* @param category the category
* @param workingStations the working stations
*/
- void registerWorkingStations(Identifier category, List<ItemStack>... workingStations);
+ void registerWorkingStations(Identifier category, List<EntryStack>... workingStations);
/**
* Registers the working stations of a category
@@ -90,9 +72,9 @@ public interface RecipeHelper {
* @param category the category
* @param workingStations the working stations
*/
- void registerWorkingStations(Identifier category, ItemStack... workingStations);
+ void registerWorkingStations(Identifier category, EntryStack... workingStations);
- List<List<ItemStack>> getWorkingStations(Identifier category);
+ List<List<EntryStack>> getWorkingStations(Identifier category);
/**
* Registers a recipe display
@@ -103,19 +85,13 @@ public interface RecipeHelper {
void registerDisplay(Identifier categoryIdentifier, RecipeDisplay display);
/**
- * Gets a map of recipes for an itemstack
+ * Gets a map of recipes for an entry
*
* @param stack the stack to be crafted
* @return the map of recipes
*/
Map<RecipeCategory<?>, List<RecipeDisplay>> getRecipesFor(EntryStack stack);
- @ToBeRemoved
- @Deprecated
- default Map<RecipeCategory<?>, List<RecipeDisplay>> getRecipesFor(ItemStack stack) {
- return getRecipesFor(EntryStack.create(stack));
- }
-
RecipeCategory getCategory(Identifier identifier);
/**
@@ -133,19 +109,13 @@ public interface RecipeHelper {
List<RecipeCategory> getAllCategories();
/**
- * Gets a map of usages for an itemstack
+ * Gets a map of usages for an entry
*
* @param stack the stack to be used
* @return the map of recipes
*/
Map<RecipeCategory<?>, List<RecipeDisplay>> getUsagesFor(EntryStack stack);
- @ToBeRemoved
- @Deprecated
- default Map<RecipeCategory<?>, List<RecipeDisplay>> getUsagesFor(ItemStack stack) {
- return getUsagesFor(EntryStack.create(stack));
- }
-
/**
* Gets the optional of the speed crafting button area from a category
*
diff --git a/src/main/java/me/shedaniel/rei/api/Renderer.java b/src/main/java/me/shedaniel/rei/api/Renderer.java
deleted file mode 100644
index 823a9ceb5..000000000
--- a/src/main/java/me/shedaniel/rei/api/Renderer.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * Roughly Enough Items by Danielshe.
- * Licensed under the MIT License.
- */
-
-package me.shedaniel.rei.api;
-
-import me.shedaniel.rei.api.annotations.ToBeRemoved;
-import me.shedaniel.rei.gui.renderers.EmptyRenderer;
-import me.shedaniel.rei.gui.renderers.FluidRenderer;
-import me.shedaniel.rei.gui.renderers.ItemStackRenderer;
-import me.shedaniel.rei.gui.renderers.SimpleRecipeRenderer;
-import me.shedaniel.rei.gui.widget.QueuedTooltip;
-import net.minecraft.client.gui.Draw