Class DefaultTextGUIGraphics

java.lang.Object
com.googlecode.lanterna.gui2.DefaultTextGUIGraphics
All Implemented Interfaces:
StyleSet<TextGraphics>, TextGraphics, ThemedTextGraphics, TextGUIGraphics

public class DefaultTextGUIGraphics extends Object implements TextGUIGraphics
Created by Martin on 2017-08-11.
  • Field Details

  • Constructor Details

  • Method Details

    • getTextGUI

      public TextGUI getTextGUI()
      Description copied from interface: TextGUIGraphics
      Returns the TextGUI this TextGUIGraphics belongs to
      Specified by:
      getTextGUI in interface TextGUIGraphics
      Returns:
      TextGUI this TextGUIGraphics belongs to
    • newTextGraphics

      public DefaultTextGUIGraphics newTextGraphics(TerminalPosition topLeftCorner, TerminalSize size) throws IllegalArgumentException
      Description copied from interface: TextGraphics
      Creates a new TextGraphics of the same type as this one, using the same underlying subsystem. Using this method, you need to specify a section of the current TextGraphics valid area that this new TextGraphic shall be restricted to. If you call 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.
      Specified by:
      newTextGraphics in interface TextGraphics
      Specified by:
      newTextGraphics in interface TextGUIGraphics
      Parameters:
      topLeftCorner - Position of this TextGraphics's writable area that is to become the top-left corner (0x0) of the new TextGraphics
      size - 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)
      Returns:
      A new TextGraphics with the same underlying subsystem, that can write to only the specified area
      Throws:
      IllegalArgumentException - If the size the of new TextGraphics exceeds the dimensions of this TextGraphics in any way.
    • applyThemeStyle

      public DefaultTextGUIGraphics applyThemeStyle(ThemeStyle themeStyle)
      Description copied from interface: ThemedTextGraphics
      Takes a ThemeStyle as applies it to this TextGraphics. This will effectively set the foreground color, the background color and all the SGRs.
      Specified by:
      applyThemeStyle in interface TextGUIGraphics
      Specified by:
      applyThemeStyle in interface ThemedTextGraphics
      Parameters:
      themeStyle - ThemeStyle to apply
      Returns:
      Itself
    • getSize

      public TerminalSize getSize()
      Description copied from interface: TextGraphics
      Returns the size of the area that this text graphic can write to. Any attempts of placing characters outside of this area will be silently ignored.
      Specified by:
      getSize in interface TextGraphics
      Returns:
      Size of the writable area that this TextGraphics can write too
    • getBackgroundColor

      public TextColor getBackgroundColor()
      Description copied from interface: StyleSet
      Returns the current background color
      Specified by:
      getBackgroundColor in interface StyleSet<TextGraphics>
      Returns:
      Current background color
    • setBackgroundColor

      public DefaultTextGUIGraphics setBackgroundColor(TextColor backgroundColor)
      Description copied from interface: StyleSet
      Updates the current background color
      Specified by:
      setBackgroundColor in interface StyleSet<TextGraphics>
      Specified by:
      setBackgroundColor in interface TextGUIGraphics
      Parameters:
      backgroundColor - New background color
      Returns:
      Itself
    • getForegroundColor

      public TextColor getForegroundColor()
      Description copied from interface: StyleSet
      Returns the current foreground color
      Specified by:
      getForegroundColor in interface StyleSet<TextGraphics>
      Returns:
      Current foreground color
    • setForegroundColor

      public DefaultTextGUIGraphics setForegroundColor(TextColor foregroundColor)
      Description copied from interface: StyleSet
      Updates the current foreground color
      Specified by:
      setForegroundColor in interface StyleSet<TextGraphics>
      Specified by:
      setForegroundColor in interface TextGUIGraphics
      Parameters:
      foregroundColor - New foreground color
      Returns:
      Itself
    • enableModifiers

      public DefaultTextGUIGraphics enableModifiers(SGR... modifiers)
      Description copied from interface: StyleSet
      Adds zero or more modifiers to the set of currently active modifiers
      Specified by:
      enableModifiers in interface StyleSet<TextGraphics>
      Specified by:
      enableModifiers in interface TextGUIGraphics
      Parameters:
      modifiers - Modifiers to add to the set of currently active modifiers
      Returns:
      Itself
    • disableModifiers

      public DefaultTextGUIGraphics disableModifiers(SGR... modifiers)
      Description copied from interface: StyleSet
      Removes zero or more modifiers from the set of currently active modifiers
      Specified by:
      disableModifiers in interface StyleSet<TextGraphics>
      Specified by:
      disableModifiers in interface TextGUIGraphics
      Parameters:
      modifiers - Modifiers to remove from the set of currently active modifiers
      Returns:
      Itself
    • setModifiers

      public DefaultTextGUIGraphics setModifiers(EnumSet<SGR> modifiers)
      Description copied from interface: StyleSet
      Sets the active modifiers to exactly the set passed in to this method. Any previous state of which modifiers are enabled doesn't matter.
      Specified by:
      setModifiers in interface StyleSet<TextGraphics>
      Specified by:
      setModifiers in interface TextGUIGraphics
      Parameters:
      modifiers - Modifiers to set as active
      Returns:
      Itself
    • clearModifiers

      public DefaultTextGUIGraphics clearModifiers()
      Description copied from interface: StyleSet
      Removes all active modifiers
      Specified by:
      clearModifiers in interface StyleSet<TextGraphics>
      Specified by:
      clearModifiers in interface TextGUIGraphics
      Returns:
      Itself
    • getActiveModifiers

      public EnumSet<SGR> getActiveModifiers()
      Description copied from interface: StyleSet
      Returns all the SGR codes that are currently active
      Specified by:
      getActiveModifiers in interface StyleSet<TextGraphics>
      Returns:
      Currently active SGR modifiers
    • getTabBehaviour

      public TabBehaviour getTabBehaviour()
      Description copied from interface: TextGraphics
      Retrieves the current tab behaviour, which is what the TextGraphics will use when expanding \t characters to spaces.
      Specified by:
      getTabBehaviour in interface TextGraphics
      Returns:
      Current behaviour in use for expanding tab to spaces
    • setTabBehaviour

      public DefaultTextGUIGraphics setTabBehaviour(TabBehaviour tabBehaviour)
      Description copied from interface: TextGraphics
      Sets the behaviour to use when expanding tab characters (\t) to spaces
      Specified by:
      setTabBehaviour in interface TextGraphics
      Specified by:
      setTabBehaviour in interface TextGUIGraphics
      Parameters:
      tabBehaviour - Behaviour to use when expanding tabs to spaces
      Returns:
      Itself
    • fill

      public DefaultTextGUIGraphics fill(char c)
      Description copied from interface: TextGraphics
      Fills the entire writable area with a single character, using current foreground color, background color and modifiers.
      Specified by:
      fill in interface TextGraphics
      Specified by:
      fill in interface TextGUIGraphics
      Parameters:
      c - Character to fill the writable area with
      Returns:
      Itself
    • fillRectangle

      public DefaultTextGUIGraphics fillRectangle(TerminalPosition topLeft, TerminalSize size, char character)
      Description copied from interface: TextGraphics
      Takes a rectangle and fills it with a particular character (and the currently active colors and modifiers). The topLeft coordinate is inclusive.

      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.

      Specified by:
      fillRectangle in interface TextGraphics
      Specified by:
      fillRectangle in interface TextGUIGraphics
      Parameters:
      topLeft - Coordinates of the top-left position of the rectangle
      size - Size (in columns and rows) of the area to draw
      character - What character to use when filling the rectangle
      Returns:
      Itself
    • fillRectangle

      public DefaultTextGUIGraphics fillRectangle(TerminalPosition topLeft, TerminalSize size, TextCharacter character)
      Description copied from interface: TextGraphics
      Takes a rectangle and fills it using a particular TextCharacter, ignoring the current colors and modifiers of this TextGraphics. The topLeft coordinate is inclusive.

      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.

      Specified by:
      fillRectangle in interface TextGraphics
      Specified by:
      fillRectangle in interface TextGUIGraphics
      Parameters:
      topLeft - Coordinates of the top-left position of the rectangle
      size - Size (in columns and rows) of the area to draw
      character - What character data to use when filling the rectangle
      Returns:
      Itself
    • drawRectangle

      public DefaultTextGUIGraphics drawRectangle(TerminalPosition topLeft, TerminalSize size, char character)
      Description copied from interface: TextGraphics
      Draws the outline of a rectangle with a particular character (and the currently active colors and modifiers). The topLeft coordinate is inclusive.

      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.

      Specified by:
      drawRectangle in interface TextGraphics
      Specified by:
      drawRectangle in interface TextGUIGraphics
      Parameters:
      topLeft - Coordinates of the top-left position of the rectangle
      size - Size (in columns and rows) of the area to draw
      character - What character to use when drawing the outline of the rectangle
      Returns:
      Itself
    • drawRectangle

      public DefaultTextGUIGraphics drawRectangle(TerminalPosition topLeft, TerminalSize size, TextCharacter character)
      Description copied from interface: TextGraphics
      Draws the outline of a rectangle with a particular TextCharacter, ignoring the current colors and modifiers of this 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.

      Specified by:
      drawRectangle in interface TextGraphics
      Specified by:
      drawRectangle in interface TextGUIGraphics
      Parameters:
      topLeft - Coordinates of the top-left position of the rectangle
      size - Size (in columns and rows) of the area to draw
      character - What character data to use when drawing the outline of the rectangle
      Returns:
      Itself
    • fillTriangle

      public DefaultTextGUIGraphics fillTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, char character)
      Description copied from interface: TextGraphics
      Draws a filled triangle, using a supplied character. The triangle will begin at p1, go through p2 and then p3 and then back to p1. The current foreground color, background color and modifiers will be applied.
      Specified by:
      fillTriangle in interface TextGraphics
      Specified by:
      fillTriangle in interface TextGUIGraphics
      Parameters:
      p1 - First point on the screen of the triangle
      p2 - Second point on the screen of the triangle
      p3 - Third point on the screen of the triangle
      character - What character to use when drawing the triangle
      Returns:
      Itself
    • fillTriangle

      Description copied from interface: TextGraphics
      Draws a filled triangle, using a supplied character. The triangle will begin at p1, go through p2 and then p3 and then back to p1. The current foreground color, background color and modifiers of this TextGraphics will not be used and will not be modified by this call.
      Specified by:
      fillTriangle in interface TextGraphics
      Specified by:
      fillTriangle in interface TextGUIGraphics
      Parameters:
      p1 - First point on the screen of the triangle
      p2 - Second point on the screen of the triangle
      p3 - Third point on the screen of the triangle
      character - What character data to use when drawing the triangle
      Returns:
      Itself
    • drawTriangle

      public DefaultTextGUIGraphics drawTriangle(TerminalPosition p1, TerminalPosition p2, TerminalPosition p3, char character)
      Description copied from interface: TextGraphics
      Draws the outline of a triangle on the screen, using a supplied character. The triangle will begin at p1, go through p2 and then p3 and then back to p1. The current foreground color, background color and modifiers will be applied.
      Specified by:
      drawTriangle in interface TextGraphics
      Specified by:
      drawTriangle in interface TextGUIGraphics
      Parameters:
      p1 - First point on the screen of the triangle
      p2 - Second point on the screen of the triangle
      p3 - Third point on the screen of the triangle
      character - What character to use when drawing the lines of the triangle
      Returns:
      Itself
    • drawTriangle

      Description copied from interface: TextGraphics
      Draws the outline of a triangle on the screen, using a supplied character. The triangle will begin at p1, go through p2 and then p3 and then back to p1. The current foreground color, background color and modifiers of this TextGraphics will not be used and will not be modified by this call.
      Specified by:
      drawTriangle in interface TextGraphics
      Specified by:
      drawTriangle in interface TextGUIGraphics
      Parameters:
      p1 - First point on the screen of the triangle
      p2 - Second point on the screen of the triangle
      p3 - Third point on the screen of the triangle
      character - What character data to use when drawing the lines of the triangle
      Returns:
      Itself
    • drawLine

      public DefaultTextGUIGraphics drawLine(TerminalPosition fromPoint, TerminalPosition toPoint, char character)
      Description copied from interface: TextGraphics
      Draws a line from a specified position to a specified position, using a supplied character. The current foreground color, background color and modifiers will be applied.
      Specified by:
      drawLine in interface TextGraphics
      Specified by:
      drawLine in interface TextGUIGraphics
      Parameters:
      fromPoint - From where to draw the line
      toPoint - Where to draw the line
      character - Character to use for the line
      Returns:
      Itself
    • drawLine

      public DefaultTextGUIGraphics drawLine(TerminalPosition fromPoint, TerminalPosition toPoint, TextCharacter character)
      Description copied from interface: TextGraphics
      Draws a line from a specified position to a specified position, using a supplied TextCharacter. The current foreground color, background color and modifiers of this TextGraphics will not be used and will not be modified by this call.
      Specified by:
      drawLine in interface TextGraphics
      Specified by:
      drawLine in interface TextGUIGraphics
      Parameters:
      fromPoint - From where to draw the line
      toPoint - Where to draw the line
      character - Character data to use for the line, including character, colors and modifiers
      Returns:
      Itself
    • drawLine

      public DefaultTextGUIGraphics drawLine(int fromX, int fromY, int toX, int toY, char character)
      Description copied from interface: TextGraphics
      Draws a line from a specified position to a specified position, using a supplied character. The current foreground color, background color and modifiers will be applied.
      Specified by:
      drawLine in interface TextGraphics
      Specified by:
      drawLine in interface TextGUIGraphics
      Parameters:
      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 line
      Returns:
      Itself
    • drawLine

      public DefaultTextGUIGraphics drawLine(int fromX, int fromY, int toX, int toY, TextCharacter character)
      Description copied from interface: TextGraphics
      Draws a line from a specified position to a specified position, using a supplied character. The current foreground color, background color and modifiers of this TextGraphics will not be used and will not be modified by this call.
      Specified by:
      drawLine in interface TextGraphics
      Specified by:
      drawLine in interface TextGUIGraphics
      Parameters:
      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 modifiers
      Returns:
      Itself
    • drawImage

      public DefaultTextGUIGraphics drawImage(TerminalPosition topLeft, TextImage image)
      Description copied from interface: TextGraphics
      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. This is equivalent of calling drawImage(topLeft, image, TerminalPosition.TOP_LEFT_CORNER, image.getSize().
      Specified by:
      drawImage in interface TextGraphics
      Specified by:
      drawImage in interface TextGUIGraphics
      Parameters:
      topLeft - Position of the top-left corner of the image on the target
      image - Image to draw
      Returns:
      Itself
    • drawImage

      public DefaultTextGUIGraphics drawImage(TerminalPosition topLeft, TextImage image, TerminalPosition sourceImageTopLeft, TerminalSize sourceImageSize)
      Description copied from interface: TextGraphics
      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. This overload will only draw a portion of the image to the target, as specified by the two last parameters.
      Specified by:
      drawImage in interface TextGraphics
      Specified by:
      drawImage in interface TextGUIGraphics
      Parameters:
      topLeft - Position of the top-left corner of the image on the target
      image - Image to draw
      sourceImageTopLeft - Position of the top-left corner in the source image to draw at the topLeft position on the target
      sourceImageSize - How much of the source image to draw on the target, counted from the sourceImageTopLeft position
      Returns:
      Itself
    • setCharacter

      public DefaultTextGUIGraphics setCharacter(TerminalPosition position, char character)
      Description copied from interface: TextGraphics
      Sets the character at the current position to the specified value
      Specified by:
      setCharacter in interface TextGraphics
      Specified by:
      setCharacter in interface TextGUIGraphics
      Parameters:
      position - position of the location to set the character
      character - Character to set at the current position
      Returns:
      Itself
    • setCharacter

      public DefaultTextGUIGraphics setCharacter(TerminalPosition position, TextCharacter character)
      Description copied from interface: TextGraphics
      Sets the character at the current position to the specified value, without using the current colors and modifiers of this TextGraphics.
      Specified by:
      setCharacter in interface TextGraphics
      Specified by:
      setCharacter in interface TextGUIGraphics
      Parameters:
      position - position of the location to set the character
      character - Character data to set at the current position
      Returns:
      Itself
    • setCharacter

      public DefaultTextGUIGraphics setCharacter(int column, int row, char character)
      Description copied from interface: TextGraphics
      Sets the character at the current position to the specified value
      Specified by:
      setCharacter in interface TextGraphics
      Specified by:
      setCharacter in interface TextGUIGraphics
      Parameters:
      column - column of the location to set the character
      row - row of the location to set the character
      character - Character to set at the current position
      Returns:
      Itself
    • setCharacter

      public DefaultTextGUIGraphics setCharacter(int column, int row, TextCharacter character)
      Description copied from interface: TextGraphics
      Sets the character at the current position to the specified value, without using the current colors and modifiers of this TextGraphics.
      Specified by:
      setCharacter in interface TextGraphics
      Specified by:
      setCharacter in interface TextGUIGraphics
      Parameters:
      column - column of the location to set the character
      row - row of the location to set the character
      character - Character data to set at the current position
      Returns:
      Itself
    • putString

      public DefaultTextGUIGraphics putString(int column, int row, String string)
      Description copied from interface: TextGraphics
      Puts a string on the screen at the specified position with the current colors and modifiers. If the string contains newlines (\r and/or \n), the method will stop at the character before that; you have to manage multi-line strings yourself! The current foreground color, background color and modifiers will be applied.
      Specified by:
      putString in interface TextGraphics
      Specified by:
      putString in interface TextGUIGraphics
      Parameters:
      column - What column to put the string at
      row - What row to put the string at
      string - String to put on the screen
      Returns:
      Itself
    • putString

      public DefaultTextGUIGraphics putString(TerminalPosition position, String string)
      Description copied from interface: TextGraphics
      Shortcut to calling:
        putString(position.getColumn(), position.getRow(), string);
       
      Specified by:
      putString in interface TextGraphics
      Specified by:
      putString in interface TextGUIGraphics
      Parameters:
      position - Position to put the string at
      string - String to put on the screen
      Returns:
      Itself
    • putString

      public DefaultTextGUIGraphics putString(int column, int row, String string, SGR extraModifier, SGR... optionalExtraModifiers)
      Description copied from interface: TextGraphics
      Puts a string on the screen at the specified position with the current colors and modifiers. If the string contains newlines (\r and/or \n), the method will stop at the character before that; you have to manage multi-line strings yourself! If you supplied any extra modifiers, they will be applied when writing the string as well but not recorded into the state of the TextGraphics object.
      Specified by:
      putString in interface TextGraphics
      Specified by:
      putString in interface TextGUIGraphics
      Parameters:
      column - What column to put the string at
      row - What row to put the string at
      string - String to put on the screen
      extraModifier - Modifier to apply to the string
      optionalExtraModifiers - Optional extra modifiers to apply to the string
      Returns:
      Itself
    • putString

      public DefaultTextGUIGraphics putString(TerminalPosition position, String string, SGR extraModifier, SGR... optionalExtraModifiers)
      Description copied from interface: TextGraphics
      Shortcut to calling:
        putString(position.getColumn(), position.getRow(), string, modifiers, optionalExtraModifiers);
       
      Specified by:
      putString in interface TextGraphics
      Specified by:
      putString in interface TextGUIGraphics
      Parameters:
      position - Position to put the string at
      string - String to put on the screen
      extraModifier - Modifier to apply to the string
      optionalExtraModifiers - Optional extra modifiers to apply to the string
      Returns:
      Itself
    • putString

      public DefaultTextGUIGraphics putString(int column, int row, String string, Collection<SGR> extraModifiers)
      Description copied from interface: TextGraphics
      Puts a string on the screen at the specified position with the current colors and modifiers. If the string contains newlines (\r and/or \n), the method will stop at the character before that; you have to manage multi-line strings yourself! If you supplied any extra modifiers, they will be applied when writing the string as well but not recorded into the state of the TextGraphics object.
      Specified by:
      putString in interface TextGraphics
      Specified by:
      putString in interface TextGUIGraphics
      Parameters:
      column - What column to put the string at
      row - What row to put the string at
      string - String to put on the screen
      extraModifiers - Modifier to apply to the string
      Returns:
      Itself
    • putCSIStyledString

      public DefaultTextGUIGraphics putCSIStyledString(int column, int row, String string)
      Description copied from interface: TextGraphics
      Puts a string on the screen at the specified position with the current colors and modifiers. If the string contains newlines (\r and/or \n), the method will stop at the character before that; you have to manage multi-line strings yourself!

      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:

      • Set foreground color
      • Set background color
      • Set/Clear bold style
      • Set/Clear underline style
      • Set/Clear blink style
      • Set/Clear reverse style
      • Clear all styles and colors (notice that this will return the state to what it was at the start of the method)
      When the call is complete, the TextGraphics object will return to the color/style state it was in at the start of the call.
      Specified by:
      putCSIStyledString in interface TextGraphics
      Specified by:
      putCSIStyledString in interface TextGUIGraphics
      Parameters:
      column - What column to put the string at
      row - What row to put the string at
      string - String to put on the screen
      Returns:
      Itself
    • putCSIStyledString

      public DefaultTextGUIGraphics putCSIStyledString(TerminalPosition position, String string)
      Description copied from interface: TextGraphics
      Puts a string on the screen at the specified position with the current colors and modifiers. If the string contains newlines (\r and/or \n), the method will stop at the character before that; you have to manage multi-line strings yourself!

      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:

      • Set foreground color
      • Set background color
      • Set/Clear bold style
      • Set/Clear underline style
      • Set/Clear blink style
      • Set/Clear reverse style
      • Clear all styles and colors (notice that this will return the state to what it was at the start of the method)
      When the call is complete, the TextGraphics object will return to the color/style state it was in at the start of the call.
      Specified by:
      putCSIStyledString in interface TextGraphics
      Specified by:
      putCSIStyledString in interface TextGUIGraphics
      Parameters:
      position - Position to put the string at
      string - String to put on the screen
      Returns:
      Itself
    • getCharacter

      public TextCharacter getCharacter(int column, int row)
      Description copied from interface: TextGraphics
      Returns the character at the specific position in the terminal. May return null if the TextGraphics implementation doesn't support it or doesn't know what the character is.
      Specified by:
      getCharacter in interface TextGraphics
      Parameters:
      column - Column to return the character for
      row - Row to return the character for
      Returns:
      The text character at the specified position or null if not available
    • getCharacter

      public TextCharacter getCharacter(TerminalPosition position)
      Description copied from interface: TextGraphics
      Returns the character at the specific position in the terminal. May return null if the TextGraphics implementation doesn't support it or doesn't know what the character is.
      Specified by:
      getCharacter in interface TextGraphics
      Parameters:
      position - Position to return the character for
      Returns:
      The text character at the specified position or null if not available
    • setStyleFrom

      public DefaultTextGUIGraphics setStyleFrom(StyleSet<?> source)
      Description copied from interface: StyleSet
      copy colors and set of SGR codes
      Specified by:
      setStyleFrom in interface StyleSet<TextGraphics>
      Specified by:
      setStyleFrom in interface TextGUIGraphics
      Parameters:
      source - Modifiers to set as active
      Returns:
      Itself