Index

A B C D E F G H I J K L M N O P Q R S T U V W X Y 
All Classes and Interfaces|All Packages|Constant Field Values

A

accepts(Predicate) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
A placement-only filter, shorthand for SlotSpec.gate.
actingPlayer() - Method in class com.trevlar.slotkit.api.window.GatingContext
Who is acting (a ServerPlayer for a real interaction; null for automation).
activeCount() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
How many of its slots are live: slots 0..count-1; the rest are inert.
activeCount(int) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Opts the group in to a server-set active count, starting at startCount: slot i is live while i < count, and every slot from the count on is inert on both sides (empty to the client, refusing clicks), so the server opens and closes the group and sizes it per player (ParityGroup.setActiveCount(ServerPlayer, int)).
activeCount(IntSupplier) - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Library use: ties the slot to its group's active count.
activeCount(IntSupplier) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Library use: slots from this count on are inert, on both sides (SlotSpec.activeCount).
activeCount(Player) - Method in class com.trevlar.slotkit.api.slot.ParityGroup
How many of the group's slots are live for player, on the side the player is on: the full count for a group that didn't opt in.
activeCountStart() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
The active count's start, or null when the group didn't opt in.
add(SlotElement) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement.Builder
Adds one slot element to the flow.
add(ServerPlayer, Storage) - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Adds an instance to the menu player has open, its slots over storage.
addAll(List) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement.Builder
Adds slot elements to the flow, in order.
addEventListener(CustomContainerScreen.ScreenEventListener) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Registers a screen event listener.
addGroup(ParityGroup) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement.Builder
Adds every slot of a parity group, in order, each with the spec's tooltip.
address() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
This slot's created Address, the same in every menu.
address() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns the value of the address record component.
address() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the address record component.
address() - Method in class com.trevlar.slotkit.api.window.WindowHandle
The Address this handle names, the key its behavior is stored under.
address(int) - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Its slot index's own address, for a declaration on this instance alone.
Address - Record Class in com.trevlar.slotkit.api.window
One value that names any addressable thing (a vanilla slot, a created slot, a panel element or a panel itself), so the engine can resolve every behavior by address without asking what kind it is.
Address(OwnerRef, Token, KindTag) - Constructor for record class com.trevlar.slotkit.api.window.Address
Creates an instance of a Address record class.
addressOf(AbstractContainerMenu, Slot) - Static method in record class com.trevlar.slotkit.api.window.SlotRef
 
after() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns the value of the after record component.
A gate is not a lock - Section in interface com.trevlar.slotkit.api.window.SlotGate
 
all() - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Every category the registry knows: the vanilla constants, every category a created slot group declared, and anything a mod SlotGroupCategories.declare(SlotGroupCategory)d.
all() - Static method in class com.trevlar.slotkit.api.group.SlotGroups
Every declared group: vanilla's in SlotGroupCategory.vanilla() order, then the rest by id text.
all() - Static method in class com.trevlar.slotkit.api.menu.CustomMenu
Every registered menu, in registration order.
all() - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Every defined operation, in definition order.
allows(SlotRef, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Whether operation may act on the slot ref describes: the cascade resolves TRUE and no SlotOperations.Veto denies it.
allows(ServerPlayer, SlotRef) - Method in interface com.trevlar.slotkit.api.state.SlotStateChannel.CanWrite
Whether player may write this channel at slot (a live slot of their open menu).
allows(Container, int, Player, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
SlotOperations.allows(SlotRef, BehaviorKey) for a slot reached with no menu open.
allows(AbstractContainerMenu, Slot, Player, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
allowsGesture(SlotRef, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
What a vanilla seam asks for the gesture it is running: SlotOperations.allows(SlotRef, BehaviorKey), or, when the click on this thread carries an operation (SlotOperations.as(BehaviorKey, Runnable)), the slot's cascade on the gesture and allows on the carried operation for the gesture's role.
allowsGesture(AbstractContainerMenu, Slot, Player, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
allowsPut(SlotRef, BehaviorKey, ItemStack) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
allowsPutGesture(SlotRef, BehaviorKey, ItemStack) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
SlotOperations.allowsGesture(SlotRef, BehaviorKey) for a put seam that knows the stack about to land: the put vetoes judge it along with the operation the gesture serves.
animate(String, ItemState, ItemAnimation, Transition) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
The item plays animation toward its end while it carries state, and back when the state clears.
animate(String, SlotLooks.When, ItemAnimation, Transition) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
ANVIL_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
ANVIL_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
ANY - Static variable in interface com.trevlar.slotkit.api.state.SlotStateChannel.CanWrite
Allows a write on any live slot of the writer's open menu.
appliesTo() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns the value of the appliesTo record component.
appliesTo(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
The slot groups operation was defined to apply to; SlotOperations.AppliesTo.EVERY_GROUP for one defined without saying, or never defined.
appliesTo(BehaviorKey, SlotGroupId) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Whether operation can act on slots in group.
appliesTo(KindTag) - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Whether this behavior is valid on kind.
AppliesTo(Set, Set, Set) - Constructor for record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
The 1.0 form: a mod's own groups apply unless excepted.
AppliesTo(Set, Set, Set, boolean) - Constructor for record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Creates an instance of a AppliesTo record class.
applyOnClient(GroupInstanceS2CPayload, Player) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Client: applies what the server sent, to the player's open menu.
arm(Runnable) - Method in class com.trevlar.slotkit.api.menu.CustomMenu.Builder
Sets slot behavior for this menu.
around(PanelPosition) - Method in class com.trevlar.slotkit.api.group.CategoryPanels.On
Around the box of the group this panel is on, as SlotPlacement.group places around one group.
as(BehaviorKey, BehaviorKey, Runnable) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Sends clicks as the operation pair: take for the slots they take from, put for the slots they put into.
as(BehaviorKey, Runnable) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Sends clicks as operation, for both the slots they take from and put into.
asBoolean() - Method in enum class com.trevlar.slotkit.api.window.TriBool
 
asString() - Method in interface com.trevlar.slotkit.api.group.SlotGroupId
The stable text form, for saving a choice made against this group.
asString() - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
The stable text form, set|namespace|path, for saving a choice made against this set.
asString() - Method in record class com.trevlar.slotkit.api.window.Address
The stable text form: the kind, the root family and scope, each nesting token, and the address's own token, as escaped |-separated fields.
at(String, SlotGroupCategory) - Static method in class com.trevlar.slotkit.api.slot.SlotSpec
Starts a slot-group spec.
at(ServerPlayer, ItemPath) - Static method in class com.trevlar.slotkit.api.item.ItemSources
The live item at path, or null when it isn't there: a slot out of range, an empty slot, an index past a container's contents, or a step through an item that isn't a shulker box or bundle.
at(Container, ItemPath) - Static method in class com.trevlar.slotkit.api.item.ItemSources
The live item at a ItemRef.Source.CONTAINER path in container, or null when it isn't there (as ItemSources.at(ServerPlayer, ItemPath)) or the path's source is another one.
attachment() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns the value of the attachment record component.

B

back(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
Closes the menu in front normally and reopens the set-aside one as itself: its container id, type and title, then all its contents.
BEACON_PAYMENT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
before() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns the value of the before record component.
behavior(BehaviorKey) - Method in class com.trevlar.slotkit.api.window.WindowHandle
The resolved value of key at this address with no player, so only BOTH declarations count.
behavior(BehaviorKey, Player) - Method in class com.trevlar.slotkit.api.window.WindowHandle
The resolved value of key at this address for player's current mode.
Behavior is the kind's - Section in class com.trevlar.slotkit.api.slot.OnDemandGroup
 
BehaviorKey<V> - Record Class in com.trevlar.slotkit.api.window
Names one behavior the window can resolve: gating, visibility, a panel's opacity, a reaction and so on.
BehaviorKey(Identifier, Class, V, Tier, EnumSet) - Constructor for record class com.trevlar.slotkit.api.window.BehaviorKey
Creates an instance of a BehaviorKey record class.
BehaviorKeys - Class in com.trevlar.slotkit.api.window
The library's built-in BehaviorKeys, one constant per behavior.
Behavior methods set it once for the whole group - Section in class com.trevlar.slotkit.api.slot.SlotSpec
 
bind(Supplier) - Method in class com.trevlar.slotkit.api.storage.StorageAttachment
Binds through a supplier, for owners whose reference can change while the menu is open (notably ItemStack, which vanilla may replace during interactions).
bind(O) - Method in class com.trevlar.slotkit.api.storage.StorageAttachment
Binds this attachment to one owner, returning a Storage that reads and writes the content for that owner.
binding() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Equivalent to binding(true).
binding(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Applies Curse of Binding to every slot in this group: a bound item can't be taken out while alive, in survival only (creative ignores it).
binding(boolean) - Method in class com.trevlar.slotkit.api.window.SlotHandle
Whether Curse of Binding holds a bound item in this slot (BehaviorKeys.BINDING).
BINDING - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Whether Curse of Binding is enforced on this slot: a bound item cannot be taken out while the player is alive, survival only, the rule vanilla gives armor slots.
BlockEntityKey(BlockPos, ResourceKey) - Constructor for record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Creates an instance of a BlockEntityKey record class.
blockScoped(String, String, int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
Saves slot-group content on a BlockEntity in a Fabric attachment.
BOTH - Enum constant in enum class com.trevlar.slotkit.api.window.SlotOperations.Role
Both, as a swap or a rotation does; also what an operation that does not say is taken to do.
BREWING_FUEL - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
BREWING_INGREDIENT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
BREWING_POTIONS - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
build() - Method in class com.trevlar.slotkit.api.slot.SlotElement.Builder
 
build() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement.Builder
 
build() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement.Builder
 
build(int) - Method in class com.trevlar.slotkit.api.menu.SlotLayout
Builds the handler: its groups, their pairings, then its slots.
build(MenuType, int, Inventory) - Method in interface com.trevlar.slotkit.api.menu.CustomMenu.HandlerFactory
 
builder() - Static method in class com.trevlar.slotkit.api.slot.SlotElement
A slot element: SlotElement.builder().slot(CreatedSlots.groupId(panel, group), i).at(x, y).build().
builder() - Static method in class com.trevlar.slotkit.api.slot.SlotFlowElement
A flow of slot elements: SlotFlowElement.builder().addAll(slots).at(x, y).build().
builder(SlotGroupId) - Static method in class com.trevlar.slotkit.api.slot.SlotGroupElement
A builder, for columns(n) and the usual element methods (at, visibleWhen).
builder(MenuType) - Static method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Starts a slot layout for a menu of menuType: the declaration this handler is built from.
BUNDLE_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
A bundle's contents, shown as slots by a mod that opens bundles.
bundles() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns the value of the bundles record component.
bundles(boolean) - Method in record class com.trevlar.slotkit.api.item.ItemScope
 
byId(Identifier) - Static method in class com.trevlar.slotkit.api.menu.CustomMenu
Resolves a menu by the id carried in an open payload, or null if no menu was registered under that id.
byId(Identifier) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
The defined operation with this id, or null.

C

candidatesFor(ServerPlayer) - Method in interface com.trevlar.slotkit.api.slot.MendingCandidates.Provider
Extra candidates for this player (server-side).
canWrite() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the canWrite record component.
captureReturnAction() - Static method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
A "return to this container" action for the custom container screen now showing, or null if the current screen is not one.
carried() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns the value of the carried record component.
carried() - Method in class com.trevlar.slotkit.api.storage.StorageAttachment.PlayerStorageAttachment
Marks this attachment's contents as items the player carries, so ItemSources walks them when a scope asks (ItemScope.carried(true)), after the inventory and before the ender chest.
carried(boolean) - Method in record class com.trevlar.slotkit.api.item.ItemScope
 
CARRIED - Enum constant in enum class com.trevlar.slotkit.api.item.ItemRef.Source
 
Carried attachments - Section in class com.trevlar.slotkit.api.item.ItemSources
 
CARTOGRAPHY_ADDITIONAL - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
CARTOGRAPHY_MAP - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
CARTOGRAPHY_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
categories() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the categories record component.
categoriesBySlot(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
The category of each slot on menu, by slot identity: the inverse of SlotGroupCategories.of(AbstractContainerMenu), for a consumer walking menu.slots and asking "what is this one?" A slot in no category is absent.
category() - Method in class com.trevlar.slotkit.api.group.CategoryPanels.On
The category.
category() - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Returns the value of the category record component.
category() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Category
Returns the value of the category record component.
category() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
category() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the category record component.
category(SlotGroupCategory) - Static method in interface com.trevlar.slotkit.api.group.SlotGroupId
 
category(SlotGroupCategory) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
What the group is, in the slot group registry's terms.
Category(SlotGroupCategory) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroupId.Category
Creates an instance of a Category record class.
categoryOf(SlotGroupId) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The category id declared, or null if it was never declared.
CategoryPanels - Class in com.trevlar.slotkit.api.group
One panel on every group of a category that shows on the open menu, vanilla or created, on-demand instances included.
CategoryPanels.On - Class in com.trevlar.slotkit.api.group
Where one of a category's panels goes, and which group it is on.
cause() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns the value of the cause record component.
CHEST_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
child(int) - Method in record class com.trevlar.slotkit.api.item.ItemPath
The item at index inside this one.
claimAction(UUID, ServerboundPlayerActionPacket.Action) - Static method in class com.trevlar.slotkit.api.window.OperationProbe
 
claimClick(UUID, int, int, int, ContainerInput) - Static method in class com.trevlar.slotkit.api.window.OperationProbe
What the server does as that click arrives: the tag, once, or null.
Claims - Section in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
 
clear(ItemRef) - Method in class com.trevlar.slotkit.api.item.ItemState
Removes the value from the item ref names, written back.
clear(Address) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Removes every declaration on address, in both tiers.
clear(BehaviorKey) - Method in class com.trevlar.slotkit.api.window.WindowHandle
Clears this scope's declaration back to inheriting.
clear(ItemStack) - Method in class com.trevlar.slotkit.api.item.ItemState
Removes the value from stack.
clearContent() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
clearSelection() - Static method in class com.trevlar.slotkit.api.window.WindowSignals
Clears the selection (SlotKitClient, when a container screen closes).
click(AbstractContainerScreen, MouseButtonEvent, Player) - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
A real click on a container screen, before the screen sees it.
CLICK_PUT - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether a plain click may put the cursor's items into this slot, all or one.
CLICK_TAKE - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether a plain click may pick up this slot's items.
clickArrived(ServerPlayer, ServerboundContainerClickPacket) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
A click from the player's client, on the server thread before vanilla handles it: the same click on the menu in front when it was aimed at the menu just switched away from (see "Clicks in flight" in the class doc), otherwise click itself.
clicked(int, int, ContainerInput, Player) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
A right click on a slot with a handler runs the handler, on each side; any other click is vanilla's.
clickMenuButton(Player, int) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
A player's request to toggle panel buttonId (vanilla's container button packet).
Clicks in flight - Section in class com.trevlar.slotkit.api.menu.MenuSwitch
 
CLIENT - Enum constant in enum class com.trevlar.slotkit.api.window.Tier
 
clientHas(ServerPlayer, String) - Static method in class com.trevlar.slotkit.api.Presence
Whether player's client has modId, a mod with a slotkit block.
clientHasSlotKit(ServerPlayer) - Static method in class com.trevlar.slotkit.api.Presence
Whether player's client has SlotKit.
ClientMenu - Class in com.trevlar.slotkit.api.menu
The client half of a CustomMenu: its screen class, how each of its panels looks, and the request to open it.
Client rendering only - Section in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
ClientSlots - Class in com.trevlar.slotkit.api.slot
What the client can ask about a slot group while a screen is open.
closed(ServerPlayer, AbstractContainerMenu, MenuSwitch.Reason) - Method in interface com.trevlar.slotkit.api.menu.MenuSwitch.SetAsideClosed
Called after menu.removed(player).
Closed - Section in interface com.trevlar.slotkit.api.window.Decl
 
CLOSED - Enum constant in enum class com.trevlar.slotkit.api.menu.MenuSwitch.Reason
The menu in front closed without a switch (Escape, its own validity), or a menu opened some other way.
codec() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the codec record component.
CODEC - Static variable in interface com.trevlar.slotkit.api.group.SlotGroupId
The SlotGroupId.asString() form as a codec.
CODEC - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupSet
The SlotGroupSet.asString() form as a codec.
CODEC - Static variable in record class com.trevlar.slotkit.api.window.Address
The Address.asString() form as a codec.
collect(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Whether vanilla's double-click collect may pull items out of this group.
COLLECT - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether vanilla's double-click collect may take from this slot (canTakeItemForPickAll).
columns(int) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement.Builder
Slots per row, 9 by default.
com.trevlar.slotkit.api - package com.trevlar.slotkit.api
 
com.trevlar.slotkit.api.group - package com.trevlar.slotkit.api.group
 
com.trevlar.slotkit.api.item - package com.trevlar.slotkit.api.item
 
com.trevlar.slotkit.api.menu - package com.trevlar.slotkit.api.menu
 
com.trevlar.slotkit.api.slot - package com.trevlar.slotkit.api.slot
 
com.trevlar.slotkit.api.state - package com.trevlar.slotkit.api.state
 
com.trevlar.slotkit.api.storage - package com.trevlar.slotkit.api.storage
 
com.trevlar.slotkit.api.window - package com.trevlar.slotkit.api.window
 
commit() - Method in interface com.trevlar.slotkit.api.item.ItemRef
Writes an in-place change to ItemRef.stack() back up the chain.
commit() - Method in class com.trevlar.slotkit.api.item.LiveItem
Writes a change to LiveItem.stack() back up the chain to the top-level slot and marks its container changed.
componentType() - Method in class com.trevlar.slotkit.api.item.ItemState
The component type, for code that reads components directly.
container() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the container record component.
CONTAINER - Enum constant in enum class com.trevlar.slotkit.api.item.ItemRef.Source
 
containerOf(Player, ItemPath) - Static method in class com.trevlar.slotkit.api.item.ItemSources
The player's container a path starts in: the inventory, the ender chest, or a carried attachment's contents.
Containers - Section in class com.trevlar.slotkit.api.item.ItemSources
 
containerSlot() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the containerSlot record component.
contains(Address) - Method in class com.trevlar.slotkit.api.window.GroupKey
Whether address is a member of this group.
count() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
How many slots each instance has.
count() - Method in class com.trevlar.slotkit.api.slot.ParityGroup
How many slots the group has.
count() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
count(int) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Number of slots in this group (default 1).
CRAFTER_GRID - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
CRAFTER_RESULT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
CRAFTING_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
CRAFTING_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
create(CustomContainerMenu, Inventory, Component) - Method in interface com.trevlar.slotkit.api.menu.MenuScreenFactory
Builds the screen for the handler, player inventory and title.
created(String, String) - Static method in interface com.trevlar.slotkit.api.group.SlotGroupId
 
Created(String, String) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Creates an instance of a Created record class.
CREATED_SLOT - Enum constant in enum class com.trevlar.slotkit.api.window.KindTag
A slot created through SlotKit (a real synced slot in menu space).
createdSlot(SlotGroupId.Created, int) - Static method in record class com.trevlar.slotkit.api.window.Address
Slot index of a created slot group.
createdSlot(ScreenFamilyKey, OwnerScope, Identifier, String) - Static method in record class com.trevlar.slotkit.api.window.Address
A created slot, owned by its panel, identified by a declaration id.
CreatedSlot - Class in com.trevlar.slotkit.api.slot
A slot that is a vanilla Slot to everything outside it.
CreatedSlot(Container, int, int, int, CreatedSlotGroup, MenuPanel, String, int) - Constructor for class com.trevlar.slotkit.api.slot.CreatedSlot
 
CreatedSlotGroup - Class in com.trevlar.slotkit.api.slot
A group of slots: their Storage, shift-click priority, right-click handler and layout.
CreatedSlotGroup(String, SlotGroupCategory, Storage) - Constructor for class com.trevlar.slotkit.api.slot.CreatedSlotGroup
With the default priority, 100.
CreatedSlotGroup(String, SlotGroupCategory, Storage, int) - Constructor for class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Where the slots sit on screen is the panel's (its slot elements), not the group's.
CreatedSlots - Class in com.trevlar.slotkit.api.slot
Adds real, server-synced, persistent slots to a vanilla menu.
CreatedSlots.Builder - Class in com.trevlar.slotkit.api.slot
Configures one group of slots.
CreatedSlots.RegisteredSlots - Record Class in com.trevlar.slotkit.api.slot
What register() created: the MenuPanel and CreatedSlotGroup, plus the slot-index range appended to the menu, for consumers that walk the slots directly.
Created slots publish here too - Section in class com.trevlar.slotkit.api.group.SlotGroupCategories
 
Creative and survival - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
current() - Static method in class com.trevlar.slotkit.api.window.GatingContext
The context for the current thread: the acting player, and the slot judged, if any.
custom(CustomAttachmentSpec) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
Wraps a CustomAttachmentSpec as a StorageAttachment.
CustomAttachmentSpec<O,C> - Interface in com.trevlar.slotkit.api.storage
Implemented by consumers to extend storage attachments.
CustomContainerMenu - Class in com.trevlar.slotkit.api.menu
A custom container menu: its created slots, its panels as the server knows them, and whether each is shown.
CustomContainerMenu(MenuType, int, List) - Constructor for class com.trevlar.slotkit.api.menu.CustomContainerMenu
Allocates the created slots in declaration order (panel, then group, then index) and one visibility DataSlot per panel.
CustomContainerScreen - Class in com.trevlar.slotkit.api.menu
Client-side partner to CustomContainerMenu: a standalone screen whose panels hold slot groups.
CustomContainerScreen(CustomContainerMenu, Inventory, Component) - Constructor for class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
CustomContainerScreen.DragMode - Interface in com.trevlar.slotkit.api.menu
A custom drag behavior for created slots.
CustomContainerScreen.KeyAction - Interface in com.trevlar.slotkit.api.menu
Action triggered by a key press while this screen is open.
CustomContainerScreen.ScreenEventListener - Interface in com.trevlar.slotkit.api.menu
Listener for events inside this screen.
CustomMenu - Class in com.trevlar.slotkit.api.menu
A complete custom menu from one define(...).register() chain.
CustomMenu.Builder - Class in com.trevlar.slotkit.api.menu
Configures the menu.
CustomMenu.HandlerFactory - Interface in com.trevlar.slotkit.api.menu
Builds the menu's CustomContainerMenu.
customPlayerAttached(CustomAttachmentSpec) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment

D

Death handling - Section in com.trevlar.slotkit.api.storage.StorageAttachment.playerAttached(String, String, int)
 
Decl<V> - Interface in com.trevlar.slotkit.api.window
A behavior declaration at one specificity level (per slot, per group and so on): Decl.Set: this level declares a value, and the cascade stops here and uses it, an explicit off such as Set(TriBool.FALSE) included. Decl.Inherit: this level defers, and the cascade falls through to the next level down.
Decl.Inherit<V> - Record Class in com.trevlar.slotkit.api.window
Explicit deferral; the cascade falls through to the next level.
Decl.Set<V> - Record Class in com.trevlar.slotkit.api.window
An explicit declared value; the cascade stops here.
declare(SlotGroupCategory) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Publishes category to the registry so another mod can find it through SlotGroupCategories.all() without a menu open.
declare(SlotGroupCategory, Function) - Static method in class com.trevlar.slotkit.api.group.CategoryPanels
Builds CategoryPanels.MAX_SHOWN panels with panel, one per CategoryPanels.On, and declares each with a SlotGroupPanelAdapter.
declare(SlotGroupId, SlotGroupCategory) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
Declares a group and its category.
declare(SlotGroupId, SlotGroupCategory, SlotGroupSet) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
Declares a group, its category, and the set it belongs to (null for none, or for "no opinion" when another declaration names the set).
Declare at init - Section in class com.trevlar.slotkit.api.group.CategoryPanels
 
Declare at init - Section in class com.trevlar.slotkit.api.slot.SlotPlacement
 
declareDerived(SlotGroupId, SlotGroupCategory) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
A group declared as a menu is built (CreatedSlots.onto): an index SlotKit fills, idempotent, so it stays legal after declarations freeze.
DEFAULT - Enum constant in enum class com.trevlar.slotkit.api.slot.DropRule
 
DEFAULT_PADDING - Static variable in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Default content padding for styled panels.
defaultFactory() - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Returns new default content for when nothing is stored yet.
defaultValue() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the defaultValue record component.
define(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
SlotOperations.define(BehaviorKey, Role) for an operation that does not say what it does to a slot, which is read as SlotOperations.Role.BOTH.
define(BehaviorKey, SlotOperations.Role) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Publishes operation so other mods can discover it through SlotOperations.all(), with the SlotOperations.Role it plays on a slot.
define(BehaviorKey, SlotOperations.Role, SlotOperations.AppliesTo) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
SlotOperations.define(BehaviorKey, Role) with the slot groups the operation can act on; see "Where an operation applies" in the class doc.
define(Identifier, CustomMenu.HandlerFactory) - Static method in class com.trevlar.slotkit.api.menu.CustomMenu
Starts a custom-menu definition.
denies(SlotRef, SlotGroupId, BehaviorKey) - Method in interface com.trevlar.slotkit.api.window.SlotOperations.GroupVeto
 
denies(SlotRef, SlotGroupId, BehaviorKey, ItemStack) - Method in interface com.trevlar.slotkit.api.window.SlotOperations.PutVeto
 
denies(SlotRef, BehaviorKey) - Method in interface com.trevlar.slotkit.api.window.SlotOperations.Veto
 
DENY - Static variable in interface com.trevlar.slotkit.api.state.SlotStateChannel.CanWrite
Refuses every client write.
depth() - Method in record class com.trevlar.slotkit.api.item.ItemPath
How many containers deep the item is: 0 for a top-level slot.
depth() - Method in interface com.trevlar.slotkit.api.item.ItemRef
0 for a top-level slot, 1 for an item inside a container there, and so on.
description(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
One or two sentences on what the operation does to a slot, for a settings list.
DESTROY - Enum constant in enum class com.trevlar.slotkit.api.slot.DropRule
 
dimension() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Returns the value of the dimension record component.
DISPENSER_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
DRAG_FILL - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether vanilla's drag-fill (spreading a carried stack across slots) may place into this slot (canDragTo).
dragFill(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Whether vanilla's drag-fill (spreading a carried stack across dragged-over slots) may place into this group.
drainContents() - Method in class com.trevlar.slotkit.api.storage.EphemeralStorage
Reads all items and clears the storage in one step.
DROP - Enum constant in enum class com.trevlar.slotkit.api.slot.DropRule
 
DROP - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether Q may drop one item out of this slot.
DROP_STACK - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether Ctrl-Q may drop this slot's whole stack.
DropRule - Enum Class in com.trevlar.slotkit.api.slot
What happens to a player-scoped slot's content on death, set per attachment.
dropsOnDeath(DropRule) - Method in class com.trevlar.slotkit.api.storage.StorageAttachment.PlayerStorageAttachment
Sets this attachment's death-drop rule.

E

Each group is its own container - Section in class com.trevlar.slotkit.api.slot.CreatedSlot
 
Each group is its own container - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
emptyIcon(Identifier) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
The outline drawn on each empty slot of this group, as vanilla draws the armor and offhand outlines: a GUI sprite id, returned from the slot's getNoItemIcon, so vanilla draws it in its own slot pass, under any item and in creative too.
emptyIconOf(SlotGroupId) - Static method in class com.trevlar.slotkit.api.slot.ParityGroup
The empty-slot outline group declared, or null.
ENCHANTING_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
ENCHANTING_LAPIS - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
ENDER_CHEST - Enum constant in enum class com.trevlar.slotkit.api.item.ItemRef.Source
 
enderChest() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns the value of the enderChest record component.
enderChest(boolean) - Method in record class com.trevlar.slotkit.api.item.ItemScope
 
EnderChest(UUID) - Constructor for record class com.trevlar.slotkit.api.window.PersistentContainerKey.EnderChest
Creates an instance of a EnderChest record class.
endFrame(AbstractContainerMenu, Set) - Method in class com.trevlar.slotkit.api.slot.SlotElement
End of frame: parks this element's slot off-screen unless SlotElement.render(RenderContext) placed it this frame, and clears the mark either way.
entityAttached(String, String, int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
Saves slot-group content on any Entity in a Fabric attachment.
entityId() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EntityKey
Returns the value of the entityId record component.
EntityKey(UUID) - Constructor for record class com.trevlar.slotkit.api.window.PersistentContainerKey.EntityKey
Creates an instance of a EntityKey record class.
Entry(String, Component, SlotGroupSet, List, List) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroups.Entry
The 5.1.0 shape, with no source; kept so code built against it still links.
Entry(String, Component, SlotGroupSet, List, List, Component) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Creates an instance of a Entry record class.
ephemeral(int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
In-memory storage that lasts only while the menu is open.
EphemeralStorage - Class in com.trevlar.slotkit.api.storage
In-memory storage that is never saved.
EphemeralStorage(int) - Constructor for class com.trevlar.slotkit.api.storage.EphemeralStorage
 
equals(Object) - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Category
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.item.ItemPath
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.item.ItemScope
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.item.ItemSources.Found
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.Group
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.GroupOf
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToPlayer
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToVanilla
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.Address
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.Decl.Inherit
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.Decl.Set
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class com.trevlar.slotkit.api.window.GroupKey
 
equals(Object) - Method in record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EnderChest
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EntityKey
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.PlayerInventory
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.ReactCause
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in record class com.trevlar.slotkit.api.window.SlotRef
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class com.trevlar.slotkit.api.window.WindowHandle
 
EVERY_GROUP - Static variable in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Every vanilla group and every group a mod adds.
Exact class only - Section in class com.trevlar.slotkit.api.group.SlotGroupCategories
 
except(SlotGroupId...) - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
The same, but not these groups a mod added.
except(SlotGroupSet...) - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
The same, but not the groups in these sets.
exceptGroups() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns the value of the exceptGroups record component.
exceptSets() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns the value of the exceptSets record component.
extend(Class, SlotGroupResolver) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Registers an extra resolver for a menu class, adding categories without replacing the primary.
extractContents(GuiGraphicsExtractor, int, int, float) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Layout, then this screen's FLOW layer (where each panel's slot elements write their slots' positions), all before vanilla's content pass (widgets, labels, slot highlight, slots), where the old renderBg sat.
extractLabels(GuiGraphicsExtractor, int, int) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
extractRenderState(GuiGraphicsExtractor, int, int, float) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 

F

FALSE - Enum constant in enum class com.trevlar.slotkit.api.window.TriBool
 
fillWidth(int) - Method in class com.trevlar.slotkit.api.slot.SlotElement
The element's size is the slot's frame.
fillWidth(int) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Column fill does not apply: the flow hugs its visible slots.
fillWidth(int) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
Column fill does not apply: the rows hug the shown slots.
find(Container, ItemScope, Predicate) - Static method in class com.trevlar.slotkit.api.item.ItemSources
Every item in container that test accepts, as ItemSources.walk(Container, ItemScope, ItemVisitor) orders them, read only.
find(Player, ItemScope, Predicate) - Static method in class com.trevlar.slotkit.api.item.ItemSources
Every item in scope that test accepts, nearest first, read only: paths and copies, nothing written.
findSlotByContainerIndex(AbstractContainerMenu, PersistentContainerKey, int) - Static method in class com.trevlar.slotkit.api.state.SlotState
Finds the slot in menu whose container resolves to key, at containerSlotIndex.
flag(String, ItemState.Saved) - Static method in class com.trevlar.slotkit.api.item.ItemState
A true-or-absent flag.
flatEnd() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns the value of the flatEnd record component.
flatStart() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns the value of the flatStart record component.
For a settings screen - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
Found(ItemPath, ItemStack) - Constructor for record class com.trevlar.slotkit.api.item.ItemSources.Found
Creates an instance of a Found record class.
Frame order - Section in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
frameX() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Left edge of the 18×18 recessed frame (item box minus the 1px inset).
frameY() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Top edge of the 18×18 recessed frame.
fromItemList(NonNullList) - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Converts a changed item list back to the content, keeping any fields that are not item stacks.
frontClosed(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The menu in front closed: unless that was a switch, the set-aside one closes too.
Frozen after init - Section in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
 
FURNACE_FUEL - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
FURNACE_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
FURNACE_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 

G

gate(SlotGate) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Sets a SlotGate: what every slot in this group accepts, releases and caps at, set once for the group.
gate(SlotGate) - Method in class com.trevlar.slotkit.api.window.SlotHandle
What this slot accepts and releases, and how many: the author's rule (BehaviorKeys.GATING).
gather(ServerPlayer) - Static method in class com.trevlar.slotkit.api.slot.MendingCandidates
Gathers all registered providers' candidates for the player (empty if none).
GATING - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
What a slot accepts and releases, and its per-item stack cap: a SlotGate.
GatingContext - Class in com.trevlar.slotkit.api.window
The context a SlotGate decision runs in: who is acting, and on which slot.
generation() - Static method in class com.trevlar.slotkit.api.group.SlotGroups
How many times the declared groups have changed; a cache key for anything derived from them.
get(Address) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads this channel's value at the slot named by address, in the client player's currently open menu.
get(Container, int) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads the SHARED value at (container, containerSlotIndex) with no Slot, open menu or viewer, for automation (hopper, dropper, dispenser) that touches a placed container directly by index.
get(Player, Address) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads this channel's value at the slot named by address for an explicit player, resolving the slot in that player's open menu.
get(Player, PersistentContainerKey, int) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads this channel's value straight from persistent storage.
get(Player, Slot) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads this channel's value at slot for an explicit player.
get(Slot) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Reads this channel's value at slot.
get(ItemStack) - Method in class com.trevlar.slotkit.api.item.ItemState
The value on stack, or null when it has none.
getCategory() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
What this group is, in the registry vocabulary (SlotGroupCategories).
getChannel(Identifier) - Static method in class com.trevlar.slotkit.api.state.SlotState
Returns the channel with the given id, or empty if not registered.
getContainerSize() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
getFlatIndexEnd() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
End of this group's index range in the slot list (exclusive).
getFlatIndexStart() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Start of this group's index range in the slot list (inclusive).
getGroup() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
The CreatedSlotGroup this slot belongs to.
getGroupContaining(int) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The group owning the slot at flatIndex, or null.
getGroupsFor(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The slot groups on panelId, in declaration order; empty if none or unknown.
getHeight() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
The fitted height: one row per columns() visible slots, growing downward.
getHeight() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
getHoveredGroup() - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
The CreatedSlotGroup of the hovered CreatedSlot, or null.
getItem() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Returns the item in this slot, or ItemStack.EMPTY when the panel is inert, so a hidden panel's storage is never exposed.
getItem(int) - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
getLocalIndex() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Index within the group (0-based).
getMaxStackSize() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
getNoItemIcon() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
The group's SlotSpec.emptyIcon outline when declared, drawn by vanilla on an empty slot.
getPadding() - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
The content padding inside the panel's edge.
getPairedWith() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
The groups this one shift-clicks into first.
getPanel() - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
The panel this adapter declares.
getPanel(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The panel with panelId, or null.
getPanelButtonId(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The button id that toggles panelId, or CustomContainerMenu.PANEL_NOT_FOUND.
getPanels() - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The panels in declaration order, as the menu knows them.
getRightClickHandler() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Returns the right-click handler for this group, or null.
getShiftClickPriority() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Returns the numeric shift-click priority (higher = tried first).
getSlots(AbstractContainerMenu) - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Returns this group's slots, taken from the handler's slot list.
getStack(int) - Method in class com.trevlar.slotkit.api.storage.EphemeralStorage
 
getStack(int) - Method in interface com.trevlar.slotkit.api.storage.Storage
Returns the stack at the given local index.
getStack(int) - Method in class com.trevlar.slotkit.api.storage.VirtualStorage
 
getStorage() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Returns where items live.
getStorage() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
Returns the backing Storage.
getTargets() - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, with on and onGroup.
getWidth() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
The fitted width: at most columns() slots per row, narrower when fewer than a full row are shown.
getWidth() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
GRINDSTONE_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
GRINDSTONE_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
group() - Method in class com.trevlar.slotkit.api.group.CategoryPanels.On
The group this panel is on, on the open screen this frame, or null where it isn't showing.
group() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns the value of the group record component.
group() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
The group this element shows.
group(SlotGroupCategory, PanelPosition) - Static method in class com.trevlar.slotkit.api.slot.SlotPlacement
group(SlotGroupId) - Static method in interface com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest
A group on this menu: a created group, or a vanilla one by SlotGroupId.category(...).
group(SlotGroupId, PanelPosition) - Static method in class com.trevlar.slotkit.api.slot.SlotPlacement
Around a slot group's box: region(OutsideRegion) stacks with the group's other panels by priority, as a SlotGroupPanelAdapter did; center() and pixel(...) work as anywhere.
group(String) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Slot-group id within the panel.
group(String, SlotGroupCategory, Storage) - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
Adds a slot group (priority 100).
group(String, SlotGroupCategory, Storage, int) - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
Adds a slot group with a shift-click priority (higher is tried first).
Group(SlotGroupId) - Constructor for record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.Group
Creates an instance of a Group record class.
groupId() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Returns the value of the groupId record component.
groupId() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Group this slot belongs to within its panel.
groupId() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
groupId(String, String) - Static method in class com.trevlar.slotkit.api.slot.CreatedSlots
The SlotGroupId of a group registered through CreatedSlots.onto(AbstractContainerMenu, Player), which is what SlotGroupPanelAdapter.onGroup(...) anchors to.
GroupKey - Class in com.trevlar.slotkit.api.window
A bulk-addressing group: a stable id plus a membership predicate over Addresses.
GroupKey(Identifier, Predicate) - Constructor for class com.trevlar.slotkit.api.window.GroupKey
GroupKey(Identifier, Predicate, int) - Constructor for class com.trevlar.slotkit.api.window.GroupKey
 
groupOf(int) - Static method in interface com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest
Whatever group holds menu slot menuSlot on this menu: "back to where the item came from".
groupOf(Address) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The created group a created slot's address belongs to, or null for anything else (a vanilla slot's group depends on its menu; see SlotGroups.of(com.trevlar.slotkit.api.window.SlotRef)).
GroupOf(int) - Constructor for record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.GroupOf
Creates an instance of a GroupOf record class.
groups() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the groups record component.
groups() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns the value of the groups record component.
groups(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Every declared slot group (SlotGroups.all()) that operation applies to, in that order: the list a settings screen offers for it.
groups(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Every slot group on menu, each with its own identity and its own slots.

H

handleOpenRequest(ServerPlayer, Identifier) - Static method in class com.trevlar.slotkit.api.menu.CustomMenu
A client's request to open menu id (the generic open payload), checked on the server: an unknown menu, a menu without CustomMenu.Builder.validWhen, or one whose predicate does not hold for player is refused and logged.
hasClickedOutside(double, double, int, int) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
"Inside" is any placed panel, not just the image rectangle: a region panel beside the frame is inside, so a click there is a slot interaction, not a drop.
hashCode() - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Category
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.item.ItemSources.Found
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.Group
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.GroupOf
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToPlayer
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToVanilla
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.Address
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.Decl.Inherit
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.Decl.Set
Returns a hash code value for this object.
hashCode() - Method in class com.trevlar.slotkit.api.window.GroupKey
 
hashCode() - Method in record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EnderChest
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EntityKey
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.PlayerInventory
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.ReactCause
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns a hash code value for this object.
hashCode() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns a hash code value for this object.
hashCode() - Method in class com.trevlar.slotkit.api.window.WindowHandle
 
hasServerDeclarations() - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Whether any server-tier declaration exists at all: a seam that has nothing to enforce skips its work, so a slot nobody touched stays exactly vanilla.
height() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns the value of the height record component.
heldAt(int, int) - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
Where the stack on the cursor is drawn: its slot's place while a pair is pending (the window open, the cursor still), else null, at the cursor.
heldId(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The container id the player's next menu must not take while one is set aside, or -1.
hidden() - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
The panel starts hidden; the server shows it (CustomContainerMenu.setPanelVisible(String, boolean)).
hiddenOnlyOnClient() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Library use: the panel is always shown on the server, and hidden only by the client's reveal.
holds(SlotRef, ItemStack) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
Whether any slot in ref's group already holds the same item as incoming (ItemStack.isSameItem(ItemStack, ItemStack); components may differ), the slot itself included.
HOPPER_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
hostedVanillaSlot(AbstractContainerMenu) - Method in class com.trevlar.slotkit.api.slot.SlotElement
The vanilla slot this element hosts on menu when it placed the slot in the last frame, else null.
HOTBAR_SWAP - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether a number key may swap this slot with a hotbar slot.
hovered() - Static method in class com.trevlar.slotkit.api.window.WindowSignals
The hovered slot's Address, or null if nothing is hovered.
hoveredCreatedSlot() - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
The CreatedSlot under the mouse, or null if it isn't over one.
hoveredName() - Static method in class com.trevlar.slotkit.api.window.WindowSignals
The hovered slot's display name (e.g.
How a move runs - Section in class com.trevlar.slotkit.api.slot.QuickMoveRoutes
 

I

id() - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Returns the value of the id record component.
id() - Method in class com.trevlar.slotkit.api.item.ItemState
 
id() - Method in class com.trevlar.slotkit.api.menu.CustomMenu
This menu's registry id (also the open-payload key).
id() - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Returns the value of the id record component.
id() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns the value of the id record component.
id() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Returns this group's unique identifier within its panel.
id() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The kind's id: what declarations every instance shares are made on.
id() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Its own group id: on its slots (CreatedSlot.panelId()), in addresses and routes.
id() - Method in class com.trevlar.slotkit.api.slot.ParityGroup
The group's id.
id() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.Group
Returns the value of the id record component.
id() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the id record component.
id() - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Identifier for this spec, for debug logging and to tell apart specs that share an owner type.
id() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns the value of the id record component.
id() - Method in class com.trevlar.slotkit.api.window.GroupKey
 
id() - Method in record class com.trevlar.slotkit.api.window.ReactCause
Returns the value of the id record component.
Identity - Section in class com.trevlar.slotkit.api.slot.ParityGroup
 
Identity - Section in class com.trevlar.slotkit.api.window.GroupKey
 
Identity contract - Section in record class com.trevlar.slotkit.api.window.Address
 
idOf(String, String) - Static method in class com.trevlar.slotkit.api.slot.ParityGroup
The id of the group groupId registered under owner, without the handle: what another mod names it by (SlotGroupPanelAdapter.onGroup, Address.createdSlot(id, i)).
IN_PLACE - Enum constant in enum class com.trevlar.slotkit.api.slot.SlotDoubleClick.Kind
The stack never left its slot (the slot is locked) and the cursor is empty.
In a clipping container - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
index() - Method in class com.trevlar.slotkit.api.group.CategoryPanels.On
This panel's number, 0 to MAX_SHOWN - 1: the count of shown groups before its own.
Indices, not raw slots - Section in interface com.trevlar.slotkit.api.group.SlotGroupResolver
 
inherent(ModeScope, SlotGroupCategory, BehaviorKey, V) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Declares value as the default for operation on every slot in category that does not declare its own (the category rung), while the acting player's mode is in scope.
inherent(SlotGroupCategory, BehaviorKey, V) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: inherent(ModeScope.BOTH, category, operation, value).
inherit() - Static method in interface com.trevlar.slotkit.api.window.Decl
 
Inherit() - Constructor for record class com.trevlar.slotkit.api.window.Decl.Inherit
Creates an instance of a Inherit record class.
INHERIT - Static variable in interface com.trevlar.slotkit.api.window.Decl
 
init() - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
inside() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns the value of the inside record component.
installClientPlayer(Supplier) - Static method in class com.trevlar.slotkit.api.state.SlotState
SlotKitClient installs the client player lookup at client init.
installClientSender(Consumer) - Static method in class com.trevlar.slotkit.api.state.SlotState
SlotKitClient installs the client's packet sender at client init.
instanceId(int) - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The id instance number number of this kind has on any menu.
instanceOf(Slot) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The on-demand instance slot belongs to (seeing through creative's wrapper), or null.
instances(AbstractContainerMenu) - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The live instances of this kind on menu, in the order they were added, on either side.
Instances - Section in class com.trevlar.slotkit.api.slot.OnDemandGroup
 
INVALID - Enum constant in enum class com.trevlar.slotkit.api.menu.MenuSwitch.Reason
Its stillValid failed (walked away, the block broke), or the player died or changed dimension.
inventory() - Static method in record class com.trevlar.slotkit.api.item.ItemScope
The inventory's 36 main slots only: no carried attachments, no ender chest, no containers.
inventory(AbstractContainerMenu, Player, int) - Static method in record class com.trevlar.slotkit.api.window.SlotRef
The player-inventory slot at index as it sits on menu, so it resolves with its menu category; the bare container form when the menu does not show it (vanilla swaps against the inventory directly, so the swap works on such a menu too).
INVENTORY - Enum constant in enum class com.trevlar.slotkit.api.item.ItemRef.Source
 
INVENTORY_INSERT - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether an item given to the inventory may land in this slot, including topping up a partial stack already there.
is(ItemStack) - Method in class com.trevlar.slotkit.api.item.ItemState
Whether stack carries the state with a true value (for a flag) or any value.
isActive() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Whether this slot is active (visible and usable).
isElementOpaque() - Method in class com.trevlar.slotkit.api.slot.SlotElement
Not solid: on a transparent panel a slot claims nothing itself; vanilla's slot machinery owns its interaction.
isElementOpaque() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Not solid, like the slots it hosts (see SlotElement): on a transparent panel the flow claims nothing, and vanilla resolves the slot under the cursor.
isElementOpaque() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
Not solid, like the slots it shows (see SlotElement).
isEmpty() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
isHovered(Address) - Static method in class com.trevlar.slotkit.api.window.WindowSignals
Whether address is the hovered slot.
isInert() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
True when this slot's panel is hidden, or the slot is past its group's active count.
isInstance(String) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Whether slotPanelId is an instance's.
isPanelToggleable(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Whether a player may show and hide the panel (SlotLayout.PanelBuilder.toggleable()).
isPanelVisible(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Whether the panel is shown now (on the client: as the server last said).
isPortable(BlockEntity) - Static method in class com.trevlar.slotkit.api.state.SlotState
Whether a block entity's slot state travels with its item.
isRemoved() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Whether it was removed, or its menu closed.
isSelected(Address) - Static method in class com.trevlar.slotkit.api.window.WindowSignals
Whether address is the last-selected slot.
isShiftClickTarget(SlotGroupId) - Static method in class com.trevlar.slotkit.api.slot.ParityGroup
Whether group declared SlotSpec.shiftClickIn(true).
isShown() - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Whether the panel is shown now.
isShown(SlotGroupId.Created) - Static method in class com.trevlar.slotkit.api.slot.ClientSlots
Whether the open screen's menu carries group and at least one of its slots is live on this client (not inert).
isStale() - Method in class com.trevlar.slotkit.api.item.LiveItem
Checks the chain now: true once the item is gone, moved or changed by anything else.
isTargetingDeclared() - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, with on and onGroup.
isVanilla() - Method in interface com.trevlar.slotkit.api.group.SlotGroupId
Whether this is one of vanilla's own groups (a SlotGroupId.Category group of a vanilla category).
isVisible() - Method in class com.trevlar.slotkit.api.slot.SlotElement
Hidden by its own visibleWhen, when the slot can't be resolved on this screen, or when its panel is hidden.
isVisible() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Visible only while at least one child slot is, so the panel reserves no space and draws no frame when every group is hidden.
isVisible() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
itemContainer(int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
Saves slot-group content on an ItemStack in vanilla's DataComponents.CONTAINER component (ItemContainerContents).
ItemContents - Interface in com.trevlar.slotkit.api.item
A container that shows one item's contents, such as a shulker box opened from the player's inventory, and says where that item is.
itemPath(Player) - Method in interface com.trevlar.slotkit.api.item.ItemContents
Where the item is, as player names it, or null when that player can't name it (another player's inventory) or the item is gone.
ItemPath - Record Class in com.trevlar.slotkit.api.item
Where one item is, as both sides can name it: a top-level slot in the inventory, the ender chest, a supplied container (ItemRef.Source.CONTAINER, such as an open chest) or a carried attachment (ItemRef.Source.CARRIED, named by its id), then the index inside each container on the way down.
ItemPath(ItemRef.Source, int, List) - Constructor for record class com.trevlar.slotkit.api.item.ItemPath
A path in the inventory, the ender chest or a supplied container (the 2.1 constructor).
ItemPath(ItemRef.Source, int, List, Identifier) - Constructor for record class com.trevlar.slotkit.api.item.ItemPath
Creates an instance of a ItemPath record class.
ItemRef - Interface in com.trevlar.slotkit.api.item
One item found by ItemSources, wherever it sits: a top-level slot, or inside a shulker box or bundle, any number of containers deep.
ItemRef.Source - Enum Class in com.trevlar.slotkit.api.item
Where a top-level slot is: the player's inventory, their ender chest, a Container the caller supplies (an open chest or barrel), which the Container overloads of ItemSources walk and resolve, or a player attachment declared carried() (ItemPath.attachment() says which; since 2.2.0, met only under ItemScope.carried).
ItemScope - Record Class in com.trevlar.slotkit.api.item
Where ItemSources looks: the player's 36 main slots always, and optionally their carried attachments, the ender chest, the inside of shulker boxes and the inside of bundles, nested up to a depth limit.
ItemScope(boolean, boolean, boolean, int) - Constructor for record class com.trevlar.slotkit.api.item.ItemScope
The 2.1 constructor: carried attachments off.
ItemScope(boolean, boolean, boolean, int, boolean) - Constructor for record class com.trevlar.slotkit.api.item.ItemScope
Creates an instance of a ItemScope record class.
ItemSources - Class in com.trevlar.slotkit.api.item
Every item a player has, including the ones inside shulker boxes and bundles, to any depth: one walk, with every write going back up the chain of containers to the top-level slot.
ItemSources.Found - Record Class in com.trevlar.slotkit.api.item
One item ItemSources.find(Player, ItemScope, Predicate) saw: where it is, and a copy of it (path().depth() is how deep).
ItemState<T> - Class in com.trevlar.slotkit.api.item
A value that rides on an item: "open", "favorite", a mark.
ItemState.Saved - Enum Class in com.trevlar.slotkit.api.item
Whether the state is saved with the item.
ItemVisitor - Interface in com.trevlar.slotkit.api.item
Called by ItemSources.walk(ServerPlayer, ItemScope, ItemVisitor) for each item, nearest first.
Its host - Section in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
Its panels - Section in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 

J

judging(Slot, Supplier) - Static method in class com.trevlar.slotkit.api.window.GatingContext
Library use: runs one gate decision on slot, so GatingContext.current() names it.

K

KEEP - Enum constant in enum class com.trevlar.slotkit.api.slot.DropRule
 
key() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the key record component.
Keyed by address - Section in class com.trevlar.slotkit.api.window.WindowSignals
 
KeyedStorage - Interface in com.trevlar.slotkit.api.storage
A Storage that knows its own persistent identity.
KeyedStorages - Class in com.trevlar.slotkit.api.storage
Factories for KeyedStorage, a Storage that declares its own PersistentContainerKey so per-slot state persists for registered slots.
keyPressed(KeyEvent) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Key dispatch: panel elements first (a Dropdown's arrows), then the key registry, then vanilla.
kind() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Its kind.
kind() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns the value of the kind record component.
kind() - Method in record class com.trevlar.slotkit.api.window.Address
Returns the value of the kind record component.
kindAddress(Address) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The same slot of the kind, for a created slot's address in an instance, or null: where the engine looks when the instance's own address declares nothing.
kindOf(SlotGroupId.Created) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The kind a created group is an instance of, or null when it's no instance.
kindOrSelf(SlotGroupId) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
group's kind when it's an instance, else group.
KindTag - Enum Class in com.trevlar.slotkit.api.window
What kind of addressable thing an Address names.
Known limitation - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 

L

label() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
label(String) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Display label for these slots' names.
label(String) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Display name for the group's slots, applied like CreatedSlots.Builder.label(String): each slot is named "{label} {n}" (from 1) in a multi-slot group, or just "{label}" for a single slot.
langKey(SlotGroupId) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The translation key a group's name lives under; see the class doc.
langKey(SlotGroupSet) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The translation key a set's name lives under.
langKey(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
The translation key an operation's name lives under: slot_operation.<namespace>.<path>.
lapsed(Slot, ItemStack) - Method in interface com.trevlar.slotkit.api.slot.SlotDoubleClick.Pending
A pending pair ended with no second click (a copy of the lifted stack), at a tick, a frame or a click.
layoutWithin(int) - Method in class com.trevlar.slotkit.api.slot.SlotElement
The element's size is the slot's frame and never shrinks.
layoutWithin(int) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Stores the panel's content-width budget as the wrap limit.
layoutWithin(int) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
left(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The player is leaving the server.
LEFT - Enum constant in enum class com.trevlar.slotkit.api.menu.MenuSwitch.Reason
The player left the server.
libraryDefault() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns the value of the libraryDefault record component.
listing() - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The player-facing list: every lone group, and every set once in place of its groups.
live(ServerPlayer, ItemPath) - Static method in class com.trevlar.slotkit.api.item.ItemSources
A LiveItem bound to the item at path in the player's inventory, ender chest or a carried attachment, for a menu that stays open on it across many writes.
live(Container, ItemPath) - Static method in class com.trevlar.slotkit.api.item.ItemSources
A LiveItem bound to the item at a ItemRef.Source.CONTAINER path in container.
LiveItem - Class in com.trevlar.slotkit.api.item
One item at an ItemPath, held for as long as a menu stays open on it: a shulker box in a chest, or a bundle in a shulker in a chest.
Looked up each frame, not held - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
LOOM_BANNER - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
LOOM_DYE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
LOOM_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
LOOM_PATTERN - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 

M

markDirty() - Method in class com.trevlar.slotkit.api.storage.EphemeralStorage
 
markDirty() - Method in interface com.trevlar.slotkit.api.storage.Storage
Marks this storage as changed.
markDirty() - Method in class com.trevlar.slotkit.api.storage.VirtualStorage
 
markDirty(O) - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Marks the owner as needing to be saved.
matches(SlotGroupId) - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, with on and onGroup.
MAX_SHOWN - Static variable in class com.trevlar.slotkit.api.group.CategoryPanels
How many groups of one category get a panel at once on one screen.
maxDepth() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns the value of the maxDepth record component.
maxDepth(int) - Method in record class com.trevlar.slotkit.api.item.ItemScope
 
maxStackSize(ItemStack, int) - Method in interface com.trevlar.slotkit.api.window.SlotGate
The per-item stack cap for this slot, given vanilla's own cap.
mayPickup(Player) - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Whether items can be taken.
mayPickup(Player, GatingContext) - Method in interface com.trevlar.slotkit.api.window.SlotGate
Whether player may take from the gated slot in this context.
mayPlace(ItemStack) - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Whether this stack can be placed here.
mayPlace(ItemStack, GatingContext) - Method in interface com.trevlar.slotkit.api.window.SlotGate
Whether stack may be placed into the gated slot in this context.
mending() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Equivalent to mending(true).
mending(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Puts every slot in this group in the XP-orb Mending repair pool.
MENDING - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Whether items in this slot take part in XP-orb Mending.
MendingCandidates - Class in com.trevlar.slotkit.api.slot
Lets a consumer add extra items to the XP repair pool, beyond the slots opted in through BehaviorKeys.MENDING.
MendingCandidates.Candidate - Interface in com.trevlar.slotkit.api.slot
One mendable item plus how to persist its repair.
MendingCandidates.Provider - Interface in com.trevlar.slotkit.api.slot
Supplies a player's extra mend candidates when an XP orb is collected.
menu() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the menu record component.
Menu-independent and menu-bound - Section in class com.trevlar.slotkit.api.window.Window
 
menuIndex() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns the value of the menuIndex record component.
menuOpened(ServerPlayer, Component) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
openMenu opened the player's new menu under title.
menuOpening(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
openMenu made menu, just before its first sync: an MenuSwitch.open(ServerPlayer, MenuProvider) gets its cursor stack.
MenuPanel - Record Class in com.trevlar.slotkit.api.menu
A panel as a menu knows it on both sides: its id and whether its slots are shown.
MenuPanel(String, BooleanSupplier) - Constructor for record class com.trevlar.slotkit.api.menu.MenuPanel
Creates an instance of a MenuPanel record class.
MenuScreenFactory - Interface in com.trevlar.slotkit.api.menu
Builds the client CustomContainerScreen for a registered CustomMenu.
menuSlot() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.GroupOf
Returns the value of the menuSlot record component.
menuSlot(MenuType, int) - Static method in record class com.trevlar.slotkit.api.window.Address
Slot index of menu.slots on every menu of type: the menu-based form of a vanilla slot's address.
Menus on a nested item - Section in class com.trevlar.slotkit.api.item.ItemSources
 
MenuSwitch - Class in com.trevlar.slotkit.api.menu
Switching a player between menus while one menu, the one they opened in the world, waits open behind the others.
MenuSwitch.Reason - Enum Class in com.trevlar.slotkit.api.menu
Why the set-aside menu closed.
MenuSwitch.SetAsideClosed - Interface in com.trevlar.slotkit.api.menu
Hears the set-aside menu close on its own.
MERCHANT_PAYMENT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
MERCHANT_RESULT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
Minting one - Section in record class com.trevlar.slotkit.api.window.Address
 
Modded(Identifier, CompoundTag) - Constructor for record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
Creates an instance of a Modded record class.
Mode scope - Section in class com.trevlar.slotkit.api.window.WindowEngine
 
Mode scope - Section in record class com.trevlar.slotkit.api.state.SlotStateChannel
 
MOUNT_BODY_ARMOR - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
MOUNT_SADDLE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
MOUNT_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
mountOpened(ServerPlayer, int, int) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
A mount's inventory opened for the player (openHorseInventory, openNautilusInventory), which skips openMenu.
mouseClicked(MouseButtonEvent, boolean) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Click dispatch: element, drag mode, right-click handler, events, vanilla.
mouseDragged(MouseButtonEvent, double, double) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Drag dispatch: an active drag mode gets the slots it crosses.
mouseReleased(MouseButtonEvent) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Drag end: a slot drag mode ends, and every shown element hears the release (a ScrollContainer's scrollbar drag ends wherever the cursor is).
mouseScrolled(double, double, double, double) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Scroll: panel elements first (a ScrollContainer), then vanilla.

N

name() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the name record component.
name(SlotGroupId) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
A group's display name.
name(SlotGroupSet) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
A set's display name.
name(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
The operation's display name, for a settings list.
Name and description - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
nameOf(Address, AbstractContainerMenu, Slot) - Static method in class com.trevlar.slotkit.api.window.SlotNames
The display name of the slot, or null if it has none (an unnamed or uncategorized vanilla slot, or a modded menu with no resolver).
Names - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
namespace() - Method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Returns the value of the namespace record component.
namespace() - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
Returns the value of the namespace record component.
Namespace your panel ids - Section in class com.trevlar.slotkit.api.menu.CustomMenu
 
Namespace your panel ids - Section in class com.trevlar.slotkit.api.menu.SlotLayout
 
naturalWidth() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
The width of all slots in one row, deliberately independent of visibility, so the panel's min(naturalWidth, ceiling) comes out as the stable ceiling (see the class doc).
naturalWidth() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
A full row's width, the same whichever slots are shown, so the panel's budget stays stable.
NO - Enum constant in enum class com.trevlar.slotkit.api.item.ItemState.Saved
 
NONE - Static variable in interface com.trevlar.slotkit.api.window.ReactiveHook
Does nothing.
Not tied to slot creation - Section in class com.trevlar.slotkit.api.window.GroupKey
 
number() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Its number among its kind's instances on the menu, from 0.

O

of(boolean) - Static method in enum class com.trevlar.slotkit.api.window.TriBool
 
of(int) - Static method in class com.trevlar.slotkit.api.storage.EphemeralStorage
Same as the constructor; reads better in builder chains.
of(SlotGroupId) - Static method in class com.trevlar.slotkit.api.slot.SlotGroupElement
The group with id, in rows of nine (a vanilla container's width).
of(SlotGroupId) - Static method in class com.trevlar.slotkit.api.window.GroupKey
The cascade group of a slot group, at GroupKey.PRECEDENCE_GROUP.
of(SlotGroupId.Created, int) - Static method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Slots 0 to count - 1 of a group, for an onto group or one named by id.
of(CustomMenu) - Static method in class com.trevlar.slotkit.api.menu.ClientMenu
The client half of menu.
of(ParityGroup) - Static method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Every slot of a parity group, in order, flowing to the panel's width: the one-liner for putting a group in a panel.
of(SlotRef) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The slot group ref is in, or null when nothing is known: a created slot's own group; a vanilla slot's group on its menu, which is its category's; a player-inventory slot's group by its index when the menu does not say, or when there is no menu (world pickup).
of(String, Codec, StreamCodec, ItemState.Saved) - Static method in class com.trevlar.slotkit.api.item.ItemState
A typed state.
of(Identifier) - Static method in record class com.trevlar.slotkit.api.window.ReactCause
Mints a cause from any identifier.
of(Identifier, Class, V, Tier, KindTag, KindTag...) - Static method in record class com.trevlar.slotkit.api.window.BehaviorKey
 
of(Container, int, Player) - Static method in record class com.trevlar.slotkit.api.window.SlotRef
A slot reached with no menu open: an inventory insert.
of(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Every category on menu with its slots.
of(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.window.WindowView
A view over menu.
of(AbstractContainerMenu, Slot, Player) - Static method in record class com.trevlar.slotkit.api.window.SlotRef
A slot reached through an open menu: the click and shift-click seams.
of(Slot) - Static method in class com.trevlar.slotkit.api.slot.CreatedSlot
The created slot slot is, or null for any other slot.
offersSent(ServerPlayer, int, int) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The player's trading menu containerId was sent its offers at traderLevel.
OFFHAND_SWAP - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether the offhand key may swap this slot with the offhand.
OFFSCREEN - Static variable in class com.trevlar.slotkit.api.slot.CreatedSlots
Off-screen position for a registered slot's vanilla Slot.x/y.
on(SlotGroupCategory...) - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, the group is part of the panel's placement: in(ModeScope.BOTH, SlotPlacement.group(category, position)).
ON_INSERT_OBSERVED - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Fires on the client when synced slot contents grow.
ON_TAKE_OBSERVED - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Fires on the client when synced slot contents shrink.
onAttach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotElement
 
onAttach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
onAttach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
OnDemandGroup - Class in com.trevlar.slotkit.api.slot
A slot group a menu gets on demand: declared once at init, like a ParityGroup, but on no menu until the server adds an instance of it to the menu the player has open, and gone again when the server removes it or the menu closes.
OnDemandGroup.Instance - Class in com.trevlar.slotkit.api.slot
One instance of a kind, on one menu.
onDemandInstance() - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
The on-demand instance this group is, or null.
onDemandInstance(OnDemandGroup.Instance) - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
 
onDetach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotElement
 
onDetach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
onDetach(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
onDrag(CreatedSlot) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.DragMode
Called when the mouse moves over a new slot during a drag.
onDragEnd() - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.DragMode
Called when the mouse button is released, ending the drag.
onDragStart(CreatedSlot, int) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.DragMode
Called when a drag starts on a CreatedSlot.
One menu only (use ParityGroup for parity) - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
onEmptySlotClick(CreatedSlot, int) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
An empty CreatedSlot was clicked with an empty cursor.
One store per tier - Section in class com.trevlar.slotkit.api.window.WindowEngine
 
onGroup(SlotGroupId...) - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, the group is part of the panel's placement: in(ModeScope.BOTH, SlotPlacement.group(group, position)).
onInsertObserved(ReactiveHook) - Method in class com.trevlar.slotkit.api.window.SlotHandle
Client-observed reaction when synced contents grow.
onKey(KeyEvent, CustomContainerScreen) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.KeyAction
 
only() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns the value of the only record component.
only(SlotGroupCategory...) - Static method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
These vanilla groups, and a group a mod added only when its declared category is one of them.
onPanelToggle(Panel, boolean) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
A panel's visibility changed.
onQuickMove(CreatedSlot, ItemStack) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
A shift-click (quick move) is about to happen on a CreatedSlot.
onRepaired() - Method in interface com.trevlar.slotkit.api.slot.MendingCandidates.Candidate
Called after MendingCandidates.Candidate.stack() is repaired; save and sync the source (write it back or mark it dirty).
onSetAsideClosed(MenuSwitch.SetAsideClosed) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
Adds a listener for the set-aside menu closing on its own.
onSlotClick(CreatedSlot, int) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
A CreatedSlot was clicked.
onSlotHoverEnter(CreatedSlot) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
Mouse entered a CreatedSlot's hover area.
onSlotHoverExit(CreatedSlot) - Method in interface com.trevlar.slotkit.api.menu.CustomContainerScreen.ScreenEventListener
Mouse left a CreatedSlot's hover area.
onTakeObserved(ReactiveHook) - Method in class com.trevlar.slotkit.api.window.SlotHandle
Client-observed reaction when synced contents shrink.
onto(AbstractContainerMenu, Player) - Static method in class com.trevlar.slotkit.api.slot.CreatedSlots
Starts adding slots to menu, owned by player.
open(ServerPlayer) - Method in class com.trevlar.slotkit.api.menu.CustomMenu
Opens this menu for the player, directly on the server with no extra networking.
open(ServerPlayer, MenuProvider) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
Opens next for player.
OPEN - Static variable in interface com.trevlar.slotkit.api.window.SlotGate
The permissive default, vanilla behavior: the library default for BehaviorKeys.GATING.
openInventory(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
Opens the player's own inventory screen, as MenuSwitch.open(ServerPlayer, MenuProvider) does a menu: the menu in front is set aside or closes, and the cursor stack moves over.
Open screens - Section in class com.trevlar.slotkit.api.item.ItemSources
 
Open to new kinds - Section in enum class com.trevlar.slotkit.api.window.KindTag
 
OperationProbe - Class in com.trevlar.slotkit.api.window
Lets a test mod check the click-tag hand-off and the in-world actions: which operation a sent click carried, and whether an action would be refused.
OperationProbe.Tag - Record Class in com.trevlar.slotkit.api.window
A click tag as the probe sees it: the operation pair it carries.
Order - Section in class com.trevlar.slotkit.api.item.ItemSources
 
Other containers - Section in class com.trevlar.slotkit.api.item.ItemSources
 
over(String, ItemState, SlotDecorations.Decoration) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
decoration draws over the item, and answers its tooltip, while the item carries state.
over(String, SlotLooks.When, SlotDecorations.Decoration) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
decoration draws over the item, and answers its tooltip, while when holds.
override(Address, String) - Static method in class com.trevlar.slotkit.api.window.SlotNames
Names the slot at address (a created or custom slot).
owner() - Method in record class com.trevlar.slotkit.api.window.Address
Returns the value of the owner record component.
OWNER_KEY - Static variable in class com.trevlar.slotkit.api.storage.KeyedStorages
Payload key: owning player UUID (string form), when scope is KeyedStorages.SCOPE_PLAYER.

P

Pair(AbstractContainerScreen, Slot, int, ItemStack, SlotDoubleClick.Kind) - Constructor for record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Creates an instance of a Pair record class.
pairsWith(CreatedSlotGroup) - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Makes shift-click from this group prefer target over numeric priority.
pairsWith(String, String) - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
Pairs the last-added group with a target group, tried first when shift-clicking out of it ("panelId.groupId" resolved at build).
panel() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns the value of the panel record component.
panel(String) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Panel id, unique per group.
panel(String, Consumer) - Method in class com.trevlar.slotkit.api.menu.ClientMenu
How panel panelId looks, on MenuKit's Panel.Builder.
panel(String, Consumer) - Method in class com.trevlar.slotkit.api.menu.SlotLayout
Adds a panel, configured by config.
PANEL - Enum constant in enum class com.trevlar.slotkit.api.window.KindTag
A panel itself, for its own properties (visibility, opacity).
PANEL_ELEMENT - Enum constant in enum class com.trevlar.slotkit.api.window.KindTag
A non-slot panel element (button, label, decoration).
PANEL_NOT_FOUND - Static variable in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Returned by CustomContainerMenu.getPanelButtonId(String) when no panel matches.
panelId() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Returns the value of the panelId record component.
panelId() - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Panel this slot belongs to.
panelId() - Method in class com.trevlar.slotkit.api.slot.SlotElement
The panel id of the created slot this element shows (its registry key), or null for a vanilla slot.
PanelSlots(String, boolean, boolean, List) - Constructor for record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Creates an instance of a PanelSlots record class.
Panel visibility is the server's - Section in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 
ParityGroup - Class in com.trevlar.slotkit.api.slot
A slot group with container parity: real, synced slots on every screen that shows the player inventory (survival, creative, and every chest, furnace or modded container), registered in one call with no mixin.
Parked when not shown - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
parse(String) - Static method in interface com.trevlar.slotkit.api.group.SlotGroupId
parse(String) - Static method in record class com.trevlar.slotkit.api.group.SlotGroupSet
parse(String) - Static method in record class com.trevlar.slotkit.api.window.Address
Reads Address.asString() back.
path() - Method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Returns the value of the path record component.
path() - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
Returns the value of the path record component.
path() - Method in interface com.trevlar.slotkit.api.item.ItemRef
Where this item is, as a path both sides can name (see ItemPath).
path() - Method in record class com.trevlar.slotkit.api.item.ItemSources.Found
Returns the value of the path record component.
path() - Method in class com.trevlar.slotkit.api.item.LiveItem
Where the item is.
pathOf(Player, Slot) - Static method in class com.trevlar.slotkit.api.item.ItemSources
The path of the item in a menu slot, for acting on a slot the player clicked: an inventory main slot, an ender chest slot, or a slot over one of this player's carried attachments, or a slot of a container that declares the item it shows (ItemContents, such as a box opened from the inventory), as the index inside that item.
payload() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
A copy of the payload; changing it does not change the key.
Persistence and slot state - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
PersistentContainerKey - Interface in com.trevlar.slotkit.api.window
Persistent identity for a Container, the owner a slot's state attaches to, in a form that survives session boundaries.
PersistentContainerKey.BlockEntityKey - Record Class in com.trevlar.slotkit.api.window
Block-entity-backed container (chest, shulker box, furnace, hopper, etc.).
PersistentContainerKey.EnderChest - Record Class in com.trevlar.slotkit.api.window
The player's ender chest (distinct from their main inventory).
PersistentContainerKey.EntityKey - Record Class in com.trevlar.slotkit.api.window
Entity-backed container (donkey, llama, mule, minecart-with-chest, etc.).
PersistentContainerKey.Modded - Record Class in com.trevlar.slotkit.api.window
Modded container type.
PersistentContainerKey.PlayerInventory - Record Class in com.trevlar.slotkit.api.window
The player's main inventory, hotbar, armor, and offhand slots.
Placement is the panel's - Section in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
 
player() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the player record component.
player(Storage, Identifier, UUID) - Static method in class com.trevlar.slotkit.api.storage.KeyedStorages
Wraps backing as a player-scoped KeyedStorage.
PLAYER - Static variable in interface com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest
The player's main inventory and hotbar, hotbar end first, as vanilla moves a container's stack to the player.
PLAYER_ARMOR - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
PLAYER_HOTBAR - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
PLAYER_INVENTORY - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
PLAYER_OFFHAND - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
playerAttached(String, String, int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
Saves slot-group content on a Player in a Fabric attachment.
playerAttachedVisible(String, String, int) - Static method in class com.trevlar.slotkit.api.storage.StorageAttachment
StorageAttachment.playerAttached(String, String, int), with the contents also sent to every client tracking the player, for slots whose items other players see: an elytra worn from its own slot, a cape, anything drawn on the player model.
playerId() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EnderChest
Returns the value of the playerId record component.
playerId() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.PlayerInventory
Returns the value of the playerId record component.
playerInventory(int) - Static method in record class com.trevlar.slotkit.api.window.Address
Slot index of the viewing player's own inventory, the same slot on every screen that shows it, survival's and creative's included: 0 to 8 the hotbar, 9 to 35 the main grid, 36 to 39 armor (feet to head), 40 the offhand.
PlayerInventory(UUID) - Constructor for record class com.trevlar.slotkit.api.window.PersistentContainerKey.PlayerInventory
Creates an instance of a PlayerInventory record class.
PlayerStorage - Interface in com.trevlar.slotkit.api.storage
Marks a Storage as the player inventory side of a menu, as opposed to the container side.
PlayerStorageAttachment() - Constructor for class com.trevlar.slotkit.api.storage.StorageAttachment.PlayerStorageAttachment
 
pos() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Returns the value of the pos record component.
precedence() - Method in class com.trevlar.slotkit.api.window.GroupKey
Where this group sits inside the per-group level; higher wins.
PRECEDENCE_CATEGORY - Static variable in class com.trevlar.slotkit.api.window.GroupKey
A category's inherent declarations, applying to every group in it.
PRECEDENCE_DEFAULT - Static variable in class com.trevlar.slotkit.api.window.GroupKey
A consumer-declared bulk group, unless it asks for another rung.
PRECEDENCE_GROUP - Static variable in class com.trevlar.slotkit.api.window.GroupKey
A slot group's own declaration, outranks the category it belongs to.
Precedence, the rungs inside the per-group level - Section in class com.trevlar.slotkit.api.window.GroupKey
 
Presence - Section in class com.trevlar.slotkit.api.slot.SlotPlacement
 
Presence - Class in com.trevlar.slotkit.api
What the other side runs, as the handshake found it when the player joined.
presentsSlotAt(InputContext) - Method in class com.trevlar.slotkit.api.slot.SlotElement
Whether this element's live slot is under the point: vanilla's hover cell (the 18x18 frame around the item box) at the slot's current position.
presentsSlotAt(InputContext) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Whether one of the flow's shown slots is under the point (see SlotElement.presentsSlotAt(InputContext)).
presentsSlotAt(InputContext) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
Primary vs. extensions - Section in class com.trevlar.slotkit.api.group.SlotGroupCategories
 
PRIVATE - Enum constant in enum class com.trevlar.slotkit.api.state.SlotStateChannel.Visibility
 
put() - Method in record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Returns the value of the put record component.
put(ItemStack) - Method in interface com.trevlar.slotkit.api.item.ItemRef
Puts stack into this item, when this item is a shulker box or a bundle, by vanilla's rules: a shulker box takes what may go inside a container item, merging into matching stacks before empty slots; a bundle takes what its weight allows.
PUT - Enum constant in enum class com.trevlar.slotkit.api.window.SlotOperations.Role
Puts items into the slot: a click place, shift-click in, a pickup landing.
PUT_BACK - Enum constant in enum class com.trevlar.slotkit.api.slot.SlotDoubleClick.Kind
The first click lifted the stack; SlotKit has put it back in its slot on the client.

Q

QuickMoveRoutes - Class in com.trevlar.slotkit.api.slot
Where a shift-click goes, on any menu, when a mod knows better than the menu.
QuickMoveRoutes.Dest - Interface in com.trevlar.slotkit.api.slot
One destination in a route.
QuickMoveRoutes.Dest.Group - Record Class in com.trevlar.slotkit.api.slot
 
QuickMoveRoutes.Dest.GroupOf - Record Class in com.trevlar.slotkit.api.slot
 
QuickMoveRoutes.Dest.ToPlayer - Record Class in com.trevlar.slotkit.api.slot
 
QuickMoveRoutes.Dest.ToVanilla - Record Class in com.trevlar.slotkit.api.slot
 
QuickMoveRoutes.Route - Interface in com.trevlar.slotkit.api.slot
Answers where a shift-click from source goes, or null for no opinion.
quickMoveStack(Player, int) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 

R

react(ReactEvent) - Method in interface com.trevlar.slotkit.api.window.ReactiveHook
Reacts to a contents change.
ReactCause - Record Class in com.trevlar.slotkit.api.window
Why a reaction fired.
ReactCause(Identifier) - Constructor for record class com.trevlar.slotkit.api.window.ReactCause
Creates an instance of a ReactCause record class.
ReactEvent - Record Class in com.trevlar.slotkit.api.window
What a ReactiveHook receives when a slot's contents change.
ReactEvent(Address, ItemStack, ItemStack, ReactCause) - Constructor for record class com.trevlar.slotkit.api.window.ReactEvent
Creates an instance of a ReactEvent record class.
ReactiveHook - Interface in com.trevlar.slotkit.api.window
A consumer's reaction to a slot's synced contents changing on the client, the value type of the ON_INSERT_OBSERVED/ON_TAKE_OBSERVED behavior keys.
read(O) - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Reads the stored content for this owner.
Reads only - Section in class com.trevlar.slotkit.api.window.SlotNames
 
Recipe - Section in class com.trevlar.slotkit.api.menu.CustomMenu
 
Recipe - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
recordAction(UUID, ServerboundPlayerActionPacket.Action, OperationProbe.Tag) - Static method in class com.trevlar.slotkit.api.window.OperationProbe
The same for an in-world action (Q, Ctrl-Q, F with no screen open).
recordClick(UUID, int, int, int, ContainerInput, OperationProbe.Tag) - Static method in class com.trevlar.slotkit.api.window.OperationProbe
What the client does as it sends a tagged click to the integrated server.
recordClick(AbstractContainerMenu, Slot) - Static method in class com.trevlar.slotkit.api.window.WindowSignals
Records the last-clicked slot (SlotKitClient, on a screen click).
refusesAction(Player, ServerboundPlayerActionPacket.Action) - Static method in class com.trevlar.slotkit.api.window.OperationProbe
Whether player doing action would be refused, as both the client and server seams judge it.
register() - Method in class com.trevlar.slotkit.api.menu.CustomMenu.Builder
Completes the registration, in common init on either side: builds and registers the MenuType, fills in the default title if none was given, stores the handle by id, and returns it.
register() - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Builds the standalone MenuPanel and CreatedSlotGroup, creates the CreatedSlots over a StorageContainerAdapter, and appends them to the menu through vanilla's addSlot, which keeps the sync-tracking lists consistent.
register(ModeScope, Identifier, Codec, StreamCodec, T) - Static method in class com.trevlar.slotkit.api.state.SlotState
Registers a PRIVATE channel in effect while the viewing player's mode is in scope (see SlotStateChannel).
register(ModeScope, Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility) - Static method in class com.trevlar.slotkit.api.state.SlotState
register(ModeScope, Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility, SlotStateChannel.CanWrite) - Static method in class com.trevlar.slotkit.api.state.SlotState
register(SlotGroupCategory, String, String...) - Static method in class com.trevlar.slotkit.api.window.SlotNames
Registers the naming rule for a category, typically one a mod defined.
register(MendingCandidates.Provider) - Static method in class com.trevlar.slotkit.api.slot.MendingCandidates
Registers a candidate provider.
register(QuickMoveRoutes.Route) - Static method in class com.trevlar.slotkit.api.slot.QuickMoveRoutes
Adds a route.
register(Class, SlotGroupResolver) - Static method in class com.trevlar.slotkit.api.group.SlotGroupCategories
Registers the primary resolver for a concrete menu class.
register(String, SlotDoubleClick.Starts, Consumer) - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
Registers a double-click action.
register(String, SlotDoubleClick.Starts, Consumer, SlotDoubleClick.Pending) - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
Registers a double-click action that also hears its pairs start and lapse.
register(String, SlotSpec) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Registers a kind of on-demand group.
register(String, SlotSpec) - Static method in class com.trevlar.slotkit.api.slot.ParityGroup
Registers a parity group.
register(Identifier, Codec, StreamCodec, T) - Static method in class com.trevlar.slotkit.api.state.SlotState
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: register(ModeScope.BOTH, id, ...).
register(Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility) - Static method in class com.trevlar.slotkit.api.state.SlotState
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: register(ModeScope.BOTH, id, ...).
register(Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility, SlotStateChannel.CanWrite) - Static method in class com.trevlar.slotkit.api.state.SlotState
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: register(ModeScope.BOTH, id, ...).
registerContainerResolver(Class, Function) - Static method in class com.trevlar.slotkit.api.state.SlotState
Registers a resolver for a custom block-entity class.
registerDragMode(CustomContainerScreen.DragMode) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Registers a drag mode.
RegisteredSlots(MenuPanel, CreatedSlotGroup, int, int, List) - Constructor for record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Creates an instance of a RegisteredSlots record class.
registerEntityResolver(Class, Function) - Static method in class com.trevlar.slotkit.api.state.SlotState
Registers a resolver for a custom entity class.
registerKey(int, CustomContainerScreen.KeyAction) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Registers an action for a key code (InputConstants.KEY_*).
registerPortable(Class) - Static method in class com.trevlar.slotkit.api.state.SlotState
Makes a container block entity's slot state travel with its item, the way a shulker box's does: when the block is broken the state goes with the item, and when it is placed the state comes back.
registerScreens() - Static method in class com.trevlar.slotkit.api.menu.ClientMenu
Registers every menu's screen with vanilla, at client start, after every client initializer has had its chance to call ClientMenu.screen.
remove() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Removes it: its slots go inert on both sides at once, and their contents leave the client with the next sync.
removed() - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
 
removed(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The player's entity is leaving its level: a dimension change, a respawn (which replaces the entity), the End's exit, or leaving the server.
removed(Player) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Hands an EphemeralStorage group's items back to the player as the menu closes, the way a crafting grid does: into the inventory, or dropped when the player is dead or leaving.
removeItem(int, int) - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
removeItemNoUpdate(int) - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
render(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotElement
 
render(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
render(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
 
renderCulled(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotElement
Shown but outside the clip this frame (a row scrolled out of a region): the slot is held, so at the frame's end it parks instead of going back to the menu's own place.
renderCulled(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement
Culled with its panel or a parent: every shown child slot is held, so it parks.
renderCulled(RenderContext) - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement
Culled with its section: every shown slot is held, so it parks.
replacing(int) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Library use: put the slots in place of the ones at flatStart onward (an on-demand instance reusing a removed one's), instead of appending them.
replay(ServerPlayer, AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Server: tells the client about every instance on menu again, removed ones too, in slot order, so a new client menu for it (one MenuSwitch.back reopened) builds the same slots at the same indices before its contents arrive.
requestOpen() - Method in class com.trevlar.slotkit.api.menu.ClientMenu
Asks the server to open this menu for the local player.
reset() - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
Ends any pending pair unpaired, telling its owner (back in the world, say).
resolve(Address, BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
The fully resolved value of key at address with no player, so only BOTH declarations apply; never null.
resolve(Address, BehaviorKey, Collection) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
WindowEngine.resolve(Address, BehaviorKey) with memberships the caller knows and the address alone does not say.
resolve(Address, BehaviorKey, Collection, Player) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
resolve(Address, BehaviorKey, Player) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
The fully resolved value of key at address for player: its current mode's declarations, then BOTH's, at each level.
resolve(AbstractContainerScreen, int) - Static method in class com.trevlar.slotkit.api.group.VanillaSlotResolver
The on-screen item box, in absolute screen pixels, of the player-inventory slot containerIndex on screen, or empty when the screen doesn't show that slot.
resolve(AbstractContainerMenu) - Method in interface com.trevlar.slotkit.api.group.SlotGroupResolver
Maps the given menu instance's slots to category-keyed index arrays.
resolve(AbstractContainerMenu) - Method in class com.trevlar.slotkit.api.slot.SlotElement
The live in-menu slot this element names on menu, whatever its state.
resolve(ItemStack, boolean) - Method in enum class com.trevlar.slotkit.api.slot.DropRule
Resolves this rule to a concrete action for one stack.
ResolvedSlotGroup - Record Class in com.trevlar.slotkit.api.group
One slot group as it exists on an open menu: what it is called, what kind of thing it is, and which slots it currently holds.
ResolvedSlotGroup(SlotGroupId, SlotGroupCategory, List) - Constructor for record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Creates an instance of a ResolvedSlotGroup record class.
resolverId() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
Returns the value of the resolverId record component.
Reveal on hover, and which side sees what - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
revealWhen() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
revealWhen(BooleanSupplier) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Client-side reveal predicate.
revealWhen(BooleanSupplier) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Client-side reveal predicate.
rightClick(BiConsumer) - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
A right-click handler for the last-added group; a right click on one of its slots runs it instead of vanilla's click.
rightClickHandler(int, int, ContainerInput) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
The handler this click runs instead of vanilla's, or null: a plain right click on a shown created slot whose group declared one.
Right clicks - Section in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 
role(BehaviorKey) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
The role operation was defined with, or null if it was never defined.
Role - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
Role in the engine - Section in enum class com.trevlar.slotkit.api.window.KindTag
 
route(AbstractContainerMenu, Player, Slot) - Method in interface com.trevlar.slotkit.api.slot.QuickMoveRoutes.Route
 
routeFor(AbstractContainerMenu, Player, Slot) - Static method in class com.trevlar.slotkit.api.slot.QuickMoveRoutes
The first route's answer for source, or null.

S

Saving a choice - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
Saving one - Section in interface com.trevlar.slotkit.api.group.SlotGroupId
 
Saving one - Section in record class com.trevlar.slotkit.api.window.Address
 
scope() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the scope record component.
scope() - Method in class com.trevlar.slotkit.api.window.WindowHandle
The mode scope this handle's WindowHandle.set(BehaviorKey, Decl) and WindowHandle.clear(BehaviorKey) declare for.
SCOPE_KEY - Static variable in class com.trevlar.slotkit.api.storage.KeyedStorages
Payload key: slot ownership scope.
SCOPE_PLAYER - Static variable in class com.trevlar.slotkit.api.storage.KeyedStorages
KeyedStorages.SCOPE_KEY value for player-owned slots.
screen() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns the value of the screen record component.
screen(MenuScreenFactory) - Method in class com.trevlar.slotkit.api.menu.ClientMenu
This menu's screen, when it has its own class (MyScreen::new, a subclass of CustomContainerScreen).
selected() - Static method in class com.trevlar.slotkit.api.window.WindowSignals
The last-clicked slot's Address, or null.
selectedName() - Static method in class com.trevlar.slotkit.api.window.WindowSignals
The last-clicked slot's display name, or null.
self() - Method in class com.trevlar.slotkit.api.slot.SlotElement.Builder
 
self() - Method in class com.trevlar.slotkit.api.slot.SlotFlowElement.Builder
 
self() - Method in class com.trevlar.slotkit.api.slot.SlotGroupElement.Builder
 
SERVER - Enum constant in enum class com.trevlar.slotkit.api.window.Tier
 
serverHas(String) - Static method in class com.trevlar.slotkit.api.Presence
Whether this game's server runs modId, a mod with a slotkit block.
serverHasChannel(Identifier) - Static method in class com.trevlar.slotkit.api.Presence
Whether this game's server registers the slot-state channel channelId.
serverHasSlotKit() - Static method in class com.trevlar.slotkit.api.Presence
Whether this game's server runs SlotKit.
set() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the set record component.
set(ModeScope, Address, BehaviorKey, Decl) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Declares key on one address, the most specific level, for scope.
set(ItemRef, T) - Method in class com.trevlar.slotkit.api.item.ItemState
Sets the value on the item ref names and writes it back up through every container.
set(Address, BehaviorKey, Decl) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: set(ModeScope.BOTH, address, key, decl).
set(Address, T) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Writes value at the slot named by address, in the client player's open menu.
set(BehaviorKey, Decl) - Method in class com.trevlar.slotkit.api.window.WindowHandle
Declares a behavior on this address (per-slot specificity), in this handle's scope.
set(BehaviorKey, V) - Method in class com.trevlar.slotkit.api.window.WindowHandle
Declares a behavior's value.
set(Player, Address, T) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Writes value at the slot named by address for an explicit player.
set(Player, PersistentContainerKey, int, T) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Writes straight to persistent storage.
set(Player, Slot, T) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Writes value at slot for an explicit player.
set(Slot, T) - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Writes value at slot.
set(ItemStack) - Method in class com.trevlar.slotkit.api.slot.CreatedSlot
Writes the stack, unless the slot is inert on both sides.
set(ItemStack, T) - Method in class com.trevlar.slotkit.api.item.ItemState
Sets the value on a stack the caller holds, a live slot's stack included.
set(V) - Static method in interface com.trevlar.slotkit.api.window.Decl
 
Set(V) - Constructor for record class com.trevlar.slotkit.api.window.Decl.Set
Creates an instance of a Set record class.
setActiveCount(int) - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Sets how many of its slots are live, as ParityGroup.setActiveCount does for a whole group.
setActiveCount(ServerPlayer, int) - Method in class com.trevlar.slotkit.api.slot.ParityGroup
Sets how many of the group's slots are live for player: slots 0..count-1 live, the rest inert on both sides.
setAside(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
The menu player has set aside, if any.
setChanged() - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
setFlatIndexRange(int, int) - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Sets the index range.
setGroup(ModeScope, GroupKey, BehaviorKey, Decl) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Declares key as a group default for scope.
setGroup(GroupKey, BehaviorKey, Decl) - Static method in class com.trevlar.slotkit.api.window.WindowEngine
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: setGroup(ModeScope.BOTH, group, key, decl).
setItem(int, ItemStack) - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
setOf(SlotGroupId) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The set id belongs to, or null.
setPanelVisible(String, boolean) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
Shows or hides a panel.
setRightClickHandler(BiConsumer) - Method in class com.trevlar.slotkit.api.slot.CreatedSlotGroup
Sets the right-click handler.
setStack(int, ItemStack) - Method in class com.trevlar.slotkit.api.storage.EphemeralStorage
 
setStack(int, ItemStack) - Method in interface com.trevlar.slotkit.api.storage.Storage
Sets the stack at the given local index.
setStack(int, ItemStack) - Method in class com.trevlar.slotkit.api.storage.VirtualStorage
 
SHARED - Enum constant in enum class com.trevlar.slotkit.api.state.SlotStateChannel.Visibility
 
SHIFT_CLICK_IN - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether a shift-click elsewhere may land items in this slot.
SHIFT_CLICK_OUT - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Operation: whether shift-clicking this slot may send its stack elsewhere.
shiftClickIn(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Whether a shift-click elsewhere may put items in this group, set for the group (BehaviorKeys.SHIFT_CLICK_IN).
shiftClickOut(boolean) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Whether shift-clicking a slot in this group may send its stack elsewhere, set for the group (BehaviorKeys.SHIFT_CLICK_OUT).
shown() - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Returns the value of the shown record component.
shownThisFrame(AbstractContainerMenu) - Method in class com.trevlar.slotkit.api.slot.SlotElement
The slot SlotElement.render(RenderContext) placed this frame, before SlotElement.endFrame(AbstractContainerMenu, Set) clears the mark, or null.
SHULKER_STORAGE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
shulkers() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns the value of the shulkers record component.
shulkers(boolean) - Method in record class com.trevlar.slotkit.api.item.ItemScope
 
Simulated clicks - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
size() - Method in class com.trevlar.slotkit.api.storage.EphemeralStorage
 
size() - Method in interface com.trevlar.slotkit.api.storage.Storage
Returns the number of slots in this storage.
size() - Method in class com.trevlar.slotkit.api.storage.VirtualStorage
 
slot() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns the value of the slot record component.
slot() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns the value of the slot record component.
slot() - Method in class com.trevlar.slotkit.api.window.GatingContext
The slot the gate is judging, as the menu holds it (creative's wrapper on creative), or null for automation, which judges a container index with no slot.
slot() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns the value of the slot record component.
slot(int) - Method in class com.trevlar.slotkit.api.window.WindowView
A handle on the vanilla slot at flat menu index.
slot(ModeScope, Address) - Static method in class com.trevlar.slotkit.api.window.Window
A handle on the slot address names, declaring for scope: its gate, binding and operations apply while the acting player's mode is in that scope.
slot(ModeScope, Address) - Method in class com.trevlar.slotkit.api.window.WindowView
A handle on a slot named by address (vanilla or created), declaring for scope.
slot(SlotGroupId.Created, int) - Method in class com.trevlar.slotkit.api.slot.SlotElement.Builder
The created slot to present: its group (CreatedSlots.groupId(panelId, groupId) or ParityGroup.idOf(...)) and its index in the group.
slot(SlotGroupId, int) - Method in class com.trevlar.slotkit.api.slot.SlotElement.Builder
Slot index of any group, found on whatever menu is open.
slot(Address) - Method in class com.trevlar.slotkit.api.slot.SlotElement.Builder
The vanilla slot to present: Address.menuSlot(net.minecraft.world.inventory.MenuType, int) for the same slot on every menu of a type, or a slot's container-based address from SlotRef.address() for one particular container.
slot(Address) - Static method in class com.trevlar.slotkit.api.window.Window
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: Window.slot(ModeScope.BOTH, address).
slot(Address) - Method in class com.trevlar.slotkit.api.window.WindowView
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: slot(ModeScope.BOTH, address).
slot(Address, int, int) - Static method in class com.trevlar.slotkit.api.slot.SlotPlacement
At the slot address names, (dx, dy) from the top-left of its 18x18 frame, at the panel's natural size.
SLOT_PITCH - Static variable in class com.trevlar.slotkit.api.slot.CreatedSlots
Vanilla slot pitch in pixels (16px slot + 2px frame).
slotCount() - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
How many slots this content holds, reported as the storage's size.
slotCount() - Method in class com.trevlar.slotkit.api.storage.StorageAttachment
Number of slots the content holds.
slotCounts() - Static method in class com.trevlar.slotkit.api.slot.OnDemandGroup
Every kind's slot count by its slot panel id, for the join handshake.
SlotDoubleClick - Class in com.trevlar.slotkit.api.slot
A plain left double-click on a slot, taken for a mod's own action (open the item, say).
SlotDoubleClick.Kind - Enum Class in com.trevlar.slotkit.api.slot
 
SlotDoubleClick.Pair - Record Class in com.trevlar.slotkit.api.slot
A double-click taken: the slot (the real one), its index on the menu the server has open, and the stack.
SlotDoubleClick.Pending - Interface in com.trevlar.slotkit.api.slot
A registration's pending pairs, on the client thread.
SlotDoubleClick.Starts - Interface in com.trevlar.slotkit.api.slot
Whether a first click on slot's stack, with the cursor empty, may start a pair.
SlotElement - Class in com.trevlar.slotkit.api.slot
A registered slot shown as a PanelElement.
SlotElement.Builder - Class in com.trevlar.slotkit.api.slot
Builds a SlotElement.
SlotFlowElement - Class in com.trevlar.slotkit.api.slot
Lays out a panel's registered slots to fit its width, the way text and elements size to fit.
SlotFlowElement.Builder - Class in com.trevlar.slotkit.api.slot
Builds a SlotFlowElement over slot elements, in flow order.
SlotGate - Interface in com.trevlar.slotkit.api.window
What a slot accepts and releases, and how much of an item it holds: the value of BehaviorKeys.GATING, the slot author's rule.
SlotGroupCategories - Class in com.trevlar.slotkit.api.group
The registry of SlotGroupResolvers, one primary per menu class.
SlotGroupCategory - Record Class in com.trevlar.slotkit.api.group
 
SlotGroupCategory(String, String) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroupCategory
Creates an instance of a SlotGroupCategory record class.
SlotGroupElement - Class in com.trevlar.slotkit.api.slot
One slot group as one element, found by its id on whatever menu is open, and shown in rows.
SlotGroupElement.Builder - Class in com.trevlar.slotkit.api.slot
SlotGroupId - Interface in com.trevlar.slotkit.api.group
Names one slot group, one coherent run of slots sitting in one place on screen.
SlotGroupId.Category - Record Class in com.trevlar.slotkit.api.group
The one group a resolver contributes for category on a menu: vanilla's resolvers, and a mod's own resolver for its own menu, name a group this way.
SlotGroupId.Created - Record Class in com.trevlar.slotkit.api.group
A group created through SlotKit, named by its declaration.
SlotGroupPanelAdapter - Class in com.trevlar.slotkit.api.group
Anchors a Panel to slot groups and slots on container screens: a toolbar above the player inventory, a readout beside the hotbar, a slot above the offhand.
SlotGroupPanelAdapter(Panel) - Constructor for class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Declares the panel with its own interior padding (0 for PanelStyle.NONE, SlotGroupPanelAdapter.DEFAULT_PADDING otherwise).
SlotGroupPanelAdapter(Panel, int) - Constructor for class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Declares the panel with explicit content padding.
SlotGroupResolver - Interface in com.trevlar.slotkit.api.group
Maps one menu class's instances to slot groups by SlotGroupCategory, as slot indices (positions in menu.slots).
SlotGroups - Class in com.trevlar.slotkit.api.group
Every slot group anyone has declared, with no menu open: the menu-free half of the slot group registry.
SlotGroups.Entry - Record Class in com.trevlar.slotkit.api.group
One row of the player-facing list.
SlotGroupSet - Record Class in com.trevlar.slotkit.api.group
A player-facing name for several slot groups that are one thing to the player.
SlotGroupSet(String, String) - Constructor for record class com.trevlar.slotkit.api.group.SlotGroupSet
Creates an instance of a SlotGroupSet record class.
SlotHandle - Class in com.trevlar.slotkit.api.window
A typed handle on a slot, vanilla or created: the slot verbs, plus the generic WindowHandle.set(BehaviorKey, Decl).
SlotLayout - Class in com.trevlar.slotkit.api.menu
The slot layout of a CustomContainerMenu: which panels it has, which slot groups each holds, and how shift-click pairs them.
SlotLayout.PanelBuilder - Class in com.trevlar.slotkit.api.menu
One panel's slot groups and its server-side flags.
SlotLayout.PanelSlots - Record Class in com.trevlar.slotkit.api.menu
One declared panel, as built: its id, whether it starts shown, whether a player may toggle it, and its slot groups in order.
SlotLooks - Class in com.trevlar.slotkit.api.item
How a slot draws an item while something holds for it: an animation, another model, or a mark under or over it.
SlotLooks.When - Interface in com.trevlar.slotkit.api.item
Whether a look applies to slot's stack this frame.
SlotNames - Class in com.trevlar.slotkit.api.window
Display names for slots, on the client: labels like "Hotbar 3", "Chestplate" or "Offhand".
SlotOperations - Class in com.trevlar.slotkit.api.window
The slot operations vocabulary: the open set of things that can be done to a slot, what each slot lets through, and the one question every operation asks before it acts.
SlotOperations.AppliesTo - Record Class in com.trevlar.slotkit.api.window
Which slot groups an operation can act on.
SlotOperations.GroupVeto - Interface in com.trevlar.slotkit.api.window
A SlotOperations.Veto that is handed the slot's group: SlotGroups.of(SlotRef) of the slot, resolved once per question and shared by every group veto, or null when the slot is in no known group.
SlotOperations.PutVeto - Interface in com.trevlar.slotkit.api.window
A veto on putting a particular item into a slot, handed the stack about to land (incoming, never empty; read it, don't change it) along with the slot's group as a SlotOperations.GroupVeto gets it.
SlotOperations.Role - Enum Class in com.trevlar.slotkit.api.window
What an operation does to the slot it acts on.
SlotOperations.Veto - Interface in com.trevlar.slotkit.api.window
A rule that refuses an operation on a slot, laid over the cascade by a mod that is not the slot's author.
SlotPlacement - Class in com.trevlar.slotkit.api.slot
MenuKit Placements against slots, for a panel's in(ModeScope, Placement) (since 2.1.0).
SlotRef - Record Class in com.trevlar.slotkit.api.window
The slot an operation is about to act on, as much of it as the seam can supply.
SlotRef(Container, int, Slot, AbstractContainerMenu, Player, SlotGroupCategory, Address) - Constructor for record class com.trevlar.slotkit.api.window.SlotRef
Creates an instance of a SlotRef record class.
slots() - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Returns the value of the slots record component.
slots() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns the value of the slots record component.
slots() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup.Instance
Its slots, in order.
SlotScreenRect - Record Class in com.trevlar.slotkit.api.group
A vanilla slot's on-screen item box in absolute screen-space pixels, what VanillaSlotResolver.resolve(AbstractContainerScreen, int) returns.
SlotScreenRect(int, int, int, int) - Constructor for record class com.trevlar.slotkit.api.group.SlotScreenRect
Creates an instance of a SlotScreenRect record class.
SlotSpec - Class in com.trevlar.slotkit.api.slot
A side-neutral description of one group of registered slots that a ParityGroup adds to every container the player opens.
SlotState - Class in com.trevlar.slotkit.api.state
Entry point for persistent per-slot state.
SlotStateChannel<T> - Record Class in com.trevlar.slotkit.api.state
A typed per-slot state channel, the handle consumers use to read and write slot state.
SlotStateChannel(Identifier, Codec, StreamCodec, T) - Constructor for record class com.trevlar.slotkit.api.state.SlotStateChannel
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: the canonical constructor, with a ModeScope.
SlotStateChannel(Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility) - Constructor for record class com.trevlar.slotkit.api.state.SlotStateChannel
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: the canonical constructor, with a ModeScope.
SlotStateChannel(Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility, SlotStateChannel.CanWrite) - Constructor for record class com.trevlar.slotkit.api.state.SlotStateChannel
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: the canonical constructor, with a ModeScope.
SlotStateChannel(Identifier, Codec, StreamCodec, T, SlotStateChannel.Visibility, SlotStateChannel.CanWrite, ModeScope) - Constructor for record class com.trevlar.slotkit.api.state.SlotStateChannel
Creates an instance of a SlotStateChannel record class.
SlotStateChannel.CanWrite - Interface in com.trevlar.slotkit.api.state
Who may write this channel from a client.
SlotStateChannel.Visibility - Enum Class in com.trevlar.slotkit.api.state
Channel visibility.
SMITHING_ADDITION - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
SMITHING_BASE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
SMITHING_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
SMITHING_TEMPLATE - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
snapshot(Address, ItemStack, ItemStack, ReactCause) - Static method in record class com.trevlar.slotkit.api.window.ReactEvent
Builds an event, copying both stacks so the hook can't reach the live slot.
source() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns the value of the source record component.
source() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns the value of the source record component.
source() - Method in interface com.trevlar.slotkit.api.item.ItemRef
Whether the top-level slot is in the inventory, the ender chest, a supplied container or a carried attachment.
source(SlotGroupId) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The mod a group comes from, or null for vanilla's; see the class doc.
source(SlotGroupSet) - Static method in class com.trevlar.slotkit.api.group.SlotGroups
The mod a set comes from: the one its namespace names.
Source - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
Sources - Section in record class com.trevlar.slotkit.api.window.Address
 
spec() - Method in class com.trevlar.slotkit.api.slot.OnDemandGroup
The spec it was registered with.
spec() - Method in class com.trevlar.slotkit.api.slot.ParityGroup
The spec it was registered with.
Stable budget, fitted size - Section in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
stack() - Method in interface com.trevlar.slotkit.api.item.ItemRef
The item.
stack() - Method in record class com.trevlar.slotkit.api.item.ItemSources.Found
Returns the value of the stack record component.
stack() - Method in class com.trevlar.slotkit.api.item.LiveItem
The item.
stack() - Method in interface com.trevlar.slotkit.api.slot.MendingCandidates.Candidate
The stack repaired in place if this candidate is chosen.
stack() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns the value of the stack record component.
Stale - Section in class com.trevlar.slotkit.api.item.LiveItem
 
started(Slot, ItemStack) - Method in interface com.trevlar.slotkit.api.slot.SlotDoubleClick.Pending
A first click started a pair: before vanilla lifts the stack or tells the server.
startsShown() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns the value of the startsShown record component.
State lives in the open menu; behavior does not - Section in record class com.trevlar.slotkit.api.state.SlotStateChannel
 
stillValid(Player) - Method in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 
stillValid(Player) - Method in class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
STONECUTTER_INPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
STONECUTTER_OUTPUT - Static variable in record class com.trevlar.slotkit.api.group.SlotGroupCategory
 
storage(Storage) - Method in class com.trevlar.slotkit.api.item.LiveItem
over, a storage built on LiveItem.stack(), kept in step with the chain: every write through it is committed up the chain, and once the item is stale reads are empty and writes are dropped (the menu closes on stale; see the class notes).
storage(Storage) - Method in class com.trevlar.slotkit.api.slot.CreatedSlots.Builder
Where items live.
storage(Function) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Where items live, as a per-player factory.
Storage - Interface in com.trevlar.slotkit.api.storage
Where items live: get, set, size and markDirty.
StorageAttachment<O,C> - Class in com.trevlar.slotkit.api.storage
Where a slot group's contents are saved, by owner type.
StorageAttachment() - Constructor for class com.trevlar.slotkit.api.storage.StorageAttachment
 
StorageAttachment.PlayerStorageAttachment<C> - Class in com.trevlar.slotkit.api.storage
StorageContainerAdapter - Class in com.trevlar.slotkit.api.storage
Adapts a Storage to vanilla's Container interface.
StorageContainerAdapter(Storage) - Constructor for class com.trevlar.slotkit.api.storage.StorageContainerAdapter
 
storageFactory() - Method in class com.trevlar.slotkit.api.slot.SlotSpec
 
Storage is a factory, not bound storage - Section in class com.trevlar.slotkit.api.slot.SlotSpec
 
storageKey() - Method in interface com.trevlar.slotkit.api.storage.KeyedStorage
Returns this storage's persistent identity, used to find per-slot state in the attachment for this owner.
STREAM_CODEC - Static variable in record class com.trevlar.slotkit.api.item.ItemPath
For a mod's own packet.
streamCodec() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the streamCodec record component.
swapWhen(String, ItemState, UnaryOperator) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
The item draws as swap's stack while it carries state (another model); its count stays its own.
swapWhen(String, SlotLooks.When, UnaryOperator) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
Sync - Section in class com.trevlar.slotkit.api.slot.OnDemandGroup
 
SYNC - Static variable in record class com.trevlar.slotkit.api.window.ReactCause
The client saw synced slot contents change.

T

Tag(BehaviorKey, BehaviorKey) - Constructor for record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Creates an instance of a Tag record class.
take() - Method in record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Returns the value of the take record component.
take(int) - Method in interface com.trevlar.slotkit.api.item.ItemRef
Removes up to count of the item and writes the change back.
take(ServerPlayer, ItemScope, Predicate, int) - Static method in class com.trevlar.slotkit.api.item.ItemSources
Takes count of the first item, nearest first, that test accepts.
TAKE - Enum constant in enum class com.trevlar.slotkit.api.window.SlotOperations.Role
Takes items out of the slot: a click pickup, shift-click out, a drop.
Targeting - Section in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
 
test(SlotGroupId) - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Whether this applies to group.
test(Slot, ItemStack) - Method in interface com.trevlar.slotkit.api.item.SlotLooks.When
 
test(Slot, ItemStack) - Method in interface com.trevlar.slotkit.api.slot.SlotDoubleClick.Starts
 
The cascade - Section in class com.trevlar.slotkit.api.window.WindowEngine
 
The client - Section in class com.trevlar.slotkit.api.menu.MenuSwitch
 
The client/server split - Section in class com.trevlar.slotkit.api.menu.CustomMenu
 
The cursor - Section in class com.trevlar.slotkit.api.menu.MenuSwitch
 
The four shapes - Section in record class com.trevlar.slotkit.api.window.Address
 
The GatingContext - Section in interface com.trevlar.slotkit.api.window.SlotGate
 
The group a slot is in - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
The item - Section in class com.trevlar.slotkit.api.item.LiveItem
 
The menu set aside - Section in class com.trevlar.slotkit.api.menu.MenuSwitch
 
The vocabulary is open - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
Threading - Section in class com.trevlar.slotkit.api.window.WindowEngine
 
tick(int, int) - Static method in class com.trevlar.slotkit.api.slot.SlotDoubleClick
Each client tick on a container screen: a window that ran out, or a moved cursor, lapses with no further input.
tick(ServerPlayer) - Static method in class com.trevlar.slotkit.api.menu.MenuSwitch
Each player tick: the set-aside menu still has to be valid.
tickHover(AbstractContainerMenu, Slot) - Static method in class com.trevlar.slotkit.api.window.WindowSignals
Updates the hovered slot (SlotKitClient, each client tick).
tier() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns the value of the tier record component.
Tier - Enum Class in com.trevlar.slotkit.api.window
Which authority tier a BehaviorKey belongs to.
title(Component) - Method in class com.trevlar.slotkit.api.menu.CustomMenu.Builder
The menu's display title.
toggleable() - Method in class com.trevlar.slotkit.api.menu.SlotLayout.PanelBuilder
A player may show and hide this panel (its toggle key or CustomContainerScreen.togglePanel).
toggleable() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns the value of the toggleable record component.
togglePanel(String) - Method in class com.trevlar.slotkit.api.menu.CustomContainerScreen
Asks the server to show or hide a panel (vanilla's container button packet).
toItemList(C) - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Converts stored content to a mutable NonNullList for the storage.
token() - Method in record class com.trevlar.slotkit.api.window.Address
Returns the value of the token record component.
tooltip(Supplier) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
SlotSpec.tooltip(Component) with the text from a supplier.
tooltip(Component) - Method in class com.trevlar.slotkit.api.slot.SlotSpec
Adds a hover tooltip to every slot in this group.
ToPlayer() - Constructor for record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToPlayer
Creates an instance of a ToPlayer record class.
toString() - Method in record class com.trevlar.slotkit.api.group.ResolvedSlotGroup
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Category
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotGroupId.Created
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotGroups.Entry
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotGroupSet
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.item.ItemPath
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.item.ItemScope
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.item.ItemSources.Found
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.menu.MenuPanel
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.menu.SlotLayout.PanelSlots
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.CreatedSlots.RegisteredSlots
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.Group
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.GroupOf
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToPlayer
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToVanilla
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.slot.SlotDoubleClick.Pair
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.Address
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.Decl.Inherit
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.Decl.Set
Returns a string representation of this record class.
toString() - Method in class com.trevlar.slotkit.api.window.GroupKey
 
toString() - Method in record class com.trevlar.slotkit.api.window.OperationProbe.Tag
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.BlockEntityKey
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EnderChest
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.EntityKey
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.Modded
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.PersistentContainerKey.PlayerInventory
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.ReactCause
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.ReactEvent
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns a string representation of this record class.
toString() - Method in record class com.trevlar.slotkit.api.window.SlotRef
Returns a string representation of this record class.
toString() - Method in class com.trevlar.slotkit.api.window.WindowHandle
 
ToVanilla() - Constructor for record class com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest.ToVanilla
Creates an instance of a ToVanilla record class.
TriBool - Enum Class in com.trevlar.slotkit.api.window
The value a Decl.Set carries for a boolean BehaviorKey, so "explicitly off" is a declared value, distinct from "unset" or "inherit".
TRUE - Enum constant in enum class com.trevlar.slotkit.api.window.TriBool
 
Two layers - Section in class com.trevlar.slotkit.api.window.WindowHandle
 
Two shapes, both from names that already exist - Section in interface com.trevlar.slotkit.api.group.SlotGroupId
 
Two sources, in priority order - Section in class com.trevlar.slotkit.api.window.SlotNames
 
type() - Method in class com.trevlar.slotkit.api.menu.CustomMenu
This menu's registered MenuType.

U

under(String, ItemState, SlotDecorations.Decoration) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
decoration draws under the item, and answers its tooltip, while the item carries state.
under(String, SlotLooks.When, SlotDecorations.Decoration) - Static method in class com.trevlar.slotkit.api.item.SlotLooks
decoration draws under the item, and answers its tooltip, while when holds.
unregister() - Method in class com.trevlar.slotkit.api.group.SlotGroupPanelAdapter
Withdraws this adapter from screens opened from now on.
Usage - Section in class com.trevlar.slotkit.api.storage.StorageAttachment
 

V

Validity - Section in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 
validWhen(Predicate) - Method in class com.trevlar.slotkit.api.menu.CustomMenu.Builder
Who may open this menu, and for how long.
value() - Method in record class com.trevlar.slotkit.api.window.Decl.Set
Returns the value of the value record component.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.item.ItemRef.Source
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.item.ItemState.Saved
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.menu.MenuSwitch.Reason
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.slot.DropRule
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.slot.SlotDoubleClick.Kind
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.state.SlotStateChannel.Visibility
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.window.KindTag
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.window.SlotOperations.Role
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.window.Tier
Returns the enum constant of this class with the specified name.
valueOf(String) - Static method in enum class com.trevlar.slotkit.api.window.TriBool
Returns the enum constant of this class with the specified name.
values() - Static method in enum class com.trevlar.slotkit.api.item.ItemRef.Source
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.item.ItemState.Saved
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.menu.MenuSwitch.Reason
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.slot.DropRule
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.slot.SlotDoubleClick.Kind
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.state.SlotStateChannel.Visibility
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.window.KindTag
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.window.SlotOperations.Role
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.window.Tier
Returns an array containing the constants of this enum class, in the order they are declared.
values() - Static method in enum class com.trevlar.slotkit.api.window.TriBool
Returns an array containing the constants of this enum class, in the order they are declared.
valueType() - Method in record class com.trevlar.slotkit.api.window.BehaviorKey
Returns the value of the valueType record component.
vanilla() - Static method in record class com.trevlar.slotkit.api.group.SlotGroupCategory
Every category SlotKit ships for vanilla's own slot groups.
vanilla() - Method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Returns the value of the vanilla record component.
vanilla(SlotGroupCategory...) - Static method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
These vanilla groups, and every group a mod adds.
VANILLA - Static variable in interface com.trevlar.slotkit.api.slot.QuickMoveRoutes.Dest
The rest to the menu's own routing (parity slots excluded).
VANILLA_OPERATIONS - Static variable in class com.trevlar.slotkit.api.window.BehaviorKeys
Every operation vanilla ships, in the order a settings list would show them.
VANILLA_SLOT - Enum constant in enum class com.trevlar.slotkit.api.window.KindTag
A vanilla net.minecraft.world.inventory.Slot the consumer did not create.
vanillaExcept(SlotGroupCategory...) - Static method in record class com.trevlar.slotkit.api.window.SlotOperations.AppliesTo
Every vanilla group but these, and every group a mod adds.
vanillaSlot(ScreenFamilyKey, OwnerScope, int) - Static method in record class com.trevlar.slotkit.api.window.Address
A vanilla slot at a menu-space index.
VanillaSlotResolver - Class in com.trevlar.slotkit.api.group
Finds where a player-inventory slot is on whatever screen is open.
Vanilla slots - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
veto(ModeScope, SlotOperations.GroupVeto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
SlotOperations.veto(ModeScope, Veto) for a veto that is handed the slot's group.
veto(ModeScope, SlotOperations.Veto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Registers a veto that applies while the acting player's mode is in scope.
veto(SlotOperations.GroupVeto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: veto(ModeScope.BOTH, veto).
veto(SlotOperations.Veto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Deprecated, for removal: This API element is subject to removal in a future version.
since 2.1.0, name the mode: veto(ModeScope.BOTH, veto).
vetoPut(ModeScope, SlotOperations.PutVeto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
Registers a SlotOperations.PutVeto that applies while the acting player's mode is in scope, read per question as SlotOperations.veto(ModeScope, Veto) is.
vetoPut(SlotOperations.PutVeto) - Static method in class com.trevlar.slotkit.api.window.SlotOperations
view(AbstractContainerMenu) - Static method in class com.trevlar.slotkit.api.window.Window
The menu-bound view, for addressing a vanilla slot by its live menu index.
VirtualStorage - Class in com.trevlar.slotkit.api.storage
Storage backed by a read function and a write function, so a consumer can bring any external data source into the Storage interface.
VirtualStorage(int, IntFunction, BiConsumer) - Constructor for class com.trevlar.slotkit.api.storage.VirtualStorage
With a dirty callback that does nothing.
VirtualStorage(int, IntFunction, BiConsumer, Runnable) - Constructor for class com.trevlar.slotkit.api.storage.VirtualStorage
 
visibility() - Method in record class com.trevlar.slotkit.api.state.SlotStateChannel
Returns the value of the visibility record component.
visit(ItemRef) - Method in interface com.trevlar.slotkit.api.item.ItemVisitor
Returns true to keep walking, false to stop.

W

walk(ServerPlayer, ItemScope, ItemVisitor) - Static method in class com.trevlar.slotkit.api.item.ItemSources
Visits each item in scope, nearest first, until the visitor returns false.
walk(Container, ItemScope, ItemVisitor) - Static method in class com.trevlar.slotkit.api.item.ItemSources
Visits each item in container and, with the scope's flags, the containers inside them, nearest first, until the visitor returns false.
warnShared(Screen) - Method in class com.trevlar.slotkit.api.slot.SlotElement
Warns, once per screen, that another shown element also placed this element's slot.
What an operation is - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
What it does - Section in class com.trevlar.slotkit.api.window.WindowView
 
What it doesn't do: the panel - Section in class com.trevlar.slotkit.api.slot.ParityGroup
 
What it does not hold - Section in class com.trevlar.slotkit.api.menu.CustomContainerMenu
 
What registering does - Section in class com.trevlar.slotkit.api.slot.ParityGroup
 
What this element does, and what it doesn't - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
What you get - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
Where an operation applies - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
Where declarations come from - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
Which group a panel is on - Section in class com.trevlar.slotkit.api.group.CategoryPanels
 
Who calls this - Section in class com.trevlar.slotkit.api.slot.CreatedSlots
 
Who may open it, and for how long - Section in class com.trevlar.slotkit.api.menu.CustomMenu
 
Who may put a group in a set - Section in class com.trevlar.slotkit.api.group.SlotGroups
 
Who says what a slot allows - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
Why a flow and not a fixed grid - Section in class com.trevlar.slotkit.api.slot.SlotFlowElement
 
Why a recipe and not a built slot - Section in class com.trevlar.slotkit.api.slot.SlotSpec
 
Why a slot stays live under its own panel - Section in class com.trevlar.slotkit.api.slot.SlotElement
 
Why not boolean or Boolean - Section in enum class com.trevlar.slotkit.api.window.TriBool
 
Why the factory takes the MenuType - Section in class com.trevlar.slotkit.api.menu.CustomMenu
 
Why this is not a category - Section in interface com.trevlar.slotkit.api.group.SlotGroupId
 
width() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns the value of the width record component.
Window - Class in com.trevlar.slotkit.api.window
The entry point to the window: where a consumer gets a typed handle to set or read behavior on anything addressable.
WindowEngine - Class in com.trevlar.slotkit.api.window
The window's resolution engine: one store, one cascade, one method, WindowEngine.resolve(Address, BehaviorKey).
WindowHandle - Class in com.trevlar.slotkit.api.window
The base of the window's typed handles: an immutable value that addresses one thing by its Address, never by a live reference.
WindowSignals - Class in com.trevlar.slotkit.api.window
Which slot the cursor is over (WindowSignals.hovered) and which slot was last clicked (WindowSignals.selected), as Addresses, observed on the client.
WindowView - Class in com.trevlar.slotkit.api.window
The window's view of one open menu, which mints typed WindowHandles.
within(ItemPath) - Method in record class com.trevlar.slotkit.api.item.ItemPath
True when this path is outer or an item anywhere inside it: same top-level slot, and outer's indexes first.
With no route - Section in class com.trevlar.slotkit.api.slot.QuickMoveRoutes
 
With no screen open - Section in class com.trevlar.slotkit.api.window.SlotOperations
 
write(O, C) - Method in interface com.trevlar.slotkit.api.storage.CustomAttachmentSpec
Writes the content for this owner.

X

x() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns the value of the x record component.

Y

y() - Method in record class com.trevlar.slotkit.api.group.SlotScreenRect
Returns the value of the y record component.
YES - Enum constant in enum class com.trevlar.slotkit.api.item.ItemState.Saved
 
A B C D E F G H I J K L M N O P Q R S T U V W X Y 
All Classes and Interfaces|All Packages|Constant Field Values