Class NativeWinSysTerminal

All Implemented Interfaces:
Closeable, Flushable, AutoCloseable, TerminalExt, Terminal

public class NativeWinSysTerminal extends AbstractWindowsTerminal<Long>
  • Method Details

    • createTerminal

      public static NativeWinSysTerminal createTerminal(TerminalProvider provider, SystemStream systemStream, String name, String type, boolean ansiPassThrough, Charset encoding, boolean nativeSignals, Terminal.SignalHandler signalHandler, boolean paused) throws IOException
      Throws:
      IOException
    • getConsole

      public static long getConsole(SystemStream systemStream)
    • isWindowsSystemStream

      public static boolean isWindowsSystemStream(SystemStream stream)
    • getConsoleMode

      protected int getConsoleMode(Long console)
      Specified by:
      getConsoleMode in class AbstractWindowsTerminal<Long>
    • setConsoleMode

      protected void setConsoleMode(Long console, int mode)
      Specified by:
      setConsoleMode in class AbstractWindowsTerminal<Long>
    • getSize

      public Size getSize()
      Description copied from interface: Terminal
      Retrieve the size of the visible window
      Returns:
      the visible terminal size
      See Also:
    • getBufferSize

      public Size getBufferSize()
      Description copied from interface: Terminal
      Retrieve the size of the window buffer. Some terminals can be configured to have a buffer size larger than the visible window size and provide scroll bars. In such cases, this method should attempt to return the size of the whole buffer. The getBufferSize() method can be used to avoid wrapping when using the terminal in a line editing mode, while the Terminal.getSize() method should be used when using full screen mode.
      Returns:
      the terminal buffer size
      See Also:
    • processConsoleInput

      protected boolean processConsoleInput() throws IOException
      Description copied from class: AbstractWindowsTerminal
      Read a single input event from the input buffer and process it.
      Specified by:
      processConsoleInput in class AbstractWindowsTerminal<Long>
      Returns:
      true if new input was generated from the event
      Throws:
      IOException - if anything wrong happens
    • getCursorPosition

      public Cursor getCursorPosition(IntConsumer discarded)
      Description copied from interface: Terminal
      Query the terminal to report the cursor position. As the response is read from the input stream, some characters may be read before the cursor position is actually read. Those characters can be given back using org.jline.keymap.BindingReader#runMacro(String)
      Specified by:
      getCursorPosition in interface Terminal
      Overrides:
      getCursorPosition in class AbstractTerminal
      Parameters:
      discarded - a consumer receiving discarded characters
      Returns:
      null if cursor position reporting is not supported or a valid cursor position
    • disableScrolling

      public void disableScrolling()