package com.jediterm.terminal; import com.jediterm.terminal.display.StyleState; import com.jediterm.terminal.emulator.mouse.MouseFormat; import com.jediterm.terminal.emulator.mouse.MouseMode; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.awt.*; import java.io.UnsupportedEncodingException; /** * Executes terminal commands interpreted by {@link com.jediterm.terminal.emulator.Emulator}, receives text * * @author traff */ public interface Terminal { Dimension resize(Dimension dimension, RequestOrigin origin); void beep(); void backspace(); void horizontalTab(); void carriageReturn(); void newLine(); void mapCharsetToGL(int num); void mapCharsetToGR(int num); void designateCharacterSet(int tableNumber, char ch); void setAnsiConformanceLevel(int level); void writeDoubleByte(char[] bytes) throws UnsupportedEncodingException; void writeCharacters(String string); int distanceToLineEnd(); void reverseIndex(); void index(); void nextLine(); void fillScreen(char c); void saveCursor(); void restoreCursor(); void reset(); void characterAttributes(TextStyle textStyle); void setScrollingRegion(int top, int bottom); void scrollUp(int count); void scrollDown(int count); void resetScrollRegions(); void cursorHorizontalAbsolute(int x); void linePositionAbsolute(int y); void cursorPosition(int x, int y); void cursorUp(int countY); void cursorDown(int dY); void cursorForward(int dX); void cursorBackward(int dX); void eraseInLine(int arg); void deleteCharacters(int count); int getTerminalHeight(); void eraseInDisplay(int arg); void setModeEnabled(TerminalMode mode, boolean enabled); void disconnected(); int getCursorX(); int getCursorY(); void singleShiftSelect(int num); void setWindowTitle(String name); void clearScreen(); void setCursorVisible(boolean visible); void useAlternateBuffer(boolean enabled); byte[] getCodeForKey(int key); void setApplicationArrowKeys(boolean enabled); void setApplicationKeypad(boolean enabled); void setAutoNewLine(boolean enabled); StyleState getStyleState(); void insertLines(int count); void deleteLines(int count); void setBlinkingCursor(boolean enabled); void eraseCharacters(int count); void insertBlankCharacters(int count); void clearTabStopAtCursor(); void clearAllTabStops(); void setTabStopAtCursor(); void writeUnwrappedString(String string); void setTerminalOutput(@Nullable TerminalOutputStream terminalOutput); void setMouseMode(@NotNull MouseMode mode); void setMouseFormat(MouseFormat mouseFormat); }