public final class CodeSegment
extends java.lang.Object
| Constructor and Description |
|---|
CodeSegment(Segment parent,
java.lang.String text) |
| Modifier and Type | Method and Description |
|---|---|
protected int |
computeWrapIndent(net.minecraft.client.gui.FontRenderer renderer) |
protected static boolean |
containsBreak(java.lang.String s) |
protected boolean |
ignoreLeadingWhitespace() |
protected static int |
indexOfFirstNonWhitespace(java.lang.String s) |
boolean |
isLast()
Utility method to check if the segment is the last on a line.
|
protected int |
lineHeight(net.minecraft.client.gui.FontRenderer renderer) |
protected int |
maxChars(java.lang.String s,
int maxWidth,
int maxLineWidth,
net.minecraft.client.gui.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.gui.FontRenderer renderer)
Get the X coordinate at which to render the next segment.
|
int |
nextY(int indent,
int maxWidth,
net.minecraft.client.gui.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 refiner)
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.gui.FontRenderer renderer,
int mouseX,
int mouseY)
Render the segment at the specified coordinates with the specified
properties.
|
Segment |
root()
The root segment, i.e.
|
void |
setNext(Segment segment) |
protected int |
stringWidth(java.lang.String s,
net.minecraft.client.gui.FontRenderer renderer) |
protected java.lang.String |
text() |
java.lang.String |
toString() |
public CodeSegment(Segment parent, java.lang.String text)
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.gui.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.protected boolean ignoreLeadingWhitespace()
protected int stringWidth(java.lang.String s,
net.minecraft.client.gui.FontRenderer renderer)
public java.lang.String toString()
public int nextX(int indent,
int maxWidth,
net.minecraft.client.gui.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.gui.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).
protected int lineHeight(net.minecraft.client.gui.FontRenderer renderer)
protected int maxChars(java.lang.String s,
int maxWidth,
int maxLineWidth,
net.minecraft.client.gui.FontRenderer renderer)
protected int computeWrapIndent(net.minecraft.client.gui.FontRenderer renderer)
protected static int indexOfFirstNonWhitespace(java.lang.String s)
protected static boolean containsBreak(java.lang.String s)
public Segment root()
Segmentpublic java.lang.Iterable<Segment> refine(java.util.regex.Pattern pattern, SegmentRefiner refiner)
Segmentpublic Segment next()
Segment