Cloth Config
  • Introduction to Cloth Config
  • Frequently Asked Questions
  • Setup Cloth Config
    • Setup with Fabric
    • Setup with Forge
  • Using Cloth Config
    • Creating a Config Screen
    • Saving the Config
    • Creating a Config Category
    • Creating a Config Option
    • Building the Config Screen
  • Advanced
    • Creating a Dropdown Menu
    • ModMenu Integration
  • Auto Config
    • Introduction to Auto Config 1u
    • Setup with Gradle
    • Creating a Config Class
    • Registering the Config
    • Reading the Config
    • Generating a Cloth Config Screen
    • Annotations
    • Post-Validation
    • Partitioning the Config
    • Custom Gui Handlers
Powered by GitBook
On this page
  1. Auto Config

Custom Gui Handlers

PreviousPartitioning the Config

Last updated 5 years ago

Was this helpful?

CtrlK
  • GuiProvider
  • GuiTransformer

Was this helpful?

These can only be done on the client, make sure this is only done on the client.

ConfigGuiRegistry registry = AutoConfig.getGuiRegistry(CONFIG_NAME);

GuiProvider

A GuiProvider is a handler that maps fields to gui entries.

registry.registerAnnotationProvider(...); // apply based on the presence of an annotation
registry.registerPredicateProvider(...); // apply based on a certain Predicate<Field>
registry.registerTypeProvider(...); // apply to a certain type

If multiple registered providers apply to the same field, the priority is as follows: Annotation, then Predicate, then Type. If multiple providers of a single category apply, the first one that was registered will be used. Custom registered providers always take priority over the built-in providers.

GuiTransformer

A GuiTransformer is a handler that maps a generated gui entry to a new gui entry. It can also apply some modifications to the passed entry and return the same reference.

registry.registerAnnotationTransformer(...); // apply based on the presence of an annotation
registry.registerPredicateTransformer(...); // apply based on a certain Predicate<Field>

All matching transformers are applied in order of registration. Custom registered transformers always apply before built-in ones.