Interface Style

  • All Superinterfaces:
    Buildable<Style,​Style.Builder>, net.kyori.examination.Examinable

    @NonExtendable
    public interface Style
    extends Buildable<Style,​Style.Builder>, net.kyori.examination.Examinable
    A style applies visual effects or extra functionality to Components, such as TextColors, TextDecorations, ClickEvents etc.

    Some examples of valid styles:

         Style myStyle = Style.style(ClickEvent.openUrl(url), NamedTextColor.RED, TextDecoration.BOLD);
         Style yourStyle = Style.style(TextColor.color(20, 30, 40), HoverEvent.showText(Component.text("Wow!"));
         Style ourStyle = Style.style().color(NamedTextColor.WHITE).build();
       

    A note about fonts: the Key in this context represents the resource location of the font in the same way as Sounds

    Since:
    4.0.0
    • Field Detail

      • DEFAULT_FONT

        static final net.kyori.adventure.key.Key DEFAULT_FONT
        The default font.
        Since:
        4.0.0
        Since Minecraft:
        1.16
    • Method Detail

      • empty

        static @NonNull Style empty()
        Gets an empty style.
        Returns:
        empty style
        Since:
        4.0.0
      • style

        static @NonNull Style.Builder style()
        Creates a builder.
        Returns:
        a builder
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@NonNull Consumer<Style.Builder> consumer)
        Creates a style.
        Parameters:
        consumer - the builder consumer
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@Nullable TextColor color)
        Creates a style with color.
        Parameters:
        color - the style
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@NonNull TextDecoration decoration)
        Creates a style with decoration.
        Parameters:
        decoration - the decoration
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@Nullable TextColor color,
                                    TextDecoration @NonNull ... decorations)
        Creates a style with color and decorations.
        Parameters:
        color - the style
        decorations - the decorations
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@Nullable TextColor color,
                                    Set<TextDecoration> decorations)
        Creates a style with color and decorations.
        Parameters:
        color - the style
        decorations - the decorations
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(StyleBuilderApplicable @NonNull ... applicables)
        Creates a style with applicables applied.
        Parameters:
        applicables - the applicables
        Returns:
        a style
        Since:
        4.0.0
      • style

        static @NonNull Style style​(@NonNull Iterable<? extends StyleBuilderApplicable> applicables)
        Creates a style with applicables applied.
        Parameters:
        applicables - the applicables
        Returns:
        a style
        Since:
        4.0.0
      • edit

        default @NonNull Style edit​(@NonNull Consumer<Style.Builder> consumer)
        Edits this style.

        The old style will be merge into the new style before consumer is called.

        Parameters:
        consumer - the consumer
        Returns:
        a new style
        Since:
        4.0.0
      • edit

        default @NonNull Style edit​(@NonNull Consumer<Style.Builder> consumer,
                                    @NonNull Style.Merge.Strategy strategy)
        Edits this style.
        Parameters:
        consumer - the consumer
        strategy - the merge strategy
        Returns:
        a new style
        Since:
        4.0.0
      • font

        @Nullable net.kyori.adventure.key.Key font()
        Gets the font.
        Returns:
        the font
        Since:
        4.0.0
        Since Minecraft:
        1.16
      • font

        @NonNull Style font​(@Nullable net.kyori.adventure.key.Key font)
        Sets the font.
        Parameters:
        font - the font
        Returns:
        a style
        Since:
        4.0.0
        Since Minecraft:
        1.16
      • color

        @Nullable TextColor color()
        Gets the color.
        Returns:
        the color
        Since:
        4.0.0
      • color

        @NonNull Style color​(@Nullable TextColor color)
        Sets the color.
        Parameters:
        color - the color
        Returns:
        a style
        Since:
        4.0.0
      • colorIfAbsent

        @NonNull Style colorIfAbsent​(@Nullable TextColor color)
        Sets the color if there isn't one set already.
        Parameters:
        color - the color
        Returns:
        this builder
        Since:
        4.0.0
      • hasDecoration

        default boolean hasDecoration​(@NonNull TextDecoration decoration)
        Tests if this style has a decoration.
        Parameters:
        decoration - the decoration
        Returns:
        true if this style has the decoration, false if this style does not have the decoration
        Since:
        4.0.0
      • decorate

        default @NonNull Style decorate​(@NonNull TextDecoration decoration)
        Sets the state of decoration to TextDecoration.State.TRUE on this style.
        Parameters:
        decoration - the decoration
        Returns:
        a style
        Since:
        4.0.0
      • decoration

        default @NonNull Style decoration​(@NonNull TextDecoration decoration,
                                          boolean flag)
        Sets the state of a decoration on this style.
        Parameters:
        decoration - the decoration
        flag - true if this style should have the decoration, false if this style should not have the decoration
        Returns:
        a style
        Since:
        4.0.0
      • decorations

        @Unmodifiable @NonNull Map<TextDecoration,​TextDecoration.State> decorations()
        Gets a map of decorations this style has.
        Returns:
        a set of decorations this style has
        Since:
        4.0.0
      • decorations

        @NonNull Style decorations​(@NonNull Map<TextDecoration,​TextDecoration.State> decorations)
        Sets decorations for this style using the specified decorations map.

        If a given decoration does not have a value explicitly set, the value of that particular decoration is not changed.

        Parameters:
        decorations - the decorations
        Returns:
        a style
        Since:
        4.0.0
      • clickEvent

        @Nullable ClickEvent clickEvent()
        Gets the click event.
        Returns:
        the click event
        Since:
        4.0.0
      • clickEvent

        @NonNull Style clickEvent​(@Nullable ClickEvent event)
        Sets the click event.
        Parameters:
        event - the click event
        Returns:
        a style
        Since:
        4.0.0
      • hoverEvent

        @Nullable HoverEvent<?> hoverEvent()
        Gets the hover event.
        Returns:
        the hover event
        Since:
        4.0.0
      • hoverEvent

        @NonNull Style hoverEvent​(@Nullable HoverEventSource<?> source)
        Sets the hover event.
        Parameters:
        source - the hover event source
        Returns:
        a style
        Since:
        4.0.0
      • insertion

        @Nullable String insertion()
        Gets the string to be inserted when this style is shift-clicked.
        Returns:
        the insertion string
        Since:
        4.0.0
      • insertion

        @NonNull Style insertion​(@Nullable String insertion)
        Sets the string to be inserted when this style is shift-clicked.
        Parameters:
        insertion - the insertion string
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that)
        Merges from another style into this style.
        Parameters:
        that - the other style
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Style.Merge.Strategy strategy)
        Merges from another style into this style.
        Parameters:
        that - the other style
        strategy - the merge strategy
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Style.Merge merge)
        Merges from another style into this style.
        Parameters:
        that - the other style
        merge - the part to merge
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Style.Merge.Strategy strategy,
                                     @NonNull Style.Merge merge)
        Merges from another style into this style.
        Parameters:
        that - the other style
        strategy - the merge strategy
        merge - the part to merge
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Style.Merge @NonNull ... merges)
        Merges from another style into this style.
        Parameters:
        that - the other style
        merges - the parts to merge
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Style.Merge.Strategy strategy,
                                     @NonNull Style.Merge @NonNull ... merges)
        Merges from another style into this style.
        Parameters:
        that - the other style
        strategy - the merge strategy
        merges - the parts to merge
        Returns:
        a style
        Since:
        4.0.0
      • merge

        default @NonNull Style merge​(@NonNull Style that,
                                     @NonNull Set<Style.Merge> merges)
        Merges from another style into this style.
        Parameters:
        that - the other style
        merges - the parts to merge
        Returns:
        a style
        Since:
        4.0.0
      • merge

        @NonNull Style merge​(@NonNull Style that,
                             @NonNull Style.Merge.Strategy strategy,
                             @NonNull Set<Style.Merge> merges)
        Merges from another style into this style.
        Parameters:
        that - the other style
        strategy - the merge strategy
        merges - the parts to merge
        Returns:
        a style
        Since:
        4.0.0
      • isEmpty

        boolean isEmpty()
        Tests if this style is empty.
        Returns:
        true if this style is empty, false if this style is not empty
        Since:
        4.0.0