Skip to content

ConfigRefEntry

class ConfigRefEntry<T : Any>(
    fieldName: Component, 
    options: List<T>, 
    initial: T, 
    titleOf: (T) -> Component, 
    openScreen: (T, Screen) -> Screen, 
    requiresRestart: Boolean
) : AbstractConfigListEntry<T> 

Cloth Config list entry for a net.kernelpanicsoft.archie.config.DataSpec.configRef field: a cycle button stepping through options (labeled via titleOf), and an "Edit" button that, like ConfigSpecEntry, opens whichever option is currently selected via openScreen. Built by ConfigRefFieldBuilder.

Constructors

ConfigRefEntry

constructor(
    fieldName: Component, 
    options: List<T>, 
    initial: T, 
    titleOf: (T) -> Component, 
    openScreen: (T, Screen) -> Screen, 
    requiresRestart: Boolean
)

Properties

configError

override val configError: Optional<Component?>?

configScreen

@get:



Nullable



override val configScreen: @Nullable



 AbstractConfigScreen?

currentFocusPath

@get:



Nullable



open override val currentFocusPath: ComponentPath?

defaultValue

open override val defaultValue: Optional<T>

displayedFieldName

open override val displayedFieldName: Component?

displayRequirement

@get:



Nullable



open override var displayRequirement: @Nullable



 Requirement?

error

open override val error: Optional<Component?>?

fieldName

open override val fieldName: Component?

focused

@get:



Nullable



open override var focused: @Nullable



 GuiEventListener?

initialReferenceOffset

open override val initialReferenceOffset: Int

isActive

open override val isActive: Boolean

isDisplayed

open override val isDisplayed: Boolean

isDragging

open override var isDragging: Boolean

isEditable

open override var isEditable: Boolean

isEdited

open override val isEdited: Boolean

isEnabled

open override val isEnabled: Boolean

isFocused

open override var isFocused: Boolean

isRequiresRestart

open override var isRequiresRestart: Boolean

itemHeight

open override val itemHeight: Int

morePossibleHeight

open override val morePossibleHeight: Int

parent

open override var parent: DynamicEntryListWidget<AbstractConfigEntry<T?>?>?

preferredTextColor

override val preferredTextColor: Int

rectangle

open val rectangle: ScreenRectangle?

referenceProviderEntries

@get:



Nullable



@get:



ApiStatus.Internal



override var referenceProviderEntries: @Nullable



 List<ReferenceProvider<*>?>??

requirement

@get:



Nullable



open override var requirement: @Nullable



 Requirement?

searchTags

open override val searchTags: Iterator<String?>?

tabOrderGroup

open val tabOrderGroup: Int

value

open override val value: T

Functions

addTooltip

fun addTooltip(@NotNull



 tooltip: @NotNull



 Tooltip)

appendSearchTags

open fun appendSearchTags(tags: Iterable<String?>?)

charTyped

open fun charTyped(c: Char, i: Int): Boolean

children

open override fun children(): MutableList<out GuiEventListener>

focusPathAtIndex

@Nullable



open fun focusPathAtIndex(focusNavigationEvent: FocusNavigationEvent?, i: Int): @Nullable



 ComponentPath?

getChildAt

open fun getChildAt(mouseX: Double, mouseY: Double): Optional<GuiEventListener?>?

getCurrentFocusPath

@Nullable



open fun getCurrentFocusPath(): ComponentPath?

getDefaultValue

open override fun getDefaultValue(): Optional<T>

getEntryArea

open fun getEntryArea(
    x: Int, 
    y: Int, 
    entryWidth: Int, 
    entryHeight: Int
): Rectangle?

getParent

open fun getParent(): DynamicEntryListWidget<AbstractConfigEntry<T?>?>?

getValue

open override fun getValue(): T

isFocused

open fun isFocused(): Boolean

isMouseInside

open fun isMouseInside(
    mouseX: Int, 
    mouseY: Int, 
    x: Int, 
    y: Int, 
    entryWidth: Int, 
    entryHeight: Int
): Boolean

isMouseOver

open fun isMouseOver(double_1: Double, double_2: Double): Boolean

keyPressed

open fun keyPressed(
    i: Int, 
    j: Int, 
    k: Int
): Boolean

keyReleased

open fun keyReleased(
    i: Int, 
    j: Int, 
    k: Int
): Boolean

lateRender

open fun lateRender(
    graphics: GuiGraphics?, 
    mouseX: Int, 
    mouseY: Int, 
    delta: Float
)

mouseClicked

open fun mouseClicked(
    d: Double, 
    e: Double, 
    i: Int
): Boolean

mouseDragged

open fun mouseDragged(
    d: Double, 
    e: Double, 
    i: Int, 
    f: Double, 
    g: Double
): Boolean

mouseMoved

open fun mouseMoved(mouseX: Double, mouseY: Double)

mouseReleased

open fun mouseReleased(
    d: Double, 
    e: Double, 
    i: Int
): Boolean

mouseScrolled

open fun mouseScrolled(
    d: Double, 
    e: Double, 
    amountX: Double, 
    amountY: Double
): Boolean

narratables

open override fun narratables(): MutableList<out NarratableEntry>

narrationPriority

open fun narrationPriority(): NarratableEntry.NarrationPriority?

nextFocusPath

@Nullable



open fun nextFocusPath(focusNavigationEvent: FocusNavigationEvent?): @Nullable



 ComponentPath?

provideReferenceEntry

@NotNull



open fun provideReferenceEntry(): @NotNull



 AbstractConfigEntry<T?>

render

open override fun render(
    graphics: GuiGraphics, 
    index: Int, 
    y: Int, 
    x: Int, 
    entryWidth: Int, 
    entryHeight: Int, 
    mouseX: Int, 
    mouseY: Int, 
    isHovered: Boolean, 
    delta: Float
)

requestReferenceRebuilding

save

open fun save()

setErrorSupplier

open fun setErrorSupplier(errorSupplier: Supplier<Optional<Component?>?>?)

setFocused

open fun setFocused(focused: Boolean)

setParent

open fun setParent(parent: DynamicEntryListWidget<AbstractConfigEntry<T?>?>?)

setScreen

@ApiStatus.Internal



fun setScreen(screen: AbstractConfigScreen?)

tick

open fun tick()

updateNarration

open fun updateNarration(narrationElementOutput: NarrationElementOutput?)

updateSelected

open fun updateSelected(isSelected: Boolean)