Class IOSafeTerminalAdapter.Extended

java.lang.Object
com.googlecode.lanterna.terminal.IOSafeTerminalAdapter
com.googlecode.lanterna.terminal.IOSafeTerminalAdapter.Extended
All Implemented Interfaces:
Scrollable, InputProvider, ExtendedTerminal, IOSafeExtendedTerminal, IOSafeTerminal, Terminal, Closeable, AutoCloseable
Enclosing class:
IOSafeTerminalAdapter

public static class IOSafeTerminalAdapter.Extended extends IOSafeTerminalAdapter implements IOSafeExtendedTerminal
This class exposes methods for converting an extended terminal into an IOSafeExtendedTerminal.
  • Field Details

  • Constructor Details

  • Method Details

    • setTerminalSize

      public void setTerminalSize(int columns, int rows)
      Description copied from interface: ExtendedTerminal
      Attempts to resize the terminal through dtterm extensions "CSI 8 ; rows ; columns ; t". This isn't widely supported, which is why the method is not exposed through the common Terminal interface.
      Specified by:
      setTerminalSize in interface ExtendedTerminal
      Specified by:
      setTerminalSize in interface IOSafeExtendedTerminal
      Parameters:
      columns - New size (columns)
      rows - New size (rows)
    • setTitle

      public void setTitle(String title)
      Description copied from interface: ExtendedTerminal
      This methods sets the title of the terminal, which is normally only visible if you are running the application in a terminal emulator in a graphical environment.
      Specified by:
      setTitle in interface ExtendedTerminal
      Specified by:
      setTitle in interface IOSafeExtendedTerminal
      Parameters:
      title - Title to set on the terminal
    • pushTitle

      public void pushTitle()
      Description copied from interface: ExtendedTerminal
      Saves the current window title on a stack managed internally by the terminal.
      Specified by:
      pushTitle in interface ExtendedTerminal
      Specified by:
      pushTitle in interface IOSafeExtendedTerminal
    • popTitle

      public void popTitle()
      Description copied from interface: ExtendedTerminal
      Replaces the terminal title with the top element from the title stack managed by the terminal (the element is removed from the stack as expected)
      Specified by:
      popTitle in interface ExtendedTerminal
      Specified by:
      popTitle in interface IOSafeExtendedTerminal
    • iconify

      public void iconify()
      Description copied from interface: ExtendedTerminal
      Iconifies the terminal, this likely means minimizing the window with most window managers
      Specified by:
      iconify in interface ExtendedTerminal
      Specified by:
      iconify in interface IOSafeExtendedTerminal
    • deiconify

      public void deiconify()
      Description copied from interface: ExtendedTerminal
      De-iconifies the terminal, which likely means restoring it from minimized state with most window managers
      Specified by:
      deiconify in interface ExtendedTerminal
      Specified by:
      deiconify in interface IOSafeExtendedTerminal
    • maximize

      public void maximize()
      Description copied from interface: ExtendedTerminal
      Maximizes the terminal, so that it takes up all available space
      Specified by:
      maximize in interface ExtendedTerminal
      Specified by:
      maximize in interface IOSafeExtendedTerminal
    • unmaximize

      public void unmaximize()
      Description copied from interface: ExtendedTerminal
      Restores the terminal back to its previous size, after having been maximized
      Specified by:
      unmaximize in interface ExtendedTerminal
      Specified by:
      unmaximize in interface IOSafeExtendedTerminal
    • setMouseCaptureMode

      public void setMouseCaptureMode(MouseCaptureMode mouseCaptureMode)
      Description copied from interface: ExtendedTerminal
      Enabled or disables capturing of mouse event. This is not recommended to use as most users are not familiar with the fact that terminal emulators allow capturing mouse input. You can decide which events you want to capture but be careful since different terminal emulators will support these modes differently. Mouse capture mode will be automatically disabled when the application exits through a shutdown hook.
      Specified by:
      setMouseCaptureMode in interface ExtendedTerminal
      Specified by:
      setMouseCaptureMode in interface IOSafeExtendedTerminal
      Parameters:
      mouseCaptureMode - Which mouse events to capture, pass in null to disable mouse input capturing
    • scrollLines

      public void scrollLines(int firstLine, int lastLine, int distance)
      Description copied from interface: Scrollable
      Scroll a range of lines of this Scrollable according to given distance. If scroll-range is empty (firstLine > lastLine || distance == 0) then this method does nothing. Lines that are scrolled away from are cleared. If absolute value of distance is equal or greater than number of lines in range, then all lines within the range will be cleared.
      Specified by:
      scrollLines in interface IOSafeExtendedTerminal
      Specified by:
      scrollLines in interface Scrollable
      Parameters:
      firstLine - first line of the range to be scrolled (top line is 0)
      lastLine - last (inclusive) line of the range to be scrolled
      distance - if > 0: move lines up, else if < 0: move lines down.