All Classes and Interfaces

Class
Description
 
 
 
 
Renders a user-editable list of colors with each row opening the usual color picker
 
 
 
A category for the config used for sorting in the UI
IDs start at 1 because 0 is reserved for the default category ("All")
They are also subject to change at any time
Lets a mod provide its own OneConfig layout, which replaces the one OneConfig would otherwise extract from the mod's original config screen (YACL, Cloth Config, MidnightLib, ...).
Information about, and actions for, the mod whose entrypoint is being called.
 
Called from the Config base constructor, so only fields set there such as Config.id can be read
 
 
Annotation used to specify conditions for this property
Apply this annotation to a field or button method
The value contains an array of strings with each string being the fully qualified path using dots '.' to the condition property
Any property in the array must be a Boolean

For complex conditions use
invalid reference
Config#addDependency(String, BooleanSupplier)
or
invalid reference
Property#addDisplayCondition(BooleanSupplier...)
Renders a reorderable list
 
Renders a searchable selector for status effects (potion effects)
 
 
Renders a user-editable list of file (or directory) pickers
 
 
 
Renders a searchable selector for Minecraft items
 
Makes a boolean field the switch that turns the whole mod on and off
The mod's card shows the switch.
Renders a dropdown that opens a selectable list
 
 
Renders a user-editable list of numbers with each row being a number input with stepper arrows
Collects properties from an object using reflection and from its inner classes
Ignores fields without an annotation with the Option annotation
 
 
 
Annotation used to specify previous names that this option was called before so that when the user updates their mod their config will be kept intact
The format is {"oldCategory.oldSubcategory.oldName1", "oldCategory.oldName2", ...}
Just putting the old name will **NOT** work
You must specify the old category and subcategory (if applicable) as well
 
A start and end pair within RangeNumber.min() and RangeNumber.max() edited with two number inputs
This is RangeSlider without the track so it suits ranges too wide to drag across
The annotated field holds both ends together as a two-element numeric array or list such as float[] or int[] or List<Integer> where index 0 is the start and index 1 is the end
Values are written back in whatever container shape the field already holds so its type is preserved
Renders a user-editable list of ranges with each row being a pair of number inputs
A slider with two handles selecting a start and end pair within RangeSlider.min() and RangeSlider.max()
The annotated field holds both ends together as a two-element numeric array or list such as float[] or int[] or List<Integer> where index 0 is the start and index 1 is the end
Values are written back in whatever container shape the field already holds so its type is preserved
Renders a user-editable list of ranges with each row being a two-handle slider with a value field for each end
 
 
 
Renders a user-editable list of numbers with each row being a slider with a value field beside it
 
 
Renders a user-editable list of text inputs
 
Turns the number an option holds into the text shown for it
The option shows the plain number again while it is being edited
OneConfig creates a formatter named in an annotation through its no-argument constructor