Package xyz.xenondevs.invui.item.impl
Class AsyncItem
java.lang.Object
xyz.xenondevs.invui.item.impl.AbstractItem
xyz.xenondevs.invui.item.impl.AsyncItem
- All Implemented Interfaces:
Item
An
Item
that creates it's ItemProvider
asynchronously and displays
a placeholder ItemProvider
until the actual ItemProvider
has been created.-
Constructor Summary
ConstructorDescriptionAsyncItem
(@NotNull Supplier<? extends ItemProvider> providerSupplier) AsyncItem
(@Nullable ItemProvider itemProvider, @NotNull Supplier<? extends ItemProvider> providerSupplier) -
Method Summary
Modifier and TypeMethodDescriptionGets theItemProvider
.void
handleClick
(@NotNull org.bukkit.event.inventory.ClickType clickType, @NotNull org.bukkit.entity.Player player, @NotNull org.bukkit.event.inventory.InventoryClickEvent event) A method called if theItemStack
associated to thisItem
has been clicked by a player.Methods inherited from class xyz.xenondevs.invui.item.impl.AbstractItem
addWindow, getWindows, notifyWindows, removeWindow
-
Constructor Details
-
AsyncItem
public AsyncItem(@Nullable @Nullable ItemProvider itemProvider, @NotNull @NotNull Supplier<? extends ItemProvider> providerSupplier) -
AsyncItem
-
-
Method Details
-
getItemProvider
Description copied from interface:Item
Gets theItemProvider
. This method gets called every time aWindow
is notified (Item.notifyWindows()
).- Returns:
- The
ItemProvider
-
handleClick
public void handleClick(@NotNull @NotNull org.bukkit.event.inventory.ClickType clickType, @NotNull @NotNull org.bukkit.entity.Player player, @NotNull @NotNull org.bukkit.event.inventory.InventoryClickEvent event) Description copied from interface:Item
A method called if theItemStack
associated to thisItem
has been clicked by a player.- Parameters:
clickType
- TheClickType
thePlayer
performed.player
- ThePlayer
who clicked on theItemStack
.event
- TheInventoryClickEvent
associated with this click.
-