diff --git a/gradle.properties b/gradle.properties index 21d820269..760f18851 100644 --- a/gradle.properties +++ b/gradle.properties @@ -7,6 +7,6 @@ org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled javaVersion=25 mcVersion=26.2 group=dev.slne.surf.api -version=3.43.0 +version=3.43.1 relocationPrefix=dev.slne.surf.api.libs snapshot=false diff --git a/surf-api-minestom/api/surf-api-minestom.api b/surf-api-minestom/api/surf-api-minestom.api index 449e4c59a..a21b66f44 100644 --- a/surf-api-minestom/api/surf-api-minestom.api +++ b/surf-api-minestom/api/surf-api-minestom.api @@ -797,6 +797,17 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/container public static synthetic fun forSlot$default (Ldev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewBlockCellComponent$Companion;ILdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ILjava/lang/Object;)Ldev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewBlockCellComponent; } +public final class dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerBackHintComponent : dev/slne/surf/api/minestom/inventory/framework/view/container/component/ViewContainerComponent { + public static final field INSTANCE Ldev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerBackHintComponent; + public fun equals (Ljava/lang/Object;)Z + public fun getHasExactWidth ()Z + public fun getPositionalShift ()I + public fun getTextureWidth ()I + public fun hashCode ()I + public fun renderComponent (Ldev/slne/surf/api/core/messages/builder/SurfComponentBuilder;)V + public fun toString ()Ljava/lang/String; +} + public final class dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerRowTextComponent : dev/slne/surf/api/minestom/inventory/framework/view/container/component/ViewContainerComponent { public fun (ILjava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lkotlin/ranges/IntRange;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;)V public synthetic fun (ILjava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lkotlin/ranges/IntRange;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;ILkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -815,6 +826,8 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/container } public final class dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerTitleComponent : dev/slne/surf/api/minestom/inventory/framework/view/container/component/ViewContainerComponent { + public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;ILdev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lit/unimi/dsi/fastutil/ints/Int2IntMap;)V + public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;ILdev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lit/unimi/dsi/fastutil/ints/Int2IntMap;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;)V public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public fun (Lnet/kyori/adventure/text/Component;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;)V @@ -1045,6 +1058,8 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/settings/ public fun ()V public fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/minestom/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;)V public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/minestom/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Lnet/kyori/adventure/key/Key; public final fun component10 ()Z public final fun component11 ()Z @@ -1064,7 +1079,9 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/settings/ public final fun component8 ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; public final fun component9 ()Z public final fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/minestom/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings; + public final synthetic fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings; public static synthetic fun copy$default (Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/minestom/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;ILjava/lang/Object;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings; + public static synthetic fun copy$default (Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginationButtonPosition;ILjava/lang/Object;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings; public fun equals (Ljava/lang/Object;)Z public fun getBackgroundGlyph ()Z public fun getCancelOnClick ()Z @@ -1134,6 +1151,8 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/settings/ public fun ()V public fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;)V public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Lnet/kyori/adventure/key/Key; public final fun component10 ()Z public final fun component11 ()Z @@ -1149,7 +1168,9 @@ public final class dev/slne/surf/api/minestom/inventory/framework/view/settings/ public final fun component8 ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; public final fun component9 ()Z public final fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings; + public final synthetic fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings; public static synthetic fun copy$default (Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;ILjava/lang/Object;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings; + public static synthetic fun copy$default (Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/minestom/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/minestom/inventory/framework/view/settings/ViewRows;ILjava/lang/Object;)Ldev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings; public fun equals (Ljava/lang/Object;)Z public fun getBackgroundGlyph ()Z public fun getCancelOnClick ()Z diff --git a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt new file mode 100644 index 000000000..158a6dba9 --- /dev/null +++ b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt @@ -0,0 +1,13 @@ +package dev.slne.surf.api.minestom.inventory.framework.view.container.component.components + +import dev.slne.surf.api.core.messages.builder.SurfComponentBuilder +import dev.slne.surf.api.minestom.inventory.framework.view.container.component.ViewContainerComponent + +@Deprecated("Binary compatibility", level = DeprecationLevel.HIDDEN) +data object ViewContainerBackHintComponent : ViewContainerComponent { + override val positionalShift = 0 + override val textureWidth = 0 + + override fun SurfComponentBuilder.renderComponent() { + } +} diff --git a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt index 987c657ef..7e8639c01 100644 --- a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt +++ b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt @@ -1,12 +1,15 @@ package dev.slne.surf.api.minestom.inventory.framework.view.container.component.components import dev.slne.surf.api.core.inventory.framework.internal.layoutViewText +import dev.slne.surf.api.core.messages.adventure.text import dev.slne.surf.api.core.messages.builder.SurfComponentBuilder import dev.slne.surf.api.minestom.inventory.framework.view.container.component.ViewContainerComponent import dev.slne.surf.api.minestom.inventory.framework.view.settings.SurfViewSettingsDefaults import dev.slne.surf.api.minestom.inventory.framework.view.settings.ViewFontMetrics import dev.slne.surf.api.minestom.inventory.framework.view.settings.ViewHeaderGeometry import dev.slne.surf.api.minestom.inventory.framework.view.settings.align.TextAlignment +import it.unimi.dsi.fastutil.ints.Int2IntMap +import it.unimi.dsi.fastutil.ints.Int2IntMaps import net.kyori.adventure.key.Key import net.kyori.adventure.text.Component import net.kyori.adventure.text.format.TextColor @@ -102,4 +105,23 @@ class ViewContainerTitleComponent( result = 31 * result + textAlignment.hashCode() return result } + + @Deprecated("Binary compatibility", level = DeprecationLevel.HIDDEN) + constructor( + title: String, + font: Key, + charSpacing: Int, + textAlignment: TextAlignment, + charWidths: Int2IntMap = Int2IntMaps.EMPTY_MAP, + ) : this( + title = text(title), + font = font, + textAlignment = textAlignment, + metrics = ViewFontMetrics( + charSize = ViewFontMetrics.MENU_CHAR_SIZE, + charSpacing = charSpacing, + uppercase = true, + charWidths = charWidths + ) + ) } diff --git a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings.kt b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings.kt index 76aee79be..06482db63 100644 --- a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings.kt +++ b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/PaginatedViewSettings.kt @@ -45,25 +45,26 @@ import net.kyori.adventure.text.format.TextColor * @see PaginationEmptyRows * @see PaginationButtonPosition */ +@OptIn(ExperimentalVersionOverloading::class) data class PaginatedViewSettings( override val font: Key = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT, override val headerTextAlignment: TextAlignment = SurfViewSettingsDefaults.DEFAULT_HEADER_ALIGNMENT, - override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, - override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, - override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, - override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, - override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, - override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, + @IntroducedAt("3.43.0") override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, + @IntroducedAt("3.43.0") override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, + @IntroducedAt("3.43.0") override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, + @IntroducedAt("3.43.0") override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, + @IntroducedAt("3.43.0") override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, + @IntroducedAt("3.43.0") override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, override val cancelOnClick: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_CLICK, override val cancelOnDrag: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DRAG, override val cancelOnDrop: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DROP, override val cancelOnPickup: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_PICKUP, override val navigateBackOnOutsideClick: Boolean = SurfViewSettingsDefaults.DEFAULT_NAVIGATE_BACK_ON_CLOSE, val paginationViewRows: PaginationViewRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_VIEW_ROWS, - val paginationEmptyRows: PaginationEmptyRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_EMPTY_ROWS, + @IntroducedAt("3.43.0") val paginationEmptyRows: PaginationEmptyRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_EMPTY_ROWS, val paginationButtonPosition: PaginationButtonPosition = SurfViewSettingsDefaults.DEFAULT_PAGINATION_BUTTON_POSITION, - val paginationPageIndicator: PaginationPageIndicator? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_PAGE_INDICATOR, - val paginationSwitchSound: Sound? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_SWITCH_SOUND, + @IntroducedAt("3.43.0") val paginationPageIndicator: PaginationPageIndicator? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_PAGE_INDICATOR, + @IntroducedAt("3.43.0") val paginationSwitchSound: Sound? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_SWITCH_SOUND, ) : SurfViewSettings { override val rows: ViewRows = paginationViewRows.actualRows internal val paginationButtonRow = diff --git a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings.kt b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings.kt index 7b4e7769b..72013f8ca 100644 --- a/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings.kt +++ b/surf-api-minestom/src/main/kotlin/dev/slne/surf/api/minestom/inventory/framework/view/settings/SimpleViewSettings.kt @@ -29,15 +29,16 @@ import net.kyori.adventure.text.format.TextColor * @see SurfViewSettings * @see SimpleViewSettingsBuilder */ +@OptIn(ExperimentalVersionOverloading::class) data class SimpleViewSettings( override val font: Key = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT, override val headerTextAlignment: TextAlignment = SurfViewSettingsDefaults.DEFAULT_HEADER_ALIGNMENT, - override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, - override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, - override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, - override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, - override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, - override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, + @IntroducedAt("3.43.0") override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, + @IntroducedAt("3.43.0") override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, + @IntroducedAt("3.43.0") override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, + @IntroducedAt("3.43.0") override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, + @IntroducedAt("3.43.0") override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, + @IntroducedAt("3.43.0") override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, override val cancelOnClick: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_CLICK, override val cancelOnDrag: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DRAG, override val cancelOnDrop: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DROP, diff --git a/surf-api-paper/surf-api-paper/api/surf-api-paper.api b/surf-api-paper/surf-api-paper/api/surf-api-paper.api index 65ffb5527..ccf7347f0 100644 --- a/surf-api-paper/surf-api-paper/api/surf-api-paper.api +++ b/surf-api-paper/surf-api-paper/api/surf-api-paper.api @@ -1213,6 +1213,17 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/container/co public static synthetic fun forSlot$default (Ldev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewBlockCellComponent$Companion;ILdev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ILjava/lang/Object;)Ldev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewBlockCellComponent; } +public final class dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerBackHintComponent : dev/slne/surf/api/paper/inventory/framework/view/container/component/ViewContainerComponent { + public static final field INSTANCE Ldev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerBackHintComponent; + public fun equals (Ljava/lang/Object;)Z + public fun getHasExactWidth ()Z + public fun getPositionalShift ()I + public fun getTextureWidth ()I + public fun hashCode ()I + public fun renderComponent (Ldev/slne/surf/api/core/messages/builder/SurfComponentBuilder;)V + public fun toString ()Ljava/lang/String; +} + public final class dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerRowTextComponent : dev/slne/surf/api/paper/inventory/framework/view/container/component/ViewContainerComponent { public fun (ILjava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lkotlin/ranges/IntRange;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;)V public synthetic fun (ILjava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lkotlin/ranges/IntRange;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;ILkotlin/jvm/internal/DefaultConstructorMarker;)V @@ -1231,6 +1242,8 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/container/co } public final class dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerTitleComponent : dev/slne/surf/api/paper/inventory/framework/view/container/component/ViewContainerComponent { + public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;ILdev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lit/unimi/dsi/fastutil/ints/Int2IntMap;)V + public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;ILdev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lit/unimi/dsi/fastutil/ints/Int2IntMap;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;)V public synthetic fun (Ljava/lang/String;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public fun (Lnet/kyori/adventure/text/Component;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;)V @@ -1463,6 +1476,8 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/settings/Pag public fun ()V public fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/paper/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;)V public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/paper/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Lnet/kyori/adventure/key/Key; public final fun component10 ()Z public final fun component11 ()Z @@ -1482,7 +1497,9 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/settings/Pag public final fun component8 ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; public final fun component9 ()Z public final fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/paper/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings; + public final synthetic fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings; public static synthetic fun copy$default (Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationEmptyRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;Ldev/slne/surf/api/paper/inventory/framework/view/pagination/PaginationPageIndicator;Lnet/kyori/adventure/sound/Sound;ILjava/lang/Object;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings; + public static synthetic fun copy$default (Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/PaginationViewRows;Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginationButtonPosition;ILjava/lang/Object;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings; public fun equals (Ljava/lang/Object;)Z public fun getBackgroundGlyph ()Z public fun getCancelOnClick ()Z @@ -1552,6 +1569,8 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/settings/Sim public fun ()V public fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;)V public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;)V + public synthetic fun (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Lnet/kyori/adventure/key/Key; public final fun component10 ()Z public final fun component11 ()Z @@ -1567,7 +1586,9 @@ public final class dev/slne/surf/api/paper/inventory/framework/view/settings/Sim public final fun component8 ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; public final fun component9 ()Z public final fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings; + public final synthetic fun copy (Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings; public static synthetic fun copy$default (Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;Lnet/kyori/adventure/text/format/TextColor;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewFontMetrics;Ldev/slne/surf/api/paper/inventory/framework/view/settings/ViewHeaderGeometry;ZLit/unimi/dsi/fastutil/ints/Int2ObjectMap;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;ILjava/lang/Object;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings; + public static synthetic fun copy$default (Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings;Lnet/kyori/adventure/key/Key;Ldev/slne/surf/api/paper/inventory/framework/view/settings/align/TextAlignment;ZZZZZLdev/slne/surf/api/paper/inventory/framework/view/settings/ViewRows;ILjava/lang/Object;)Ldev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings; public fun equals (Ljava/lang/Object;)Z public fun getBackgroundGlyph ()Z public fun getCancelOnClick ()Z diff --git a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt new file mode 100644 index 000000000..9580360c6 --- /dev/null +++ b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerBackHintComponent.kt @@ -0,0 +1,13 @@ +package dev.slne.surf.api.paper.inventory.framework.view.container.component.components + +import dev.slne.surf.api.core.messages.builder.SurfComponentBuilder +import dev.slne.surf.api.paper.inventory.framework.view.container.component.ViewContainerComponent + +@Deprecated("Binary compatibility", level = DeprecationLevel.HIDDEN) +data object ViewContainerBackHintComponent : ViewContainerComponent { + override val positionalShift = 0 + override val textureWidth = 0 + + override fun SurfComponentBuilder.renderComponent() { + } +} diff --git a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt index fb038c61f..fdbd18e4d 100644 --- a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt +++ b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/container/component/components/ViewContainerTitleComponent.kt @@ -1,12 +1,15 @@ package dev.slne.surf.api.paper.inventory.framework.view.container.component.components import dev.slne.surf.api.core.inventory.framework.internal.layoutViewText +import dev.slne.surf.api.core.messages.adventure.text import dev.slne.surf.api.core.messages.builder.SurfComponentBuilder import dev.slne.surf.api.paper.inventory.framework.view.container.component.ViewContainerComponent import dev.slne.surf.api.paper.inventory.framework.view.settings.SurfViewSettingsDefaults import dev.slne.surf.api.paper.inventory.framework.view.settings.ViewFontMetrics import dev.slne.surf.api.paper.inventory.framework.view.settings.ViewHeaderGeometry import dev.slne.surf.api.paper.inventory.framework.view.settings.align.TextAlignment +import it.unimi.dsi.fastutil.ints.Int2IntMap +import it.unimi.dsi.fastutil.ints.Int2IntMaps import net.kyori.adventure.key.Key import net.kyori.adventure.text.Component import net.kyori.adventure.text.format.TextColor @@ -102,4 +105,23 @@ class ViewContainerTitleComponent( result = 31 * result + textAlignment.hashCode() return result } + + @Deprecated("Binary compatibility", level = DeprecationLevel.HIDDEN) + constructor( + title: String, + font: Key, + charSpacing: Int, + textAlignment: TextAlignment, + charWidths: Int2IntMap = Int2IntMaps.EMPTY_MAP, + ) : this( + title = text(title), + font = font, + textAlignment = textAlignment, + metrics = ViewFontMetrics( + charSize = ViewFontMetrics.MENU_CHAR_SIZE, + charSpacing = charSpacing, + uppercase = true, + charWidths = charWidths + ) + ) } diff --git a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings.kt b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings.kt index 480a3023b..f6b379558 100644 --- a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings.kt +++ b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/PaginatedViewSettings.kt @@ -45,25 +45,26 @@ import net.kyori.adventure.text.format.TextColor * @see PaginationEmptyRows * @see PaginationButtonPosition */ +@OptIn(ExperimentalVersionOverloading::class) data class PaginatedViewSettings( override val font: Key = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT, override val headerTextAlignment: TextAlignment = SurfViewSettingsDefaults.DEFAULT_HEADER_ALIGNMENT, - override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, - override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, - override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, - override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, - override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, - override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, + @IntroducedAt("3.43.0") override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, + @IntroducedAt("3.43.0") override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, + @IntroducedAt("3.43.0") override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, + @IntroducedAt("3.43.0") override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, + @IntroducedAt("3.43.0") override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, + @IntroducedAt("3.43.0") override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, override val cancelOnClick: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_CLICK, override val cancelOnDrag: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DRAG, override val cancelOnDrop: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DROP, override val cancelOnPickup: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_PICKUP, override val navigateBackOnOutsideClick: Boolean = SurfViewSettingsDefaults.DEFAULT_NAVIGATE_BACK_ON_CLOSE, val paginationViewRows: PaginationViewRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_VIEW_ROWS, - val paginationEmptyRows: PaginationEmptyRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_EMPTY_ROWS, + @IntroducedAt("3.43.0") val paginationEmptyRows: PaginationEmptyRows = SurfViewSettingsDefaults.DEFAULT_PAGINATION_EMPTY_ROWS, val paginationButtonPosition: PaginationButtonPosition = SurfViewSettingsDefaults.DEFAULT_PAGINATION_BUTTON_POSITION, - val paginationPageIndicator: PaginationPageIndicator? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_PAGE_INDICATOR, - val paginationSwitchSound: Sound? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_SWITCH_SOUND, + @IntroducedAt("3.43.0") val paginationPageIndicator: PaginationPageIndicator? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_PAGE_INDICATOR, + @IntroducedAt("3.43.0") val paginationSwitchSound: Sound? = SurfViewSettingsDefaults.DEFAULT_PAGINATION_SWITCH_SOUND, ) : SurfViewSettings { override val rows: ViewRows = paginationViewRows.actualRows internal val paginationButtonRow = diff --git a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings.kt b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings.kt index db2d4a7fd..6e01323dc 100644 --- a/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings.kt +++ b/surf-api-paper/surf-api-paper/src/main/kotlin/dev/slne/surf/api/paper/inventory/framework/view/settings/SimpleViewSettings.kt @@ -29,15 +29,16 @@ import net.kyori.adventure.text.format.TextColor * @see SurfViewSettings * @see SimpleViewSettingsBuilder */ +@OptIn(ExperimentalVersionOverloading::class) data class SimpleViewSettings( override val font: Key = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT, override val headerTextAlignment: TextAlignment = SurfViewSettingsDefaults.DEFAULT_HEADER_ALIGNMENT, - override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, - override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, - override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, - override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, - override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, - override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, + @IntroducedAt("3.43.0") override val headerTextColor: TextColor = SurfViewSettingsDefaults.DEFAULT_HEADER_TEXT_COLOR, + @IntroducedAt("3.43.0") override val headerFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_HEADER_FONT_METRICS, + @IntroducedAt("3.43.0") override val rowFontMetrics: ViewFontMetrics = SurfViewSettingsDefaults.DEFAULT_ROW_FONT_METRICS, + @IntroducedAt("3.43.0") override val headerGeometry: ViewHeaderGeometry = SurfViewSettingsDefaults.DEFAULT_HEADER_GEOMETRY, + @IntroducedAt("3.43.0") override val backgroundGlyph: Boolean = SurfViewSettingsDefaults.DEFAULT_BACKGROUND_GLYPH, + @IntroducedAt("3.43.0") override val rowFonts: Int2ObjectMap = SurfViewSettingsDefaults.DEFAULT_ROW_FONTS, override val cancelOnClick: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_CLICK, override val cancelOnDrag: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DRAG, override val cancelOnDrop: Boolean = SurfViewSettingsDefaults.DEFAULT_CANCEL_ON_DROP,