Custom Gui Handlers
Last updated
Was this helpful?
Last updated
Was this helpful?
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);
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.
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.