ConfigSpecMapBuilder¶
class ConfigSpecMapBuilder<T : ConfigSpec>(
resetButtonKey: Component,
fieldNameKey: Component,
value: Map<String, T>,
scratchFactory: () -> T
) : MapFieldBuilder<T, ConfigSpecEntry<T>, ConfigSpecMapBuilder<T>>
MapFieldBuilder for a net.kernelpanicsoft.archie.config.ConfigSpecMap - each row's value column is an "Edit" button (ConfigSpecEntry) via startConfigField. A ConfigSpec's id is fixed at creation, so the row's key text only names a brand-new entry (see net.kernelpanicsoft.archie.config.ConfigSpecCollection.reconcile) - retyping an existing row's key doesn't rename its file.
Constructors¶
ConfigSpecMapBuilder¶
Properties¶
addTooltip¶
open override val addTooltip: Component?
cellErrorSupplier¶
open override var cellErrorSupplier: Function<MutableEntry<String, T>?, Optional<Component?>?>?
defaultValue¶
@get:
Nullable
override var defaultValue: @Nullable
Supplier<List<MutableEntry<String, T>?>?>?
fieldNameKey¶
@get:
NotNull
override val fieldNameKey: @NotNull
Component
isDeleteButtonEnabled¶
open override var isDeleteButtonEnabled: Boolean
isExpanded¶
open override var isExpanded: Boolean
isInsertButtonEnabled¶
open override var isInsertButtonEnabled: Boolean
isInsertInFront¶
open override var isInsertInFront: Boolean
isRequireRestart¶
open override val isRequireRestart: Boolean
keyErrorSupplier¶
open var keyErrorSupplier: (String) -> Optional<Component>?
removeTooltip¶
open override val removeTooltip: Component?
resetButtonKey¶
@get:
NotNull
override val resetButtonKey: @NotNull
Component
saveConsumer¶
open override var saveConsumer: Consumer<List<MutableEntry<String, T>?>?>?
tooltipSupplier¶
open override var tooltipSupplier: Function<List<MutableEntry<String, T>?>?, Optional<Array<out Component?>?>?>?
valueErrorSupplier¶
open var valueErrorSupplier: (T) -> Optional<Component>?
valueTooltipSupplier¶
open var valueTooltipSupplier: (T) -> Optional<Array<Component>>?
Functions¶
build¶
open override fun build(): NestedListListEntry<MutableEntry<String, T>, MultiElementListEntry<MutableEntry<String, T>>>
buildEntry¶
fun buildEntry(): AbstractConfigListEntry<*>?
getCellErrorSupplier¶
open fun getCellErrorSupplier(): Function<MutableEntry<String, T>?, Optional<Component?>?>?
getDefaultValue¶
@Nullable
fun getDefaultValue(): @Nullable
Supplier<List<MutableEntry<String, T>?>?>?
getSaveConsumer¶
open fun getSaveConsumer(): Consumer<List<MutableEntry<String, T>?>?>?
getTooltipSupplier¶
open fun getTooltipSupplier(): Function<List<MutableEntry<String, T>?>?, Optional<Array<out Component?>?>?>?
requireRestart¶
open fun requireRestart(): ConfigSpecMapBuilder<T>?
open fun requireRestart(requireRestart: Boolean)
setAddButtonTooltip¶
open fun setAddButtonTooltip(addTooltip: Component?): ConfigSpecMapBuilder<T>?
setCellErrorSupplier¶
open fun setCellErrorSupplier(cellErrorSupplier: Function<MutableEntry<String, T>?, Optional<Component?>?>?): ConfigSpecMapBuilder<T>?
setDefaultValue¶
open fun setDefaultValue(defaultValue: List<MutableEntry<String, T>?>?): ConfigSpecMapBuilder<T>?
open fun setDefaultValue(defaultValue: Supplier<List<MutableEntry<String, T>?>?>?): ConfigSpecMapBuilder<T>?
setDeleteButtonEnabled¶
open fun setDeleteButtonEnabled(deleteButtonEnabled: Boolean): ConfigSpecMapBuilder<T>?
setDisplayRequirement¶
@Contract
(mutates = "this")@ApiStatus.Experimental
fun setDisplayRequirement(requirement: Requirement?): ConfigSpecMapBuilder<T>?
setErrorSupplier¶
open fun setErrorSupplier(errorSupplier: Function<List<MutableEntry<String, T>?>?, Optional<Component?>?>?): ConfigSpecMapBuilder<T>?
setExpanded¶
open fun setExpanded(expanded: Boolean): ConfigSpecMapBuilder<T>?
setInsertButtonEnabled¶
open fun setInsertButtonEnabled(insertButtonEnabled: Boolean): ConfigSpecMapBuilder<T>?
setInsertInFront¶
open fun setInsertInFront(insertInFront: Boolean): ConfigSpecMapBuilder<T>?
setRemoveButtonTooltip¶
open fun setRemoveButtonTooltip(removeTooltip: Component?): ConfigSpecMapBuilder<T>?
setRequirement¶
@Contract
(mutates = "this")@ApiStatus.Experimental
fun setRequirement(requirement: Requirement?): ConfigSpecMapBuilder<T>?
setSaveConsumer¶
open fun setSaveConsumer(saveConsumer: Consumer<List<MutableEntry<String, T>?>?>?): ConfigSpecMapBuilder<T>?
setTooltip¶
open fun setTooltip(tooltip: Optional<Array<out Component?>?>?): ConfigSpecMapBuilder<T>?
open fun setTooltip(vararg tooltip: Component?): ConfigSpecMapBuilder<T>?
setTooltipSupplier¶
open fun setTooltipSupplier(tooltipSupplier: Function<List<MutableEntry<String, T>?>?, Optional<Array<out Component?>?>?>?): ConfigSpecMapBuilder<T>?
open fun setTooltipSupplier(tooltipSupplier: Supplier<Optional<Array<out Component?>?>?>?): ConfigSpecMapBuilder<T>?
valueBuilder¶
open override fun ConfigEntryBuilder.valueBuilder(
title: Component,
value: T,
list: NestedListListEntry<MutableEntry<String, T>, MultiElementListEntry<MutableEntry<String, T>>>
): AbstractFieldBuilder<T, ConfigSpecEntry<T>, *>
Builds the Cloth Config field for a row's value column.
valueFactory¶
open override fun valueFactory(): T
Value assigned to a row inserted via the UI's "add" button.