Module com.googlecode.lanterna
Package com.googlecode.lanterna.terminal
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.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.googlecode.lanterna.terminal.IOSafeTerminalAdapter
IOSafeTerminalAdapter.Extended
-
Field Summary
FieldsFields inherited from class com.googlecode.lanterna.terminal.IOSafeTerminalAdapter
exceptionHandler
-
Constructor Summary
ConstructorsConstructorDescriptionExtended
(ExtendedTerminal backend, IOSafeTerminalAdapter.ExceptionHandler exceptionHandler) -
Method Summary
Modifier and TypeMethodDescriptionvoid
De-iconifies the terminal, which likely means restoring it from minimized state with most window managersvoid
iconify()
Iconifies the terminal, this likely means minimizing the window with most window managersvoid
maximize()
Maximizes the terminal, so that it takes up all available spacevoid
popTitle()
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)void
Saves the current window title on a stack managed internally by the terminal.void
scrollLines
(int firstLine, int lastLine, int distance) Scroll a range of lines of this Scrollable according to given distance.void
setMouseCaptureMode
(MouseCaptureMode mouseCaptureMode) Enabled or disables capturing of mouse event.void
setTerminalSize
(int columns, int rows) Attempts to resize the terminal through dtterm extensions "CSI 8 ; rows ; columns ; t".void
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.void
Restores the terminal back to its previous size, after having been maximizedMethods inherited from class com.googlecode.lanterna.terminal.IOSafeTerminalAdapter
addResizeListener, bell, clearScreen, close, createDoNothingOnExceptionAdapter, createDoNothingOnExceptionAdapter, createRuntimeExceptionConvertingAdapter, createRuntimeExceptionConvertingAdapter, disableSGR, enableSGR, enquireTerminal, enterPrivateMode, exitPrivateMode, flush, getCursorPosition, getTerminalSize, newTextGraphics, pollInput, putCharacter, putString, readInput, removeResizeListener, resetColorAndSGR, setBackgroundColor, setCursorPosition, setCursorPosition, setCursorVisible, setForegroundColor
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.googlecode.lanterna.terminal.IOSafeTerminal
bell, clearScreen, close, disableSGR, enableSGR, enquireTerminal, enterPrivateMode, exitPrivateMode, flush, getCursorPosition, getTerminalSize, pollInput, putCharacter, putString, readInput, resetColorAndSGR, setBackgroundColor, setCursorPosition, setCursorPosition, setCursorVisible, setForegroundColor
Methods inherited from interface com.googlecode.lanterna.terminal.Terminal
addResizeListener, newTextGraphics, removeResizeListener
-
Field Details
-
backend
-
-
Constructor Details
-
Extended
-
-
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 interfaceExtendedTerminal
- Specified by:
setTerminalSize
in interfaceIOSafeExtendedTerminal
- Parameters:
columns
- New size (columns)rows
- New size (rows)
-
setTitle
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 interfaceExtendedTerminal
- Specified by:
setTitle
in interfaceIOSafeExtendedTerminal
- 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 interfaceExtendedTerminal
- Specified by:
pushTitle
in interfaceIOSafeExtendedTerminal
-
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 interfaceExtendedTerminal
- Specified by:
popTitle
in interfaceIOSafeExtendedTerminal
-
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 interfaceExtendedTerminal
- Specified by:
iconify
in interfaceIOSafeExtendedTerminal
-
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 interfaceExtendedTerminal
- Specified by:
deiconify
in interfaceIOSafeExtendedTerminal
-
maximize
public void maximize()Description copied from interface:ExtendedTerminal
Maximizes the terminal, so that it takes up all available space- Specified by:
maximize
in interfaceExtendedTerminal
- Specified by:
maximize
in interfaceIOSafeExtendedTerminal
-
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 interfaceExtendedTerminal
- Specified by:
unmaximize
in interfaceIOSafeExtendedTerminal
-
setMouseCaptureMode
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 interfaceExtendedTerminal
- Specified by:
setMouseCaptureMode
in interfaceIOSafeExtendedTerminal
- Parameters:
mouseCaptureMode
- Which mouse events to capture, pass innull
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 interfaceIOSafeExtendedTerminal
- Specified by:
scrollLines
in interfaceScrollable
- Parameters:
firstLine
- first line of the range to be scrolled (top line is 0)lastLine
- last (inclusive) line of the range to be scrolleddistance
- if > 0: move lines up, else if < 0: move lines down.
-