Class Toggle.Builder

Enclosing class:
Toggle

public static final class Toggle.Builder extends Entry.Builder<Toggle.Builder>
Builds a Toggle; from Toggle.builder(String). Also has the options every entry has (Entry.Builder).
  • Method Details

    • label

      public Toggle.Builder label(Supplier<Text> label)
      The text before ": ON/OFF", re-read on every refresh. Required.
      Parameters:
      label - read on refresh
      Returns:
      this builder
    • label

      public Toggle.Builder label(Text label)
      A fixed label; see label(Supplier).
      Parameters:
      label - the label
      Returns:
      this builder
    • value

      public Toggle.Builder value(BooleanSupplier value)
      Reads the mod's current value; re-read on every refresh. Required.
      Parameters:
      value - reads the value, e.g. () -> config.enabled
      Returns:
      this builder
    • onChange

      public Toggle.Builder onChange(Consumer<Boolean> onChange)
      Stores a new value when the player clicks; runs on the main thread. Required. The toggle shows the new value only if value returns it afterwards.
      Parameters:
      onChange - receives the new value, e.g. v -> config.enabled = v
      Returns:
      this builder
    • build

      public Toggle build()
      Builds the toggle.
      Returns:
      the toggle
      Throws:
      IllegalStateException - if label, value or onChange is missing