mirror of
https://gitlab.bixilon.de/bixilon/minosoft.git
synced 2025-09-17 11:24:56 -04:00
fix git info loading
This commit is contained in:
parent
7f66977b52
commit
3bf80ccea3
@ -33,6 +33,5 @@ class ZombiePigman(connection: PlayConnection, entityType: EntityType, position:
|
||||
override fun tweak(connection: PlayConnection, entityMetaData: EntityMetaData?, versionId: Int): ResourceLocation {
|
||||
return ZombifiedPiglin.RESOURCE_LOCATION
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -18,9 +18,9 @@ import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationD
|
||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.lerp
|
||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||
import de.bixilon.minosoft.util.KUtil.nullCast
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.get
|
||||
|
||||
data class Dimension(
|
||||
@ -73,22 +73,22 @@ data class Dimension(
|
||||
override fun deserialize(registries: Registries?, resourceLocation: ResourceLocation, data: Map<String, Any>): Dimension {
|
||||
return Dimension(
|
||||
resourceLocation = resourceLocation,
|
||||
piglinSafe = data["piglin_safe"]?.booleanCast() ?: false,
|
||||
natural = data["natural"]?.booleanCast() ?: false,
|
||||
piglinSafe = data["piglin_safe"]?.toBoolean() ?: false,
|
||||
natural = data["natural"]?.toBoolean() ?: false,
|
||||
ambientLight = data["ambient_light"]?.unsafeCast<Float>() ?: 0.0f,
|
||||
infiniBurn = ResourceLocation(data["infiniburn"].nullCast<String>() ?: "infiniburn_overworld"),
|
||||
respawnAnchorWorks = data["respawn_anchor_works"]?.booleanCast() ?: false,
|
||||
hasSkyLight = data["has_skylight", "has_sky_light"]?.booleanCast() ?: false,
|
||||
bedWorks = data["bed_works"]?.booleanCast() ?: false,
|
||||
respawnAnchorWorks = data["respawn_anchor_works"]?.toBoolean() ?: false,
|
||||
hasSkyLight = data["has_skylight", "has_sky_light"]?.toBoolean() ?: false,
|
||||
bedWorks = data["bed_works"]?.toBoolean() ?: false,
|
||||
effects = ResourceLocation(data["effects"].nullCast<String>() ?: "overworld"),
|
||||
hasRaids = data["has_raids"]?.booleanCast() ?: false,
|
||||
hasRaids = data["has_raids"]?.toBoolean() ?: false,
|
||||
logicalHeight = data["logical_height"]?.toInt() ?: 256,
|
||||
coordinateScale = data["coordinate_scale"].nullCast() ?: 0.0,
|
||||
minY = data["min_y"]?.toInt() ?: 0,
|
||||
hasCeiling = data["has_ceiling"]?.booleanCast() ?: false,
|
||||
ultraWarm = data["ultrawarm"]?.booleanCast() ?: false,
|
||||
hasCeiling = data["has_ceiling"]?.toBoolean() ?: false,
|
||||
ultraWarm = data["ultrawarm"]?.toBoolean() ?: false,
|
||||
height = data["height"]?.toInt() ?: 256,
|
||||
supports3DBiomes = data["supports_3d_biomes"]?.booleanCast() ?: false,
|
||||
supports3DBiomes = data["supports_3d_biomes"]?.toBoolean() ?: false,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -26,10 +26,10 @@ import de.bixilon.minosoft.gui.rendering.block.models.BlockModel
|
||||
import de.bixilon.minosoft.gui.rendering.block.renderable.WorldEntryRenderer
|
||||
import de.bixilon.minosoft.gui.rendering.block.renderable.block.BlockRenderer
|
||||
import de.bixilon.minosoft.gui.rendering.block.renderable.block.MultipartRenderer
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.asCompound
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||
import glm_.vec3.Vec3i
|
||||
import java.util.*
|
||||
@ -172,7 +172,7 @@ data class BlockState(
|
||||
}
|
||||
|
||||
val collisionShape = data["collision_shape"]?.asShape()
|
||||
?: if (data["is_collision_shape_full_block"]?.booleanCast() == true) {
|
||||
?: if (data["is_collision_shape_full_block"]?.toBoolean() == true) {
|
||||
VoxelShape.FULL
|
||||
} else {
|
||||
VoxelShape.EMPTY
|
||||
@ -196,7 +196,7 @@ data class BlockState(
|
||||
occlusionShape = occlusionShape,
|
||||
outlineShape = outlineShape,
|
||||
hardness = data["hardness"]?.unsafeCast<Float>() ?: 1.0f,
|
||||
requiresTool = data["requires_tool"]?.booleanCast() ?: material.soft,
|
||||
requiresTool = data["requires_tool"]?.toBoolean() ?: material.soft,
|
||||
breakSoundEvent = data["break_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||
stepSoundEvent = data["step_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||
placeSoundEvent = data["place_sound_type"]?.toInt()?.let { registries.soundEventRegistry[it] },
|
||||
|
@ -31,14 +31,14 @@ import de.bixilon.minosoft.gui.rendering.util.VecUtil.noise
|
||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
import de.bixilon.minosoft.util.KUtil.asResourceLocation
|
||||
import de.bixilon.minosoft.util.KUtil.chance
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import glm_.vec3.Vec3
|
||||
import glm_.vec3.Vec3d
|
||||
import glm_.vec3.Vec3i
|
||||
import kotlin.random.Random
|
||||
|
||||
open class CampfireBlock(resourceLocation: ResourceLocation, registries: Registries, data: Map<String, Any>) : Block(resourceLocation, registries, data) {
|
||||
val lavaParticles = data["lava_particles"]?.booleanCast() ?: true
|
||||
val lavaParticles = data["lava_particles"]?.toBoolean() ?: true
|
||||
|
||||
private val campfireCrackleSoundEvent = registries.soundEventRegistry[CAMPFIRE_CRACKLE_SOUND_RESOURCE_LOCATION]!!
|
||||
private val cosySmokeParticle = registries.particleTypeRegistry[CampfireSmokeParticle.CosyFactory]!!
|
||||
|
@ -26,8 +26,8 @@ import de.bixilon.minosoft.data.registries.registries.registry.Translatable
|
||||
import de.bixilon.minosoft.datafixer.EntityAttributeFixer.fix
|
||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
import de.bixilon.minosoft.util.KUtil.asResourceLocation
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||
import glm_.vec3.Vec3d
|
||||
import java.util.*
|
||||
@ -79,8 +79,8 @@ data class EntityType(
|
||||
translationKey = data["translation_key"]?.asResourceLocation(),
|
||||
width = data["width"].unsafeCast(),
|
||||
height = data["height"].unsafeCast(),
|
||||
fireImmune = data["fire_immune"]?.booleanCast() ?: false,
|
||||
sizeFixed = data["size_fixed"]?.booleanCast() ?: false,
|
||||
fireImmune = data["fire_immune"]?.toBoolean() ?: false,
|
||||
sizeFixed = data["size_fixed"]?.toBoolean() ?: false,
|
||||
attributes = attributes.toMap(),
|
||||
factory = DefaultEntityFactories[resourceLocation] ?: error("Can not find entity factory for $resourceLocation"),
|
||||
)
|
||||
|
@ -15,8 +15,8 @@ package de.bixilon.minosoft.data.registries.inventory
|
||||
import de.bixilon.minosoft.data.registries.registries.Registries
|
||||
import de.bixilon.minosoft.data.registries.registries.registry.IdDeserializer
|
||||
import de.bixilon.minosoft.data.registries.registries.registry.RegistryFakeEnumerable
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
|
||||
data class CreativeModeTab(
|
||||
override val name: String,
|
||||
@ -33,8 +33,8 @@ data class CreativeModeTab(
|
||||
name = data["language_id"].unsafeCast(),
|
||||
recipeFolderName = data["recipe_folder_name"].unsafeCast(),
|
||||
backgroundSuffix = data["background_suffix"].unsafeCast(),
|
||||
canScroll = data["can_scroll"]!!.booleanCast(),
|
||||
showTitle = data["show_title"]!!.booleanCast(),
|
||||
canScroll = data["can_scroll"]!!.toBoolean(),
|
||||
showTitle = data["show_title"]!!.toBoolean(),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -29,9 +29,9 @@ import de.bixilon.minosoft.data.registries.registries.registry.Translatable
|
||||
import de.bixilon.minosoft.gui.rendering.input.camera.hit.RaycastHit
|
||||
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
|
||||
import de.bixilon.minosoft.util.KUtil.asResourceLocation
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
|
||||
open class Item(
|
||||
override val resourceLocation: ResourceLocation,
|
||||
@ -41,7 +41,7 @@ open class Item(
|
||||
val rarity: Rarities = data["rarity"]?.toInt()?.let { Rarities[it] } ?: Rarities.COMMON
|
||||
val maxStackSize: Int = data["max_stack_size"]?.toInt() ?: 64
|
||||
val maxDamage: Int = data["max_damage"]?.toInt() ?: 1
|
||||
val isFireResistant: Boolean = data["is_fire_resistant"]?.booleanCast() ?: false
|
||||
val isFireResistant: Boolean = data["is_fire_resistant"]?.toBoolean() ?: false
|
||||
override val translationKey: ResourceLocation? = data["translation_key"]?.asResourceLocation()
|
||||
val creativeModeTab: CreativeModeTab? = data["category"]?.toInt()?.let { registries.creativeModeTabRegistry[it] }
|
||||
|
||||
|
@ -19,8 +19,8 @@ import de.bixilon.minosoft.data.registries.registries.registry.ResourceLocationD
|
||||
import de.bixilon.minosoft.data.text.RGBColor
|
||||
import de.bixilon.minosoft.gui.rendering.TintColorCalculator
|
||||
import de.bixilon.minosoft.util.KUtil.nullCast
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import java.util.*
|
||||
|
||||
data class Material(
|
||||
@ -46,13 +46,13 @@ data class Material(
|
||||
resourceLocation = resourceLocation,
|
||||
color = TintColorCalculator.getJsonColor(data["color"]?.toInt() ?: 0),
|
||||
pushReaction = data["push_reaction"].nullCast<String>()?.let { PushReactions.valueOf(it.uppercase(Locale.getDefault())) } ?: PushReactions.NORMAL,
|
||||
blockMotion = data["blocks_motion"]?.booleanCast() ?: false,
|
||||
flammable = data["flammable"]?.booleanCast() ?: false,
|
||||
liquid = data["liquid"]?.booleanCast() ?: false,
|
||||
soft = data["is_soft"]?.booleanCast() ?: false,
|
||||
solidBlocking = data["solid_blocking"]?.booleanCast() ?: false,
|
||||
replaceable = data["replaceable"]?.booleanCast() ?: false,
|
||||
solid = data["solid"]?.booleanCast() ?: false,
|
||||
blockMotion = data["blocks_motion"]?.toBoolean() ?: false,
|
||||
flammable = data["flammable"]?.toBoolean() ?: false,
|
||||
liquid = data["liquid"]?.toBoolean() ?: false,
|
||||
soft = data["is_soft"]?.toBoolean() ?: false,
|
||||
solidBlocking = data["solid_blocking"]?.toBoolean() ?: false,
|
||||
replaceable = data["replaceable"]?.toBoolean() ?: false,
|
||||
solid = data["solid"]?.toBoolean() ?: false,
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@ import de.bixilon.minosoft.gui.rendering.particle.DefaultParticleFactory
|
||||
import de.bixilon.minosoft.gui.rendering.particle.ParticleFactory
|
||||
import de.bixilon.minosoft.gui.rendering.particle.types.Particle
|
||||
import de.bixilon.minosoft.gui.rendering.textures.Texture
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.compoundCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||
|
||||
@ -53,7 +53,7 @@ data class ParticleType(
|
||||
return ParticleType(
|
||||
resourceLocation = resourceLocation,
|
||||
textures = textures.toList(),
|
||||
overrideLimiter = data["override_limiter"]?.booleanCast() ?: false,
|
||||
overrideLimiter = data["override_limiter"]?.toBoolean() ?: false,
|
||||
factory = factory,
|
||||
)
|
||||
}
|
||||
|
@ -77,7 +77,6 @@ interface ChatComponent {
|
||||
|
||||
@JvmOverloads
|
||||
fun of(raw: Any? = null, translator: Translator? = null, parent: TextComponent? = null, ignoreJson: Boolean = false, restrictedMode: Boolean = false): ChatComponent {
|
||||
// ToDo: Remove gson, replace with maps
|
||||
if (raw == null) {
|
||||
return BaseComponent()
|
||||
}
|
||||
|
@ -43,7 +43,6 @@ class ErosErrorReport : DialogController() {
|
||||
detailsFX.text = exception?.toStackTrace()
|
||||
}
|
||||
|
||||
|
||||
@FXML
|
||||
fun ignore() {
|
||||
stage.close()
|
||||
|
@ -32,7 +32,7 @@ import de.bixilon.minosoft.gui.rendering.util.VecUtil.plus
|
||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.rotate
|
||||
import de.bixilon.minosoft.gui.rendering.util.VecUtil.toVec3
|
||||
import de.bixilon.minosoft.gui.rendering.util.mesh.Mesh
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import glm_.vec3.Vec3
|
||||
|
||||
class ElementRenderer(
|
||||
@ -47,7 +47,7 @@ class ElementRenderer(
|
||||
private var transformedPositions: Array<Vec3> = element.transformedPositions.clone()
|
||||
|
||||
init {
|
||||
rotatePositionsAxes(transformedPositions, rotation, data["rescale"]?.booleanCast() ?: model.rescale)
|
||||
rotatePositionsAxes(transformedPositions, rotation, data["rescale"]?.toBoolean() ?: model.rescale)
|
||||
|
||||
val faces: MutableMap<Directions, BlockModelFace> = mutableMapOf()
|
||||
for (direction in Directions.VALUES) {
|
||||
@ -60,7 +60,7 @@ class ElementRenderer(
|
||||
faces[direction] = BlockModelFace(it)
|
||||
}
|
||||
}
|
||||
if (data["uvlock"]?.booleanCast() ?: model.uvLock) {
|
||||
if (data["uvlock"]?.toBoolean() ?: model.uvLock) {
|
||||
for (direction in Directions.VALUES) {
|
||||
val axis = Axes[direction]
|
||||
val angle = axis.choose(rotation) * axis.choose(direction.vector)
|
||||
|
@ -31,6 +31,7 @@ import de.bixilon.minosoft.util.CountUpAndDownLatch
|
||||
import de.bixilon.minosoft.util.KUtil.asResourceLocation
|
||||
import de.bixilon.minosoft.util.KUtil.nullCast
|
||||
import de.bixilon.minosoft.util.KUtil.synchronizedListOf
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.KUtil.toSynchronizedList
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
@ -38,7 +39,6 @@ import de.bixilon.minosoft.util.Queue
|
||||
import de.bixilon.minosoft.util.logging.Log
|
||||
import de.bixilon.minosoft.util.logging.LogLevels
|
||||
import de.bixilon.minosoft.util.logging.LogMessageType
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.listCast
|
||||
import glm_.vec3.Vec3
|
||||
import glm_.vec3.Vec3i
|
||||
@ -242,9 +242,9 @@ class AudioPlayer(
|
||||
volume = soundJson["volume"]?.unsafeCast<Double>()?.toFloat() ?: 1.0f,
|
||||
pitch = soundJson["pitch"]?.unsafeCast<Double>()?.toFloat() ?: 1.0f,
|
||||
weight = soundJson["weight"]?.toInt() ?: 1,
|
||||
stream = soundJson["stream"]?.booleanCast() ?: false,
|
||||
stream = soundJson["stream"]?.toBoolean() ?: false,
|
||||
attenuationDistance = soundJson["attenuation_distance"]?.toInt() ?: 16,
|
||||
preload = soundJson["preload"]?.booleanCast() ?: false,
|
||||
preload = soundJson["preload"]?.toBoolean() ?: false,
|
||||
)
|
||||
}
|
||||
is JsonArray -> TODO()
|
||||
|
@ -16,11 +16,12 @@ package de.bixilon.minosoft.util
|
||||
import de.bixilon.minosoft.Minosoft
|
||||
import de.bixilon.minosoft.data.registries.ResourceLocation
|
||||
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
|
||||
import de.bixilon.minosoft.util.KUtil.toBoolean
|
||||
import de.bixilon.minosoft.util.KUtil.toInt
|
||||
import de.bixilon.minosoft.util.KUtil.unsafeCast
|
||||
import de.bixilon.minosoft.util.logging.Log
|
||||
import de.bixilon.minosoft.util.logging.LogLevels
|
||||
import de.bixilon.minosoft.util.logging.LogMessageType
|
||||
import de.bixilon.minosoft.util.nbt.tag.NBTUtil.booleanCast
|
||||
import java.text.DateFormat
|
||||
import java.text.SimpleDateFormat
|
||||
|
||||
@ -94,15 +95,15 @@ object GitInfo {
|
||||
GIT_COMMIT_TIME = dateFormat.parse(json["git.commit.time"].unsafeCast()).time
|
||||
GIT_COMMIT_USER_EMAIL = json["git.commit.user.email"].unsafeCast()
|
||||
GIT_COMMIT_USER_NAME = json["git.commit.user.name"].unsafeCast()
|
||||
GIT_DIRTY = json["git.dirty"]!!.booleanCast()
|
||||
GIT_LOCAL_BRANCH_AHEAD = json["git.local.branch.ahead"].unsafeCast()
|
||||
GIT_LOCAL_BRANCH_BEHIND = json["git.local.branch.behind"].unsafeCast()
|
||||
GIT_DIRTY = json["git.dirty"].toBoolean()
|
||||
GIT_LOCAL_BRANCH_AHEAD = json["git.local.branch.ahead"].toInt()
|
||||
GIT_LOCAL_BRANCH_BEHIND = json["git.local.branch.behind"].toInt()
|
||||
GIT_TAGS = if (json["git.tags"].unsafeCast<String>().isBlank()) {
|
||||
0
|
||||
} else {
|
||||
json["git.tags"].unsafeCast()
|
||||
}
|
||||
GIT_TOTAL_COMMIT_COUNT = json["git.total.commit.count"].unsafeCast()
|
||||
GIT_TOTAL_COMMIT_COUNT = json["git.total.commit.count"].toInt()
|
||||
|
||||
IS_INITIALIZED = true
|
||||
} catch (exception: Throwable) {
|
||||
|
@ -298,7 +298,7 @@ object KUtil {
|
||||
return JSONSerializer.ANY_ADAPTER.fromJson(this)!!
|
||||
}
|
||||
|
||||
fun Any.toInt(): Int {
|
||||
fun Any?.toInt(): Int {
|
||||
return when (this) {
|
||||
is Int -> this
|
||||
is Number -> this.toInt()
|
||||
@ -308,7 +308,7 @@ object KUtil {
|
||||
}
|
||||
}
|
||||
|
||||
fun Any.toDouble(): Double {
|
||||
fun Any?.toDouble(): Double {
|
||||
return when (this) {
|
||||
is Double -> this
|
||||
is Number -> this.toDouble()
|
||||
@ -316,7 +316,7 @@ object KUtil {
|
||||
}
|
||||
}
|
||||
|
||||
fun Any.toFloat(): Float {
|
||||
fun Any?.toFloat(): Float {
|
||||
return when (this) {
|
||||
is Float -> this
|
||||
is Number -> this.toFloat()
|
||||
@ -324,11 +324,13 @@ object KUtil {
|
||||
}
|
||||
}
|
||||
|
||||
fun Any.toBoolean(): Boolean {
|
||||
fun Any?.toBoolean(): Boolean {
|
||||
return when (this) {
|
||||
is Boolean -> this
|
||||
is String -> this.toBooleanStrict()
|
||||
else -> TODO()
|
||||
is Number -> this.toInt() == 0x01
|
||||
"true" -> true
|
||||
"false" -> false
|
||||
else -> TODO("$this is not a boolean!")
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -52,15 +52,6 @@ object NBTUtil {
|
||||
return null
|
||||
}
|
||||
|
||||
fun Any.booleanCast(): Boolean {
|
||||
if (this is Boolean) {
|
||||
return this
|
||||
}
|
||||
if (this is Number) {
|
||||
return this.toInt() == 0x01
|
||||
}
|
||||
TODO()
|
||||
}
|
||||
|
||||
operator fun Map<String, Any>.get(key1: String, key2: String, vararg keys: String): Any? {
|
||||
this[key1]?.let { return it }
|
||||
|
@ -45,9 +45,6 @@
|
||||
<ColumnConstraints hgrow="NEVER" minWidth="10.0"/>
|
||||
<ColumnConstraints hgrow="NEVER" minWidth="10.0"/>
|
||||
</columnConstraints>
|
||||
<rowConstraints>
|
||||
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES"/>
|
||||
</rowConstraints>
|
||||
<FontIcon fx:id="playIconFX" accessibleText="Play" iconLiteral="fas-play" iconSize="30" GridPane.columnIndex="1">
|
||||
<GridPane.margin>
|
||||
<Insets bottom="2.0" left="5.0" right="5.0" top="2.0"/>
|
||||
|
Loading…
x
Reference in New Issue
Block a user