Class RichParagraph.Builder

java.lang.Object
jfx.incubator.scene.control.richtext.model.RichParagraph.Builder
Enclosing class:
RichParagraph

public static class RichParagraph.Builder extends Object
Utility class for building immutable RichParagraphs.
Since:
24
  • Method Details

    • addWavyUnderline

      public RichParagraph.Builder addWavyUnderline(int start, int length, Color color)
      Adds a wavy underline (typically used as a spell checker indicator) with the given color.
      Parameters:
      start - the start offset
      length - the end offset
      color - the background color
      Returns:
      this Builder instance
    • addSegment

      public RichParagraph.Builder addSegment(String text)
      Adds a text segment with no styling (i.e. using default style). This convenience method is equivalent to calling addSegment(text, StyleAttributeMap.EMPTY);
      Parameters:
      text - the text to append, must not contain \n, cannot be null
      Returns:
      this Builder instance
    • addWithStyleNames

      public RichParagraph.Builder addWithStyleNames(String text, String... css)
      Appends a text segment styled with the stylesheet style names.
      Parameters:
      text - non-null text string
      css - array of style names, cannot be null
      Returns:
      this Builder instance
    • addWithInlineAndStyleNames

      public RichParagraph.Builder addWithInlineAndStyleNames(String text, String style, String... css)
      Appends a text segment styled with both the inline style and the stylesheet style names.
      Parameters:
      text - non-null text string
      style - direct style (such as -fx-fill:red;), or null
      css - array of style names
      Returns:
      this Builder instance
    • addWithInlineStyle

      public RichParagraph.Builder addWithInlineStyle(String text, String style)
      Appends a text segment styled with the stylesheet style names.
      Parameters:
      text - non-null text string
      style - the inline style (example "-fx-fill:red;"), or null
      Returns:
      this Builder instance
    • addSegment

      public RichParagraph.Builder addSegment(String text, StyleAttributeMap attrs)
      Adds a styled text segment.
      Parameters:
      text - the text to append, must not contain \n, cannot be null
      attrs - the styled attributes, cannot be null
      Returns:
      this Builder instance
    • addSegment

      public RichParagraph.Builder addSegment(String text, int start, int end, StyleAttributeMap attrs)
      Adds a styled text segment.
      Parameters:
      text - the source non-null string
      start - the start offset of the input string
      end - the end offset of the input string
      attrs - the styled attributes
      Returns:
      this Builder instance
    • addHighlight

      public RichParagraph.Builder addHighlight(int start, int length, Color color)
      Adds a color background highlight. Use translucent colors to enable multiple highlights in the same region of text.
      Parameters:
      start - the start offset
      length - the end offset
      color - the background color
      Returns:
      this Builder instance
    • addInlineNode

      public RichParagraph.Builder addInlineNode(Supplier<Node> generator)
      Adds an inline node.

      The supplied generator must not cache or keep reference to the created Node, but the created Node can keep a reference to the model or some property therein.

      For example, a bidirectional binding between an inline control and some property in the model would synchronize the model with all the views that use it.

      Parameters:
      generator - the generator that provides the actual Node
      Returns:
      this Builder instance
    • setParagraphAttributes

      public RichParagraph.Builder setParagraphAttributes(StyleAttributeMap a)
      Sets the paragraph attributes.
      Parameters:
      a - the paragraph attributes
      Returns:
      this Builder instance
    • build

      public RichParagraph build()
      Creates an instance of immutable RichParagraph from information in this Builder.
      Returns:
      the new paragraph instance