diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-06-11 01:13:58 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2022-06-11 01:13:58 +0800 |
| commit | 92a438eef6f217d7b2d3ee21c6efb68ac2498d0a (patch) | |
| tree | ad45925f49339f39494455a62e991ae2573fd817 /api/src | |
| parent | b99ba98ffeaff540a15dd7b188a9793539fd2bb7 (diff) | |
| parent | 0e2a66156d69bb6d8d37a1c05f59abde42d62ebc (diff) | |
| download | RoughlyEnoughItems-92a438eef6f217d7b2d3ee21c6efb68ac2498d0a.tar.gz RoughlyEnoughItems-92a438eef6f217d7b2d3ee21c6efb68ac2498d0a.tar.bz2 RoughlyEnoughItems-92a438eef6f217d7b2d3ee21c6efb68ac2498d0a.zip | |
Merge remote-tracking branch 'origin/8.x-1.18.2' into 9.x-1.19
# Conflicts:
# api/src/main/java/me/shedaniel/rei/api/client/registry/transfer/TransferHandler.java
# default-plugin/src/main/java/me/shedaniel/rei/plugin/client/DefaultClientPlugin.java
# fabric/src/main/java/me/shedaniel/rei/impl/client/gui/fabric/ScreenOverlayImplImpl.java
# runtime/src/main/java/me/shedaniel/rei/impl/client/gui/screen/AbstractDisplayViewingScreen.java
# runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/AutoCraftingEvaluator.java
# runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/QueuedTooltip.java
Diffstat (limited to 'api/src')
4 files changed, 34 insertions, 4 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/client/config/ConfigObject.java b/api/src/main/java/me/shedaniel/rei/api/client/config/ConfigObject.java index 27707d21a..efbe5aca1 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/config/ConfigObject.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/config/ConfigObject.java @@ -157,7 +157,7 @@ public interface ConfigObject { boolean isLowerConfigButton(); - @ApiStatus.Experimental + @Deprecated(forRemoval = true) List<FavoriteEntry> getFavoriteEntries(); @ApiStatus.Experimental diff --git a/api/src/main/java/me/shedaniel/rei/api/client/favorites/FavoriteEntryType.java b/api/src/main/java/me/shedaniel/rei/api/client/favorites/FavoriteEntryType.java index d3e54425f..35a5e8f96 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/favorites/FavoriteEntryType.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/favorites/FavoriteEntryType.java @@ -68,15 +68,27 @@ public interface FavoriteEntryType<T extends FavoriteEntry> { Iterable<Section> sections(); + /** + * @deprecated {@link FavoriteEntryType.Section#add(boolean, FavoriteEntry...)} + */ + @Deprecated(forRemoval = true) <A extends FavoriteEntry> void registerSystemFavorites(SystemFavoriteEntryProvider<A> provider); } @ApiStatus.NonExtendable interface Section { - void add(FavoriteEntry... entries); + default void add(FavoriteEntry... entries) { + add(false, entries); + } + + @ApiStatus.Experimental + void add(boolean defaultFavorited, FavoriteEntry... entries); Component getText(); List<FavoriteEntry> getEntries(); + + @ApiStatus.Experimental + List<FavoriteEntry> getDefaultEntries(); } } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/favorites/SystemFavoriteEntryProvider.java b/api/src/main/java/me/shedaniel/rei/api/client/favorites/SystemFavoriteEntryProvider.java index bc450317a..2d2dffea3 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/favorites/SystemFavoriteEntryProvider.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/favorites/SystemFavoriteEntryProvider.java @@ -27,8 +27,12 @@ import org.jetbrains.annotations.ApiStatus; import java.util.List; +/** + * @deprecated {@link FavoriteEntryType.Section#add(boolean, FavoriteEntry...)} + */ @FunctionalInterface @ApiStatus.Experimental +@Deprecated(forRemoval = true) public interface SystemFavoriteEntryProvider<T extends FavoriteEntry> { List<T> provide(); diff --git a/api/src/main/java/me/shedaniel/rei/api/client/registry/transfer/TransferHandler.java b/api/src/main/java/me/shedaniel/rei/api/client/registry/transfer/TransferHandler.java index bfb63808d..55f50e2b3 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/registry/transfer/TransferHandler.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/registry/transfer/TransferHandler.java @@ -36,6 +36,7 @@ import net.minecraft.world.inventory.AbstractContainerMenu; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.Nullable; +import java.util.ArrayList; import java.util.List; import java.util.function.BiConsumer; import java.util.function.Supplier; @@ -129,6 +130,8 @@ public interface TransferHandler extends Comparable<TransferHandler> { @ApiStatus.Experimental Result overrideTooltipRenderer(BiConsumer<Point, TooltipSink> renderer); + Result tooltip(Component component); + /** * @return whether this handler has successfully handled the transfer. */ @@ -209,6 +212,7 @@ public interface TransferHandler extends Comparable<TransferHandler> { final class ResultImpl implements Result { private boolean successful, applicable, returningToScreen, blocking; private Component error; + private List<Component> tooltips = new ArrayList<>(); private TransferHandlerRenderer renderer; private BiConsumer<Point, TooltipSink> tooltipRenderer; private int color; @@ -264,6 +268,12 @@ public interface TransferHandler extends Comparable<TransferHandler> { } @Override + public Result tooltip(Component component) { + this.tooltips.add(component); + return this; + } + + @Override public boolean isSuccessful() { return successful; } @@ -300,8 +310,12 @@ public interface TransferHandler extends Comparable<TransferHandler> { @Override public void fillTooltip(List<Component> components) { - if (!isSuccessful() && isApplicable()) { - components.add(getError()); + if (isApplicable()) { + if (isSuccessful()) { + components.addAll(tooltips); + } else { + components.add(getError()); + } } } } |
