minuit

FormFieldComponent

A label, a required mark, a line of help and an error around any widget.

Java

Inside a PanelComponent constructor. The same call draws in every family and chroma.

Java
TextFieldComponent name = add(new TextFieldComponent(at(new Box("name", 0, 0, 0, 16)), "", v -> { }));
FormFieldComponent field = add(new FormFieldComponent(at(new Box("f", 10, 10, 160, 0)), this, "World name", name)
        .required(true)
        .description(words.get("mymod.name_help"))
        .validator(() -> name.text().isBlank() ? words.get("mymod.name_needed") : null));
// Later, on Save:
if (field.validate()) { save(); }

Error

FormFieldComponent, error