Skip to content

InvUI v2.0.0-beta.6

Pre-release
Pre-release

Choose a tag to compare

@NichtStudioCode NichtStudioCode released this 28 Mar 17:45

invui

Additions

  • Added PagedGui<SlotElement>, ScrollGui<SlotElement>
  • Added Window#sendAllDataToViewer
  • SlotElement.InventoryLink can now define a visualizer function

Changes

  • Minimum required Java version is now 25
  • Window title updates are now batched
  • Window#open now does nothing when trying to open an already open window instead of throwing an exception.
  • Slots to different instances of ReferencingInventory.PlayerStorageContents will no longer be deduplicated in item-drags
  • Window tick performance improvements

invui-kotlin

Additions

  • Added extensive KDoc for DSL API
  • Added window, gui providers to WindowDsl, GuiDsl that contain the Window/Gui after creation
  • Added inventory-with-background API to IngredientsDsl ('x' by (inventory with backgroundProvider))
  • Added by SlotElementSupplier to IngredientsDsl
  • Added level, progress, restockMessageEnabled to MerchantWindowDsl
  • Exposed viewer in WindowDsl
  • Exposed base item stack in ItemProviderDsl. Added a top level function to create an ItemProviderDsl with an empty base.

Changes

  • paged/scroll/tab gui content updates through providers are now batched
  • ItemProviderDsl will now automatically un-hide the tooltip if lore or name is set (like ItemBuilder did already)
  • Flattened package xyz.xenondevs.invui.dsl.property into its parent package
  • Removed provider-transforming extension functions like setContent(provider: Provider<T>, transform: (T) -> List<C>). These were originally intended to make reactive gui code more compact but are no longer needed due to the DSL API.

Fixes

  • Fixed lore in ItemProviderDsl inheriting default lore formatting