public class TextSegment
extends java.lang.Object
| Constructor and Description |
|---|
TextSegment(Segment parent,
java.lang.String text) |
| Modifier and Type | Method and Description |
|---|---|
protected java.util.Optional<java.lang.Integer> |
color() |
protected int |
computeWrapIndent(net.minecraft.client.font.FontRenderer renderer) |
protected java.lang.String |
format() |
protected boolean |
ignoreLeadingWhitespace() |
protected static int |
indexOfFirstNonWhitespace(java.lang.String s) |
protected int |
lineHeight(net.minecraft.client.font.FontRenderer renderer) |
protected int |
maxChars(java.lang.String s,
int maxWidth,
int maxLineWidth,
net.minecraft.client.font.FontRenderer renderer) |
Segment |
next()
Set after construction of document, used for formatting, specifically
to compute the height for last segment on a line (to force a new line).
|
int |
nextX(int indent,
int maxWidth,
net.minecraft.client.font.FontRenderer renderer)
Get the X coordinate at which to render the next segment.
|
int |
nextY(int indent,
int maxWidth,
net.minecraft.client.font.FontRenderer renderer)
Get the Y coordinate at which to render the next segment.
|
Segment |
parent()
Parent segment, i.e.
|
java.lang.Iterable<Segment> |
refine(java.util.regex.Pattern pattern,
SegmentRefiner factory)
Used during construction, checks a segment for inner segments.
|
java.util.Optional<InteractiveSegment> |
render(int x,
int y,
int indent,
int maxWidth,
net.minecraft.client.font.FontRenderer renderer,
int mouseX,
int mouseY)
Render the segment at the specified coordinates with the specified
properties.
|
Segment |
root()
The root segment, i.e.
|
protected java.util.Optional<java.lang.Float> |
scale() |
void |
setNext(Segment segment) |
protected int |
stringWidth(java.lang.String s,
net.minecraft.client.font.FontRenderer renderer) |
protected java.lang.String |
text() |
java.lang.String |
toString() |
public TextSegment(@Nullable
Segment parent,
java.lang.String text)
@Nullable public Segment parent()
Segmentprotected java.lang.String text()
public java.util.Optional<InteractiveSegment> render(int x, int y, int indent, int maxWidth, net.minecraft.client.font.FontRenderer renderer, int mouseX, int mouseY)
Segmentrender in interface Segmentx - the x position to render at.y - the y position to render at.indent - the current indentation.maxWidth - the maximum width of the document.renderer - the font renderer to use.mouseX - the x mouse position.mouseY - the y mouse position.public java.lang.Iterable<Segment> refine(java.util.regex.Pattern pattern, SegmentRefiner factory)
Segmentprotected int lineHeight(net.minecraft.client.font.FontRenderer renderer)
protected int stringWidth(java.lang.String s,
net.minecraft.client.font.FontRenderer renderer)
protected java.util.Optional<java.lang.Integer> color()
protected java.util.Optional<java.lang.Float> scale()
protected java.lang.String format()
public int nextX(int indent,
int maxWidth,
net.minecraft.client.font.FontRenderer renderer)
SegmentFor flowing/inline segments this will be to the right of the last line this segment renders, for block segments it will be at the start of the next line below this segment.
The coordinates in this context are relative to (0,0).
public int nextY(int indent,
int maxWidth,
net.minecraft.client.font.FontRenderer renderer)
SegmentFor flowing/inline segments this will be the same level as the last line this segment renders, unless it's the last segment on its line. For block segments and last-on-line segments this will be the next line after.
The coordinates in this context are relative to (0,0).
public java.lang.String toString()
toString in class java.lang.Objectprotected boolean ignoreLeadingWhitespace()
protected int maxChars(java.lang.String s,
int maxWidth,
int maxLineWidth,
net.minecraft.client.font.FontRenderer renderer)
protected int computeWrapIndent(net.minecraft.client.font.FontRenderer renderer)
protected static int indexOfFirstNonWhitespace(java.lang.String s)
public Segment root()
Segmentpublic Segment next()
Segment