Fzzy Config

Fzzy Config

Mod

Config API with automatic GUIs, powerful validation options, server-client sync, and more!

Client and server Game MechanicsLibraryManagementUtility

4.35M downloads
501 followers
Follow Save
90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!

fzzy_config-0.7.0+1.20.1+forge

Changelog

Breaking changes in 0.7.0

  • ValidatedEnumMap is removed
  • Removed all methods and properties marked as Deprecated and for removal 0.7.0
    • SmallSpriteDecoration#<init>
    • SpriteDecorated#textureSet & textures is now a required override
    • SpriteDecoration#<init>
    • CustomButtonWidget#<init> & builder is now only non-override method for adding custom button
    • Removed ActiveButtonWidget
    • Removed TextlessActionWidget
    • DynamicListWidget.EntryPos and implementations made internal
    • PopupWidget position elements; LayoutWidget no longer inherits from the PopupWidget variant
    • Removed deprecated overrides of PopupController from PopupParentElement
    • SuggestionWindowListener and SuggestionWindowProvider moved out of internal sub-package
    • Removed ImmutableRelPos
    • RenderUtil#renderBlur
  • Throughout FzzyConfig Translatable.Result has been replaced with Translatable.ResultProvider. This affects EntrySearcher as well as Searcher.SearchContent

Additions

  • New Translatable.Name, Translatable.Desc, and Translatable.Prefix annotations for data generation of lang files
    • Corresponding ConfigApi.buildTranslations and ConfigApiJava.buildTranslations methods for hooking a config into a data generator
    • Also created a simple registered objects translation builder at ConfigApi.platform().buildRegistryTranslations Used for either RegistrySupplier objects built by a Registrar or Identifier used in a traditional registration system
  • Added ConfigScreenProvider, allowing for registering of custom screen implementations in place of the Fzzy Config built in
    • API Call registerScreenProvider added for registering your provider
  • afterClose event in PopupWidget
  • isPressed method in Relevant interface (which is used by FzzyKeybind and ValidatedKeybind), which allows for assertive checking for a key state, above the existing reactive response method relevant
  • Overhauled the error handling system in ValidationResult with a new ErrorEntry system and dramatically improved process flow for building complex errors and passing exceptions and other context information
    • Also introduced more functional methods like inmap, outmap, and bimap

Changes

  • Upgraded CustomMultilineTextWidget to handle click and hover events, as well as now implementing a custom MultilineText implementation
  • ValidatedField bails out of deserialization only on critical errors, now letting correction take its course more often
  • The Registrar system is no longer marked as experimental. Any further changes to the system will follow the standard released content deprecation and update system
  • Methods using the old error handling system of string lists are marked for removal 0.8.0
  • Slight improvements of overall memory footprint

Fixes

  • ConfigGroup.Pop properly pops multiple times if attached to one setting multiple times
  • Clicking off of a context menu into a slider properly updates the slider value
  • Search and Restore Defaults options in the context menu work again
  • ClickableTextWidget and CustomMultilineTextWidget now properly show hover events

Files

fzzy_config-0.7.0+1.20.1+forge.jar(2.11 MiB) Primary Download
fzzy_config-0.7.0+1.20.1+forge-sources.jar(645.77 KiB) Download

Project members

fzzyhmstrs

Member

Details

Licensed TDL M
Published a year ago
Updated 24 days ago