StyleSet<TextGraphics>
, TextGraphics
DoublePrintingTextGraphics
public abstract class AbstractTextGraphics extends Object implements TextGraphics
StyleSet.Set
Modifier and Type | Field | Description |
---|---|---|
protected EnumSet<SGR> |
activeModifiers |
|
protected TextColor |
backgroundColor |
|
protected TextColor |
foregroundColor |
|
protected TabBehaviour |
tabBehaviour |
Modifier | Constructor | Description |
---|---|---|
protected |
AbstractTextGraphics() |
Modifier and Type | Method | Description |
---|---|---|
TextGraphics |
clearModifiers() |
Removes all active modifiers
|
TextGraphics |
disableModifiers(SGR... modifiers) |
Removes zero or more modifiers from the set of currently active modifiers
|
TextGraphics |
drawImage(TerminalPosition topLeft,
TextImage image) |
Takes a TextImage and draws it on the surface this TextGraphics is targeting, given the coordinates on the target
that is specifying where the top-left corner of the image should be drawn.
|
TextGraphics |
drawImage(TerminalPosition topLeft,
TextImage image,
TerminalPosition sourceImageTopLeft,
TerminalSize sourceImageSize) |
Takes a TextImage and draws it on the surface this TextGraphics is targeting, given the coordinates on the target
that is specifying where the top-left corner of the image should be drawn.
|
TextGraphics |
drawLine(int fromX,
int fromY,
int toX,
int toY,
char character) |
Draws a line from a specified position to a specified position, using a supplied character.
|
TextGraphics |
drawLine(int fromX,
int fromY,
int toX,
int toY,
TextCharacter character) |
Draws a line from a specified position to a specified position, using a supplied character.
|
TextGraphics |
drawLine(TerminalPosition fromPosition,
TerminalPosition toPoint,
char character) |
Draws a line from a specified position to a specified position, using a supplied character.
|
TextGraphics |
drawLine(TerminalPosition fromPoint,
TerminalPosition toPoint,
TextCharacter character) |
Draws a line from a specified position to a specified position, using a supplied TextCharacter.
|
TextGraphics |
drawRectangle(TerminalPosition topLeft,
TerminalSize size,
char character) |
Draws the outline of a rectangle with a particular character (and the currently active colors and
modifiers).
|
TextGraphics |
drawRectangle(TerminalPosition topLeft,
TerminalSize size,
TextCharacter character) |
Draws the outline of a rectangle with a particular TextCharacter, ignoring the current colors and modifiers of
this TextGraphics.
|
TextGraphics |
drawTriangle(TerminalPosition p1,
TerminalPosition p2,
TerminalPosition p3,
char character) |
Draws the outline of a triangle on the screen, using a supplied character.
|
TextGraphics |
drawTriangle(TerminalPosition p1,
TerminalPosition p2,
TerminalPosition p3,
TextCharacter character) |
Draws the outline of a triangle on the screen, using a supplied character.
|
TextGraphics |
enableModifiers(SGR... modifiers) |
Adds zero or more modifiers to the set of currently active modifiers
|
TextGraphics |
fill(char c) |
Fills the entire writable area with a single character, using current foreground color, background color and modifiers.
|
TextGraphics |
fillRectangle(TerminalPosition topLeft,
TerminalSize size,
char character) |
Takes a rectangle and fills it with a particular character (and the currently active colors and
modifiers).
|
TextGraphics |
fillRectangle(TerminalPosition topLeft,
TerminalSize size,
TextCharacter character) |
Takes a rectangle and fills it using a particular TextCharacter, ignoring the current colors and modifiers of
this TextGraphics.
|
TextGraphics |
fillTriangle(TerminalPosition p1,
TerminalPosition p2,
TerminalPosition p3,
char character) |
Draws a filled triangle, using a supplied character.
|
TextGraphics |
fillTriangle(TerminalPosition p1,
TerminalPosition p2,
TerminalPosition p3,
TextCharacter character) |
Draws a filled triangle, using a supplied character.
|
EnumSet<SGR> |
getActiveModifiers() |
Returns all the SGR codes that are currently active
|
TextColor |
getBackgroundColor() |
Returns the current background color
|
TextCharacter |
getCharacter(TerminalPosition position) |
Returns the character at the specific position in the terminal.
|
TextColor |
getForegroundColor() |
Returns the current foreground color
|
TabBehaviour |
getTabBehaviour() |
Retrieves the current tab behaviour, which is what the TextGraphics will use when expanding \t characters to
spaces.
|
TextGraphics |
newTextGraphics(TerminalPosition topLeftCorner,
TerminalSize size) |
Creates a new TextGraphics of the same type as this one, using the same underlying subsystem.
|
TextGraphics |
putCSIStyledString(int column,
int row,
String string) |
Puts a string on the screen at the specified position with the current colors and modifiers.
|
TextGraphics |
putCSIStyledString(TerminalPosition position,
String string) |
Puts a string on the screen at the specified position with the current colors and modifiers.
|
TextGraphics |
putString(int column,
int row,
String string) |
Puts a string on the screen at the specified position with the current colors and modifiers.
|
TextGraphics |
putString(int column,
int row,
String string,
SGR extraModifier,
SGR... optionalExtraModifiers) |
Puts a string on the screen at the specified position with the current colors and modifiers.
|
TextGraphics |
putString(int column,
int row,
String string,
Collection<SGR> extraModifiers) |
Puts a string on the screen at the specified position with the current colors and modifiers.
|
TextGraphics |
putString(TerminalPosition position,
String string) |
Shortcut to calling:
|
TextGraphics |
putString(TerminalPosition position,
String string,
SGR extraModifier,
SGR... optionalExtraModifiers) |
Shortcut to calling:
|
TextGraphics |
setBackgroundColor(TextColor backgroundColor) |
Updates the current background color
|
TextGraphics |
setCharacter(int column,
int row,
char character) |
Sets the character at the current position to the specified value
|
TextGraphics |
setCharacter(TerminalPosition position,
char character) |
Sets the character at the current position to the specified value
|
TextGraphics |
setCharacter(TerminalPosition position,
TextCharacter textCharacter) |
Sets the character at the current position to the specified value, without using the current colors and modifiers
of this TextGraphics.
|
TextGraphics |
setForegroundColor(TextColor foregroundColor) |
Updates the current foreground color
|
TextGraphics |
setModifiers(EnumSet<SGR> modifiers) |
Sets the active modifiers to exactly the set passed in to this method.
|
TextGraphics |
setStyleFrom(StyleSet<?> source) |
copy colors and set of SGR codes
|
TextGraphics |
setTabBehaviour(TabBehaviour tabBehaviour) |
Sets the behaviour to use when expanding tab characters (\t) to spaces
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getCharacter, getSize, setCharacter
protected TextColor foregroundColor
protected TextColor backgroundColor
protected TabBehaviour tabBehaviour
public TextColor getBackgroundColor()
StyleSet
getBackgroundColor
in interface StyleSet<TextGraphics>
public TextGraphics setBackgroundColor(TextColor backgroundColor)
StyleSet
setBackgroundColor
in interface StyleSet<TextGraphics>
backgroundColor
- New background colorpublic TextColor getForegroundColor()
StyleSet
getForegroundColor
in interface StyleSet<TextGraphics>
public TextGraphics setForegroundColor(TextColor foregroundColor)
StyleSet
setForegroundColor
in interface StyleSet<TextGraphics>
foregroundColor
- New foreground colorpublic TextGraphics enableModifiers(SGR... modifiers)
StyleSet
enableModifiers
in interface StyleSet<TextGraphics>
modifiers
- Modifiers to add to the set of currently active modifierspublic TextGraphics disableModifiers(SGR... modifiers)
StyleSet
disableModifiers
in interface StyleSet<TextGraphics>
modifiers
- Modifiers to remove from the set of currently active modifierspublic TextGraphics setModifiers(EnumSet<SGR> modifiers)
StyleSet
setModifiers
in interface StyleSet<TextGraphics>
modifiers
- Modifiers to set as activepublic TextGraphics clearModifiers()
StyleSet
clearModifiers
in interface StyleSet<TextGraphics>
public EnumSet<SGR> getActiveModifiers()
StyleSet
getActiveModifiers
in interface StyleSet<TextGraphics>
public TabBehaviour getTabBehaviour()
TextGraphics
getTabBehaviour
in interface TextGraphics
public TextGraphics setTabBehaviour(TabBehaviour tabBehaviour)
TextGraphics
setTabBehaviour
in interface TextGraphics
tabBehaviour
- Behaviour to use when expanding tabs to spacespublic TextGraphics fill(char c)
TextGraphics
fill
in interface TextGraphics
c
- Character to fill the writable area withpublic TextGraphics setCharacter(int column, int row, char character)
TextGraphics
setCharacter
in interface TextGraphics
column
- column of the location to set the characterrow
- row of the location to set the charactercharacter
- Character to set at the current positionpublic TextGraphics setCharacter(TerminalPosition position, TextCharacter textCharacter)
TextGraphics
setCharacter
in interface TextGraphics
position
- position of the location to set the charactertextCharacter
- Character data to set at the current positionpublic TextGraphics setCharacter(TerminalPosition position, char character)
TextGraphics
setCharacter
in interface TextGraphics
position
- position of the location to set the charactercharacter
- Character to set at the current positionpublic TextGraphics drawLine(TerminalPosition fromPosition, TerminalPosition toPoint, char character)
TextGraphics
drawLine
in interface TextGraphics
fromPosition
- From where to draw the linetoPoint
- Where to draw the linecharacter
- Character to use for the linepublic TextGraphics drawLine(TerminalPosition fromPoint, TerminalPosition toPoint, TextCharacter character)
TextGraphics
drawLine
in interface TextGraphics
fromPoint
- From where to draw the linetoPoint
- Where to draw the linecharacter
- Character data to use for the line, including character, colors and modifierspublic TextGraphics drawLine(int fromX, int fromY, int toX, int toY, char character)
TextGraphics
drawLine
in interface TextGraphics
fromX
- Column of the starting position to draw the line from (inclusive)fromY
- Row of the starting position to draw the line from (inclusive)toX
- Column of the end position to draw the line to (inclusive)toY
- Row of the end position to draw the line to (inclusive)character
- Character to use for the linepublic TextGraphics drawLine(int fromX, int fromY, int toX, int toY, TextCharacter character)
TextGraphics
drawLine
in interface TextGraphics
fromX
- Column of the starting position to draw the line from (inclusive)fromY
- Row of the starting position to draw the line from (inclusive)toX
- Column of the end position to draw the line to (inclusive)toY
- Row of the end position to draw the line to (inclusive)character
- Character data to use for the line, including character, colors and modifierspublic TextGraphics drawTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, char character)
TextGraphics
drawTriangle
in interface TextGraphics
p1
- First point on the screen of the trianglep2
- Second point on the screen of the trianglep3
- Third point on the screen of the trianglecharacter
- What character to use when drawing the lines of the trianglepublic TextGraphics drawTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, TextCharacter character)
TextGraphics
drawTriangle
in interface TextGraphics
p1
- First point on the screen of the trianglep2
- Second point on the screen of the trianglep3
- Third point on the screen of the trianglecharacter
- What character data to use when drawing the lines of the trianglepublic TextGraphics fillTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, char character)
TextGraphics
fillTriangle
in interface TextGraphics
p1
- First point on the screen of the trianglep2
- Second point on the screen of the trianglep3
- Third point on the screen of the trianglecharacter
- What character to use when drawing the trianglepublic TextGraphics fillTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, TextCharacter character)
TextGraphics
fillTriangle
in interface TextGraphics
p1
- First point on the screen of the trianglep2
- Second point on the screen of the trianglep3
- Third point on the screen of the trianglecharacter
- What character data to use when drawing the trianglepublic TextGraphics drawRectangle(TerminalPosition topLeft, TerminalSize size, char character)
TextGraphics
For example, calling drawRectangle with size being the size of the terminal and top-left value being the terminal's top-left (0x0) corner will draw a border around the terminal.
The current foreground color, background color and modifiers will be applied.
drawRectangle
in interface TextGraphics
topLeft
- Coordinates of the top-left position of the rectanglesize
- Size (in columns and rows) of the area to drawcharacter
- What character to use when drawing the outline of the rectanglepublic TextGraphics drawRectangle(TerminalPosition topLeft, TerminalSize size, TextCharacter character)
TextGraphics
For example, calling drawRectangle with size being the size of the terminal and top-left value being the terminal's top-left (0x0) corner will draw a border around the terminal.
The current foreground color, background color and modifiers will not be modified by this call.
drawRectangle
in interface TextGraphics
topLeft
- Coordinates of the top-left position of the rectanglesize
- Size (in columns and rows) of the area to drawcharacter
- What character data to use when drawing the outline of the rectanglepublic TextGraphics fillRectangle(TerminalPosition topLeft, TerminalSize size, char character)
TextGraphics
For example, calling fillRectangle with size being the size of the terminal and top-left value being the terminal's top-left (0x0) corner will fill the entire terminal with this character.
The current foreground color, background color and modifiers will be applied.
fillRectangle
in interface TextGraphics
topLeft
- Coordinates of the top-left position of the rectanglesize
- Size (in columns and rows) of the area to drawcharacter
- What character to use when filling the rectanglepublic TextGraphics fillRectangle(TerminalPosition topLeft, TerminalSize size, TextCharacter character)
TextGraphics
For example, calling fillRectangle with size being the size of the terminal and top-left value being the terminal's top-left (0x0) corner will fill the entire terminal with this character.
The current foreground color, background color and modifiers will not be modified by this call.
fillRectangle
in interface TextGraphics
topLeft
- Coordinates of the top-left position of the rectanglesize
- Size (in columns and rows) of the area to drawcharacter
- What character data to use when filling the rectanglepublic TextGraphics drawImage(TerminalPosition topLeft, TextImage image)
TextGraphics
drawImage(topLeft, image, TerminalPosition.TOP_LEFT_CORNER, image.getSize()
.drawImage
in interface TextGraphics
topLeft
- Position of the top-left corner of the image on the targetimage
- Image to drawpublic TextGraphics drawImage(TerminalPosition topLeft, TextImage image, TerminalPosition sourceImageTopLeft, TerminalSize sourceImageSize)
TextGraphics
drawImage
in interface TextGraphics
topLeft
- Position of the top-left corner of the image on the targetimage
- Image to drawsourceImageTopLeft
- Position of the top-left corner in the source image to draw at the topLeft position on
the targetsourceImageSize
- How much of the source image to draw on the target, counted from the sourceImageTopLeft
positionpublic TextGraphics putString(int column, int row, String string)
TextGraphics
putString
in interface TextGraphics
column
- What column to put the string atrow
- What row to put the string atstring
- String to put on the screenpublic TextGraphics putString(TerminalPosition position, String string)
TextGraphics
putString(position.getColumn(), position.getRow(), string);
putString
in interface TextGraphics
position
- Position to put the string atstring
- String to put on the screenpublic TextGraphics putString(int column, int row, String string, SGR extraModifier, SGR... optionalExtraModifiers)
TextGraphics
putString
in interface TextGraphics
column
- What column to put the string atrow
- What row to put the string atstring
- String to put on the screenextraModifier
- Modifier to apply to the stringoptionalExtraModifiers
- Optional extra modifiers to apply to the stringpublic TextGraphics putString(int column, int row, String string, Collection<SGR> extraModifiers)
TextGraphics
putString
in interface TextGraphics
column
- What column to put the string atrow
- What row to put the string atstring
- String to put on the screenextraModifiers
- Modifier to apply to the stringpublic TextGraphics putString(TerminalPosition position, String string, SGR extraModifier, SGR... optionalExtraModifiers)
TextGraphics
putString(position.getColumn(), position.getRow(), string, modifiers, optionalExtraModifiers);
putString
in interface TextGraphics
position
- Position to put the string atstring
- String to put on the screenextraModifier
- Modifier to apply to the stringoptionalExtraModifiers
- Optional extra modifiers to apply to the stringpublic TextGraphics putCSIStyledString(int column, int row, String string)
TextGraphics
This method has an additional functionality to the regular TextGraphics.putString(int, int, String)
;
if you embed ANSI CSI-style control sequences (like modifying text color or controlling SGR status), they will be
interpreted as the string is printed and mutates the TextGraphics
object. In this version of Lanterna,
the following sequences are supported:
TextGraphics
object will return to the color/style state it was in at the
start of the call.putCSIStyledString
in interface TextGraphics
column
- What column to put the string atrow
- What row to put the string atstring
- String to put on the screenpublic TextGraphics putCSIStyledString(TerminalPosition position, String string)
TextGraphics
This method has an additional functionality to the regular TextGraphics.putString(int, int, String)
;
if you embed ANSI CSI-style control sequences (like modifying text color or controlling SGR status), they will be
interpreted as the string is printed and mutates the TextGraphics
object. In this version of Lanterna,
the following sequences are supported:
TextGraphics
object will return to the color/style state it was in at the
start of the call.putCSIStyledString
in interface TextGraphics
position
- Position to put the string atstring
- String to put on the screenpublic TextCharacter getCharacter(TerminalPosition position)
TextGraphics
null
if the TextGraphics
implementation doesn't support it or doesn't know what the character is.getCharacter
in interface TextGraphics
position
- Position to return the character fornull
if not availablepublic TextGraphics newTextGraphics(TerminalPosition topLeftCorner, TerminalSize size) throws IllegalArgumentException
TextGraphics
newTextGraphics(TerminalPosition.TOP_LEFT_CORNER, textGraphics.getSize())
then the resulting object will be identical to this one, but having a separated state for colors, position and
modifiers.newTextGraphics
in interface TextGraphics
topLeftCorner
- Position of this TextGraphics's writable area that is to become the top-left corner (0x0) of
the new TextGraphicssize
- How large area, counted from the topLeftCorner, the new TextGraphics can write to. This cannot be
larger than the current TextGraphics's writable area (adjusted by topLeftCorner)IllegalArgumentException
- If the size the of new TextGraphics exceeds the dimensions of this
TextGraphics in any way.public TextGraphics setStyleFrom(StyleSet<?> source)
StyleSet
setStyleFrom
in interface StyleSet<TextGraphics>
source
- Modifiers to set as activeCopyright © 2020. All rights reserved.