diff options
| author | shedaniel <daniel@shedaniel.me> | 2022-05-27 18:59:12 +0800 |
|---|---|---|
| committer | shedaniel <daniel@shedaniel.me> | 2022-05-27 18:59:12 +0800 |
| commit | 95195247b173215c6bb48654ac97f78b1dd28cd3 (patch) | |
| tree | 3b5d598b332ea6bf29f8d58261ab296be2ef3a2a | |
| parent | 0557246d6a3fa48133272c7fcb532ffd41181437 (diff) | |
| download | RoughlyEnoughItems-95195247b173215c6bb48654ac97f78b1dd28cd3.tar.gz RoughlyEnoughItems-95195247b173215c6bb48654ac97f78b1dd28cd3.tar.bz2 RoughlyEnoughItems-95195247b173215c6bb48654ac97f78b1dd28cd3.zip | |
Refactor Point -> TooltipContext
19 files changed, 51 insertions, 99 deletions
diff --git a/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/EntryRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/EntryRenderer.java index c51309603..aa2ce6db8 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/EntryRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/EntryRenderer.java @@ -24,7 +24,6 @@ package me.shedaniel.rei.api.client.entry.renderer; import com.mojang.blaze3d.vertex.PoseStack; -import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; @@ -54,16 +53,7 @@ public interface EntryRenderer<T> extends EntryRendererProvider<T> { @Nullable @Environment(EnvType.CLIENT) - @Deprecated(forRemoval = true, since = "8.3") - default Tooltip getTooltip(EntryStack<T> entry, Point mouse) { - return null; - } - - @Nullable - @Environment(EnvType.CLIENT) - default Tooltip getTooltip(EntryStack<T> entry, TooltipContext context) { - return getTooltip(entry, context.getPoint()); - } + Tooltip getTooltip(EntryStack<T> entry, TooltipContext context); @ApiStatus.NonExtendable default <O> EntryRenderer<O> cast() { diff --git a/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/ForwardingEntryRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/ForwardingEntryRenderer.java index 229020ad4..999a50d4b 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/ForwardingEntryRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/entry/renderer/ForwardingEntryRenderer.java @@ -24,7 +24,6 @@ package me.shedaniel.rei.api.client.entry.renderer; import com.mojang.blaze3d.vertex.PoseStack; -import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; @@ -45,12 +44,6 @@ public abstract class ForwardingEntryRenderer<T> implements EntryRenderer<T> { @Override @Nullable - public Tooltip getTooltip(EntryStack<T> entry, Point mouse) { - return this.next.getTooltip(entry, TooltipContext.of(mouse)); - } - - @Override - @Nullable public Tooltip getTooltip(EntryStack<T> entry, TooltipContext context) { return this.next.getTooltip(entry, context); } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/DisplayRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/DisplayRenderer.java index 9540c1ef6..98967729a 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/DisplayRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/DisplayRenderer.java @@ -23,7 +23,6 @@ package me.shedaniel.rei.api.client.gui; -import me.shedaniel.math.Point; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import net.fabricmc.api.EnvType; @@ -42,7 +41,7 @@ public abstract class DisplayRenderer extends AbstractRenderer { @Override @Nullable - public Tooltip getTooltip(Point mouse) { + public Tooltip getTooltip(TooltipContext mouse) { return null; } } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/Renderer.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/Renderer.java index c0a40c0ec..317fed296 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/Renderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/Renderer.java @@ -41,15 +41,8 @@ public interface Renderer { @Nullable @Environment(EnvType.CLIENT) - @Deprecated(forRemoval = true) - default Tooltip getTooltip(Point mouse) { - return null; - } - - @Nullable - @Environment(EnvType.CLIENT) default Tooltip getTooltip(TooltipContext context) { - return getTooltip(context.getPoint()); + return null; } @Environment(EnvType.CLIENT) diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/SimpleDisplayRenderer.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/SimpleDisplayRenderer.java index b0ce0e735..872c66636 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/SimpleDisplayRenderer.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/SimpleDisplayRenderer.java @@ -30,10 +30,7 @@ import it.unimi.dsi.fastutil.longs.LongOpenHashSet; import it.unimi.dsi.fastutil.longs.LongSet; import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; -import me.shedaniel.rei.api.client.gui.widgets.Slot; -import me.shedaniel.rei.api.client.gui.widgets.Tooltip; -import me.shedaniel.rei.api.client.gui.widgets.WidgetHolder; -import me.shedaniel.rei.api.client.gui.widgets.Widgets; +import me.shedaniel.rei.api.client.gui.widgets.*; import me.shedaniel.rei.api.common.entry.EntryIngredient; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.util.CollectionUtils; @@ -133,14 +130,14 @@ public class SimpleDisplayRenderer extends DisplayRenderer implements WidgetHold @Nullable @Override - public Tooltip getTooltip(Point point) { + public Tooltip getTooltip(TooltipContext context) { for (Slot widget : inputWidgets) { - if (widget.containsMouse(point)) - return widget.getCurrentTooltip(point); + if (widget.containsMouse(context.getPoint())) + return widget.getCurrentTooltip(context); } for (Slot widget : outputWidgets) { - if (widget.containsMouse(point)) - return widget.getCurrentTooltip(point); + if (widget.containsMouse(context.getPoint())) + return widget.getCurrentTooltip(context); } return null; } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Slot.java b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Slot.java index f0b2842e6..cee90d97c 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Slot.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/gui/widgets/Slot.java @@ -23,7 +23,6 @@ package me.shedaniel.rei.api.client.gui.widgets; -import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.common.entry.EntryStack; import org.jetbrains.annotations.Nullable; @@ -141,7 +140,7 @@ public abstract class Slot extends WidgetWithBounds { public abstract Rectangle getInnerBounds(); @Nullable - public Tooltip getCurrentTooltip(Point point) { + public Tooltip getCurrentTooltip(TooltipContext context) { return null; } } diff --git a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/ScreenRegistry.java b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/ScreenRegistry.java index e6423d4e3..92da6b563 100644 --- a/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/ScreenRegistry.java +++ b/api/src/main/java/me/shedaniel/rei/api/client/registry/screen/ScreenRegistry.java @@ -137,14 +137,6 @@ public interface ScreenRegistry extends Reloadable<REIClientPlugin> { registerDraggableComponentProvider(DraggableComponentProviderWidget.toProvider(provider, priority)); } - @ApiStatus.ScheduledForRemoval - @Deprecated(forRemoval = true) - Iterable<DraggableStackProvider<Screen>> getDraggableProviders(); - - @ApiStatus.ScheduledForRemoval - @Deprecated(forRemoval = true) - Iterable<DraggableStackVisitor<Screen>> getDraggableVisitors(); - Iterable<DraggableComponentProvider<Screen, Object>> getDraggableComponentProviders(); Iterable<DraggableComponentVisitor<Screen>> getDraggableComponentVisitors(); diff --git a/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java b/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java index 1067ff6d3..bb0dc58c4 100644 --- a/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java +++ b/api/src/main/java/me/shedaniel/rei/api/common/entry/EntryStack.java @@ -98,22 +98,10 @@ public interface EntryStack<T> extends TextRepresentable, Renderer { @Nullable @Environment(EnvType.CLIENT) - default Tooltip getTooltip(Point mouse, boolean appendModName) { - return getTooltip(TooltipContext.of(mouse), appendModName); - } - - @Nullable - @Environment(EnvType.CLIENT) Tooltip getTooltip(TooltipContext context, boolean appendModName); @Override @Nullable - default Tooltip getTooltip(Point mouse) { - return getTooltip(mouse, ConfigObject.getInstance().shouldAppendModNames()); - } - - @Override - @Nullable default Tooltip getTooltip(TooltipContext context) { return getTooltip(context, ConfigObject.getInstance().shouldAppendModNames()); } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultFuelCategory.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultFuelCategory.java index 21355338b..9ed1f944e 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultFuelCategory.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/categories/DefaultFuelCategory.java @@ -29,10 +29,7 @@ import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.client.gui.DisplayRenderer; import me.shedaniel.rei.api.client.gui.Renderer; -import me.shedaniel.rei.api.client.gui.widgets.Slot; -import me.shedaniel.rei.api.client.gui.widgets.Tooltip; -import me.shedaniel.rei.api.client.gui.widgets.Widget; -import me.shedaniel.rei.api.client.gui.widgets.Widgets; +import me.shedaniel.rei.api.client.gui.widgets.*; import me.shedaniel.rei.api.client.registry.display.DisplayCategory; import me.shedaniel.rei.api.common.category.CategoryIdentifier; import me.shedaniel.rei.api.common.util.EntryStacks; @@ -99,9 +96,9 @@ public class DefaultFuelCategory implements DisplayCategory<DefaultFuelDisplay> @Nullable @Override - public Tooltip getTooltip(Point point) { - if (slot.containsMouse(point)) - return slot.getCurrentTooltip(point); + public Tooltip getTooltip(TooltipContext context) { + if (slot.containsMouse(context.getPoint())) + return slot.getCurrentTooltip(context); return null; } diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/GameModeFavoriteEntry.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/GameModeFavoriteEntry.java index b3cc253b2..ed3614f1d 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/GameModeFavoriteEntry.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/GameModeFavoriteEntry.java @@ -37,6 +37,7 @@ import me.shedaniel.rei.api.client.favorites.FavoriteMenuEntry; import me.shedaniel.rei.api.client.gui.AbstractRenderer; import me.shedaniel.rei.api.client.gui.Renderer; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.common.util.CollectionUtils; import net.minecraft.ChatFormatting; import net.minecraft.client.Minecraft; @@ -78,8 +79,8 @@ public class GameModeFavoriteEntry extends FavoriteEntry { return new CompoundFavoriteRenderer(showcase, renderers, () -> Minecraft.getInstance().gameMode.getPlayerMode().getId()) { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.gamemode_button.tooltip.dropdown")); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.gamemode_button.tooltip.dropdown")); } @Override @@ -121,8 +122,8 @@ public class GameModeFavoriteEntry extends FavoriteEntry { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.gamemode_button.tooltip.entry", type.getLongDisplayName().getString())); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.gamemode_button.tooltip.entry", type.getLongDisplayName().getString())); } @Override diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/TimeFavoriteEntry.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/TimeFavoriteEntry.java index f8cabd35f..d03e88797 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/TimeFavoriteEntry.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/TimeFavoriteEntry.java @@ -38,6 +38,7 @@ import me.shedaniel.rei.api.client.favorites.FavoriteMenuEntry; import me.shedaniel.rei.api.client.gui.AbstractRenderer; import me.shedaniel.rei.api.client.gui.Renderer; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.common.util.CollectionUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.events.GuiEventListener; @@ -97,8 +98,8 @@ public class TimeFavoriteEntry extends FavoriteEntry { return new CompoundFavoriteRenderer(showcase, renderers, () -> nextTime().ordinal()) { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.time_button.tooltip.dropdown")); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.time_button.tooltip.dropdown")); } @Override @@ -155,8 +156,8 @@ public class TimeFavoriteEntry extends FavoriteEntry { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.time_button.tooltip.entry", Component.translatable("text.rei.time_button.name." + time.name().toLowerCase(Locale.ROOT)))); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.time_button.tooltip.entry", Component.translatable("text.rei.time_button.name." + time.name().toLowerCase(Locale.ROOT)))); } @Override diff --git a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/WeatherFavoriteEntry.java b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/WeatherFavoriteEntry.java index fd46efba7..fceb2a973 100644 --- a/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/WeatherFavoriteEntry.java +++ b/default-plugin/src/main/java/me/shedaniel/rei/plugin/client/favorites/WeatherFavoriteEntry.java @@ -38,6 +38,7 @@ import me.shedaniel.rei.api.client.favorites.FavoriteMenuEntry; import me.shedaniel.rei.api.client.gui.AbstractRenderer; import me.shedaniel.rei.api.client.gui.Renderer; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.common.util.CollectionUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.events.GuiEventListener; @@ -80,8 +81,8 @@ public class WeatherFavoriteEntry extends FavoriteEntry { return new CompoundFavoriteRenderer(showcase, renderers, () -> getCurrentWeather().getId()) { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.weather_button.tooltip.dropdown")); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.weather_button.tooltip.dropdown")); } @Override @@ -131,8 +132,8 @@ public class WeatherFavoriteEntry extends FavoriteEntry { @Override @Nullable - public Tooltip getTooltip(Point mouse) { - return Tooltip.create(mouse, Component.translatable("text.rei.weather_button.tooltip.entry", Component.translatable(weather.getTranslateKey()))); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.translatable("text.rei.weather_button.tooltip.entry", Component.translatable(weather.getTranslateKey()))); } @Override diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java index eed4c08a0..0e37743d4 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/config/entries/FilteringScreen.java @@ -36,6 +36,7 @@ import me.shedaniel.math.Rectangle; import me.shedaniel.math.impl.PointHelper; import me.shedaniel.rei.api.client.REIRuntime; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.client.registry.entry.EntryRegistry; import me.shedaniel.rei.api.client.search.SearchFilter; import me.shedaniel.rei.api.client.search.SearchProvider; @@ -503,7 +504,7 @@ public class FilteringScreen extends Screen { protected void queueTooltip(PoseStack matrices, int mouseX, int mouseY, float delta) { if (searchField.containsMouse(mouseX, mouseY)) return; - Tooltip tooltip = getCurrentTooltip(new Point(mouseX, mouseY)); + Tooltip tooltip = getCurrentTooltip(TooltipContext.of(new Point(mouseX, mouseY))); if (tooltip != null) { FilteringScreen.this.tooltip = tooltip; } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/type/types/RenderingEntryDefinition.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/type/types/RenderingEntryDefinition.java index 919a2c1c6..20b0c9a5b 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/type/types/RenderingEntryDefinition.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/entry/type/types/RenderingEntryDefinition.java @@ -74,7 +74,7 @@ public class RenderingEntryDefinition { @Override @Nullable public Tooltip getTooltip(EntryStack<Renderer> entry, TooltipContext context) { - return entry.getValue().getTooltip(context.getPoint()); + return entry.getValue().getTooltip(context); } } } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java index a62e63373..5122cc9c2 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/EntryWidget.java @@ -44,6 +44,7 @@ import me.shedaniel.rei.api.client.gui.drag.DraggingContext; import me.shedaniel.rei.api.client.gui.screen.DisplayScreen; import me.shedaniel.rei.api.client.gui.widgets.Slot; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.client.overlay.ScreenOverlay; import me.shedaniel.rei.api.client.registry.display.DisplayRegistry; import me.shedaniel.rei.api.client.registry.transfer.TransferHandler; @@ -392,7 +393,7 @@ public class EntryWidget extends Slot implements DraggableStackProviderWidget { } protected void queueTooltip(PoseStack matrices, int mouseX, int mouseY, float delta) { - Tooltip tooltip = getCurrentTooltip(new Point(mouseX, mouseY)); + Tooltip tooltip = getCurrentTooltip(TooltipContext.of(new Point(mouseX, mouseY))); if (tooltip != null) { if (interactableFavorites && ConfigObject.getInstance().doDisplayFavoritesTooltip() && !ConfigObject.getInstance().getFavoriteKeyCode().isUnknown()) { String name = ConfigObject.getInstance().getFavoriteKeyCode().getLocalizedName().getString(); @@ -414,8 +415,8 @@ public class EntryWidget extends Slot implements DraggableStackProviderWidget { @Override @Nullable - public Tooltip getCurrentTooltip(Point point) { - Tooltip tooltip = getCurrentEntry().getTooltip(point); + public Tooltip getCurrentTooltip(TooltipContext context) { + Tooltip tooltip = getCurrentEntry().getTooltip(context); if (tooltip != null && !ClientHelper.getInstance().isCheating() && getTransferHandler() != null && !(Minecraft.getInstance().screen instanceof DisplayScreen)) { diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/favorites/panel/rows/FavoritesPanelEntriesRow.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/favorites/panel/rows/FavoritesPanelEntriesRow.java index 8df9f1b10..8ea3effd8 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/favorites/panel/rows/FavoritesPanelEntriesRow.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/widget/favorites/panel/rows/FavoritesPanelEntriesRow.java @@ -33,6 +33,7 @@ import me.shedaniel.rei.api.client.config.ConfigObject; import me.shedaniel.rei.api.client.favorites.FavoriteEntry; import me.shedaniel.rei.api.client.gui.drag.DraggableStack; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.client.util.ClientEntryStacks; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.util.CollectionUtils; @@ -167,10 +168,10 @@ public class FavoritesPanelEntriesRow extends FavoritesPanelRow { @Override @Nullable - public Tooltip getCurrentTooltip(Point point) { - point = PointHelper.ofMouse(); - if (!panel.getInnerBounds().contains(point)) return null; - Tooltip tooltip = super.getCurrentTooltip(point); + public Tooltip getCurrentTooltip(TooltipContext context) { + context = TooltipContext.ofMouse(); + if (!panel.getInnerBounds().contains(context.getPoint())) return null; + Tooltip tooltip = super.getCurrentTooltip(context); if (tooltip != null) { tooltip.add(Component.empty()); tooltip.add(Component.translatable("tooltip.rei.drag_to_add_favorites")); diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/registry/screen/ScreenRegistryImpl.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/registry/screen/ScreenRegistryImpl.java index ba13253de..a7137a7b2 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/registry/screen/ScreenRegistryImpl.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/registry/screen/ScreenRegistryImpl.java @@ -194,16 +194,6 @@ public class ScreenRegistryImpl implements ScreenRegistry { } @Override - public Iterable<DraggableStackProvider<Screen>> getDraggableProviders() { - return Iterables.filter(Collections.unmodifiableList(draggableProviders), (Class<DraggableStackProvider<Screen>>) (Class<?>) DraggableStackVisitor.class); - } - - @Override - public Iterable<DraggableStackVisitor<Screen>> getDraggableVisitors() { - return Iterables.filter(Collections.unmodifiableList(draggableVisitors), (Class<DraggableStackVisitor<Screen>>) (Class<?>) DraggableStackVisitor.class); - } - - @Override public Iterable<DraggableComponentProvider<Screen, Object>> getDraggableComponentProviders() { return Collections.unmodifiableList(draggableProviders); } diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/types/EmptyEntryDefinition.java b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/types/EmptyEntryDefinition.java index b4456c634..05dc9acba 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/types/EmptyEntryDefinition.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/common/entry/type/types/EmptyEntryDefinition.java @@ -28,6 +28,7 @@ import me.shedaniel.math.Point; import me.shedaniel.math.Rectangle; import me.shedaniel.rei.api.client.entry.renderer.EntryRenderer; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.common.entry.EntryStack; import me.shedaniel.rei.api.common.entry.type.BuiltinEntryTypes; import me.shedaniel.rei.api.common.entry.type.EntryDefinition; @@ -47,5 +48,11 @@ public class EmptyEntryDefinition { public void render(EntryStack<Unit> entry, PoseStack matrices, Rectangle bounds, int mouseX, int mouseY, float delta) { } + + @Override + @Nullable + public Tooltip getTooltip(EntryStack<Unit> entry, TooltipContext context) { + return null; + } } } diff --git a/runtime/src/main/java/me/shedaniel/rei/plugin/client/runtime/DefaultClientRuntimePlugin.java b/runtime/src/main/java/me/shedaniel/rei/plugin/client/runtime/DefaultClientRuntimePlugin.java index 66e150d1e..5e30527cf 100644 --- a/runtime/src/main/java/me/shedaniel/rei/plugin/client/runtime/DefaultClientRuntimePlugin.java +++ b/runtime/src/main/java/me/shedaniel/rei/plugin/client/runtime/DefaultClientRuntimePlugin.java @@ -43,6 +43,7 @@ import me.shedaniel.rei.api.client.gui.drag.component.DraggableComponentVisitorW import me.shedaniel.rei.api.client.gui.screen.DisplayScreen; import me.shedaniel.rei.api.client.gui.widgets.Panel; import me.shedaniel.rei.api.client.gui.widgets.Tooltip; +import me.shedaniel.rei.api.client.gui.widgets.TooltipContext; import me.shedaniel.rei.api.client.gui.widgets.Widgets; import me.shedaniel.rei.api.client.plugins.REIClientPlugin; import me.shedaniel.rei.api.client.registry.display.DisplayRegistry; @@ -108,8 +109,8 @@ public class DefaultClientRuntimePlugin implements REIClientPlugin { @Override @Nullable - public Tooltip getTooltip(Point point) { - return Tooltip.create(Component.literal("Kirby"), ClientHelper.getInstance().getFormattedModFromModId("Dream Land")); + public Tooltip getTooltip(TooltipContext context) { + return Tooltip.create(context.getPoint(), Component.literal("Kirby"), ClientHelper.getInstance().getFormattedModFromModId("Dream Land")); } })); } |
