Package org.jline.builtins
Class ScreenTerminal
- java.lang.Object
-
- org.jline.builtins.ScreenTerminal
-
public class ScreenTerminal extends java.lang.Object
Screen terminal implementation. This class is copied from Apache Karaf WebConsole Gogo plugin and slightly adapted to support alternate screen / resizing / 256 colors.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
ScreenTerminal.State
-
Field Summary
Fields Modifier and Type Field Description private long
attr
private int
cx
private int
cy
private java.util.concurrent.atomic.AtomicBoolean
dirty
private boolean
eol
private int
height
private java.util.List<long[]>
history
private long[][]
screen
private long[][]
screen2
private int
scroll_area_y0
private int
scroll_area_y1
private java.util.List<java.lang.Integer>
tab_stops
private int
vt100_alternate_saved_cx
private int
vt100_alternate_saved_cy
private int[]
vt100_charset_g
private int
vt100_charset_g_sel
private int[]
vt100_charset_graph
private boolean
vt100_charset_is_graphical
private boolean
vt100_charset_is_single_shift
private boolean
vt100_keyfilter_escape
private int
vt100_lastchar
private boolean
vt100_mode_alt_screen
private boolean
vt100_mode_autowrap
private boolean
vt100_mode_backspace
private boolean
vt100_mode_column_switch
private boolean
vt100_mode_cursor
private boolean
vt100_mode_cursorkey
private boolean
vt100_mode_insert
private boolean
vt100_mode_inverse
private boolean
vt100_mode_lfnewline
private boolean
vt100_mode_origin
private java.lang.String
vt100_out
private int
vt100_parse_func
private int
vt100_parse_len
private java.lang.String
vt100_parse_param
private ScreenTerminal.State
vt100_parse_state
private java.util.Map<java.lang.String,java.lang.Object>
vt100_saved
private int
vt100_saved_cx
private int
vt100_saved_cy
private java.util.Map<java.lang.String,java.lang.Object>
vt100_saved2
private int
width
-
Constructor Summary
Constructors Constructor Description ScreenTerminal()
ScreenTerminal(int width, int height)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
clear(int y0, int x0, int y1, int x1)
private long
col24(int col)
private void
csi_CBT(java.lang.String p)
private void
csi_CHA(java.lang.String p)
private void
csi_CHT(java.lang.String p)
private void
csi_CNL(java.lang.String p)
private void
csi_CPL(java.lang.String p)
private void
csi_CTC(java.lang.String p)
private void
csi_CUB(java.lang.String p)
private void
csi_CUD(java.lang.String p)
private void
csi_CUF(java.lang.String p)
private void
csi_CUP(java.lang.String p)
private void
csi_CUU(java.lang.String p)
private void
csi_DA(java.lang.String p)
private void
csi_DCH(java.lang.String p)
private void
csi_DECREQTPARM(java.lang.String p)
private void
csi_DECSTBM(java.lang.String p)
private void
csi_DECSTR(java.lang.String p)
private void
csi_DL(java.lang.String p)
private void
csi_DSR(java.lang.String p)
private void
csi_ECH(java.lang.String p)
private void
csi_ED(java.lang.String p)
private void
csi_EL(java.lang.String p)
private void
csi_HPA(java.lang.String p)
private void
csi_HPR(java.lang.String p)
private void
csi_HVP(java.lang.String p)
private void
csi_ICH(java.lang.String p)
private void
csi_IL(java.lang.String p)
private void
csi_RCP(java.lang.String p)
private void
csi_REP(java.lang.String p)
private void
csi_RM(java.lang.String p)
private void
csi_SCP(java.lang.String p)
private void
csi_SD(java.lang.String p)
private void
csi_SGR(java.lang.String p)
private void
csi_SM(java.lang.String p)
private void
csi_SU(java.lang.String p)
private void
csi_TBC(java.lang.String p)
private void
csi_VPA(java.lang.String p)
private void
csi_VPR(java.lang.String p)
private void
ctrl_BS()
private void
ctrl_CR()
private void
ctrl_HT()
private void
ctrl_HT(int n)
private void
ctrl_LF()
private void
ctrl_SI()
private void
ctrl_SO()
private void
cursor_down()
private void
cursor_down(int n)
private void
cursor_left()
private void
cursor_left(int n)
private int[]
cursor_line_width(int next_char)
private void
cursor_right()
private void
cursor_right(int n)
private void
cursor_set(int y, int x)
private void
cursor_set_x(int x)
private void
cursor_set_y(int y)
private void
cursor_up()
private void
cursor_up(int n)
private void
dumb_echo(int c)
private boolean
dumb_write(int c)
void
dump(long[] fullscreen, int ftop, int fleft, int fheight, int fwidth, int[] cursor)
java.lang.String
dump(long timeout, boolean forceDump)
private void
esc_APC()
private void
esc_CSI()
private void
esc_DCS()
private void
esc_DECALN()
private void
esc_DECID()
private void
esc_DECRC()
private void
esc_DECSC()
private void
esc_G0_0()
private void
esc_G0_1()
private void
esc_G0_2()
private void
esc_G0_3()
private void
esc_G0_4()
private void
esc_G1_0()
private void
esc_G1_1()
private void
esc_G1_2()
private void
esc_G1_3()
private void
esc_G1_4()
private void
esc_HTS()
private void
esc_IND()
private void
esc_NEL()
private void
esc_OSC()
private void
esc_PM()
private void
esc_RI()
private void
esc_RIS()
private void
esc_SOS()
private void
esc_SS2()
private void
esc_SS3()
private void
esc_ST()
private void
fill(int y0, int x0, int y1, int x1, long c)
boolean
isDirty()
private long[]
peek(int y0, int x0, int y1, int x1)
java.lang.String
pipe(java.lang.String d)
private void
poke(int y, int x, long[] s)
java.lang.String
read()
private void
reset_hard()
private void
reset_screen()
private void
reset_soft()
private void
scroll_area_down(int y0, int y1)
private void
scroll_area_down(int y0, int y1, int n)
private void
scroll_area_set(int y0, int y1)
private void
scroll_area_up(int y0, int y1)
private void
scroll_area_up(int y0, int y1, int n)
private void
scroll_line_left(int y, int x)
private void
scroll_line_left(int y, int x, int n)
private void
scroll_line_right(int y, int x)
private void
scroll_line_right(int y, int x, int n)
protected void
setDirty()
boolean
setSize(int w, int h)
java.lang.String
toString()
private int
utf8_charwidth(int c)
private void
vt100_charset_select(int g, int charset)
private void
vt100_charset_set(int g)
private void
vt100_charset_update()
private int[]
vt100_parse_params(java.lang.String p, int[] defaults)
private java.lang.String[]
vt100_parse_params(java.lang.String p, java.lang.String[] defaults)
private void
vt100_parse_process()
private void
vt100_parse_reset()
private void
vt100_parse_reset(ScreenTerminal.State state)
private void
vt100_setmode(java.lang.String p, boolean state)
private boolean
vt100_write(int c)
void
waitDirty()
boolean
write(java.lang.CharSequence d)
-
-
-
Field Detail
-
width
private int width
-
height
private int height
-
attr
private long attr
-
eol
private boolean eol
-
cx
private int cx
-
cy
private int cy
-
screen
private long[][] screen
-
screen2
private long[][] screen2
-
vt100_parse_state
private ScreenTerminal.State vt100_parse_state
-
vt100_parse_len
private int vt100_parse_len
-
vt100_lastchar
private int vt100_lastchar
-
vt100_parse_func
private int vt100_parse_func
-
vt100_parse_param
private java.lang.String vt100_parse_param
-
vt100_mode_autowrap
private boolean vt100_mode_autowrap
-
vt100_mode_insert
private boolean vt100_mode_insert
-
vt100_charset_is_single_shift
private boolean vt100_charset_is_single_shift
-
vt100_charset_is_graphical
private boolean vt100_charset_is_graphical
-
vt100_mode_lfnewline
private boolean vt100_mode_lfnewline
-
vt100_mode_origin
private boolean vt100_mode_origin
-
vt100_mode_inverse
private boolean vt100_mode_inverse
-
vt100_mode_cursorkey
private boolean vt100_mode_cursorkey
-
vt100_mode_cursor
private boolean vt100_mode_cursor
-
vt100_mode_alt_screen
private boolean vt100_mode_alt_screen
-
vt100_mode_backspace
private boolean vt100_mode_backspace
-
vt100_mode_column_switch
private boolean vt100_mode_column_switch
-
vt100_keyfilter_escape
private boolean vt100_keyfilter_escape
-
vt100_charset_graph
private int[] vt100_charset_graph
-
vt100_charset_g_sel
private int vt100_charset_g_sel
-
vt100_charset_g
private int[] vt100_charset_g
-
vt100_saved
private java.util.Map<java.lang.String,java.lang.Object> vt100_saved
-
vt100_saved2
private java.util.Map<java.lang.String,java.lang.Object> vt100_saved2
-
vt100_alternate_saved_cx
private int vt100_alternate_saved_cx
-
vt100_alternate_saved_cy
private int vt100_alternate_saved_cy
-
vt100_saved_cx
private int vt100_saved_cx
-
vt100_saved_cy
private int vt100_saved_cy
-
vt100_out
private java.lang.String vt100_out
-
scroll_area_y0
private int scroll_area_y0
-
scroll_area_y1
private int scroll_area_y1
-
tab_stops
private java.util.List<java.lang.Integer> tab_stops
-
history
private final java.util.List<long[]> history
-
dirty
private java.util.concurrent.atomic.AtomicBoolean dirty
-
-
Method Detail
-
reset_hard
private void reset_hard()
-
reset_soft
private void reset_soft()
-
reset_screen
private void reset_screen()
-
utf8_charwidth
private int utf8_charwidth(int c)
-
peek
private long[] peek(int y0, int x0, int y1, int x1)
-
poke
private void poke(int y, int x, long[] s)
-
fill
private void fill(int y0, int x0, int y1, int x1, long c)
-
clear
private void clear(int y0, int x0, int y1, int x1)
-
scroll_area_up
private void scroll_area_up(int y0, int y1)
-
scroll_area_up
private void scroll_area_up(int y0, int y1, int n)
-
scroll_area_down
private void scroll_area_down(int y0, int y1)
-
scroll_area_down
private void scroll_area_down(int y0, int y1, int n)
-
scroll_area_set
private void scroll_area_set(int y0, int y1)
-
scroll_line_right
private void scroll_line_right(int y, int x)
-
scroll_line_right
private void scroll_line_right(int y, int x, int n)
-
scroll_line_left
private void scroll_line_left(int y, int x)
-
scroll_line_left
private void scroll_line_left(int y, int x, int n)
-
cursor_line_width
private int[] cursor_line_width(int next_char)
-
cursor_up
private void cursor_up()
-
cursor_up
private void cursor_up(int n)
-
cursor_down
private void cursor_down()
-
cursor_down
private void cursor_down(int n)
-
cursor_left
private void cursor_left()
-
cursor_left
private void cursor_left(int n)
-
cursor_right
private void cursor_right()
-
cursor_right
private void cursor_right(int n)
-
cursor_set_x
private void cursor_set_x(int x)
-
cursor_set_y
private void cursor_set_y(int y)
-
cursor_set
private void cursor_set(int y, int x)
-
ctrl_BS
private void ctrl_BS()
-
ctrl_HT
private void ctrl_HT()
-
ctrl_HT
private void ctrl_HT(int n)
-
ctrl_LF
private void ctrl_LF()
-
ctrl_CR
private void ctrl_CR()
-
dumb_write
private boolean dumb_write(int c)
-
dumb_echo
private void dumb_echo(int c)
-
vt100_charset_update
private void vt100_charset_update()
-
vt100_charset_set
private void vt100_charset_set(int g)
-
vt100_charset_select
private void vt100_charset_select(int g, int charset)
-
vt100_setmode
private void vt100_setmode(java.lang.String p, boolean state)
-
ctrl_SO
private void ctrl_SO()
-
ctrl_SI
private void ctrl_SI()
-
esc_CSI
private void esc_CSI()
-
esc_DECALN
private void esc_DECALN()
-
esc_G0_0
private void esc_G0_0()
-
esc_G0_1
private void esc_G0_1()
-
esc_G0_2
private void esc_G0_2()
-
esc_G0_3
private void esc_G0_3()
-
esc_G0_4
private void esc_G0_4()
-
esc_G1_0
private void esc_G1_0()
-
esc_G1_1
private void esc_G1_1()
-
esc_G1_2
private void esc_G1_2()
-
esc_G1_3
private void esc_G1_3()
-
esc_G1_4
private void esc_G1_4()
-
esc_DECSC
private void esc_DECSC()
-
esc_DECRC
private void esc_DECRC()
-
esc_IND
private void esc_IND()
-
esc_NEL
private void esc_NEL()
-
esc_HTS
private void esc_HTS()
-
esc_RI
private void esc_RI()
-
esc_SS2
private void esc_SS2()
-
esc_SS3
private void esc_SS3()
-
esc_DCS
private void esc_DCS()
-
esc_SOS
private void esc_SOS()
-
esc_DECID
private void esc_DECID()
-
esc_ST
private void esc_ST()
-
esc_OSC
private void esc_OSC()
-
esc_PM
private void esc_PM()
-
esc_APC
private void esc_APC()
-
esc_RIS
private void esc_RIS()
-
csi_ICH
private void csi_ICH(java.lang.String p)
-
csi_CUU
private void csi_CUU(java.lang.String p)
-
csi_CUD
private void csi_CUD(java.lang.String p)
-
csi_CUF
private void csi_CUF(java.lang.String p)
-
csi_CUB
private void csi_CUB(java.lang.String p)
-
csi_CNL
private void csi_CNL(java.lang.String p)
-
csi_CPL
private void csi_CPL(java.lang.String p)
-
csi_CHA
private void csi_CHA(java.lang.String p)
-
csi_CUP
private void csi_CUP(java.lang.String p)
-
csi_CHT
private void csi_CHT(java.lang.String p)
-
csi_ED
private void csi_ED(java.lang.String p)
-
csi_EL
private void csi_EL(java.lang.String p)
-
csi_IL
private void csi_IL(java.lang.String p)
-
csi_DL
private void csi_DL(java.lang.String p)
-
csi_DCH
private void csi_DCH(java.lang.String p)
-
csi_SU
private void csi_SU(java.lang.String p)
-
csi_SD
private void csi_SD(java.lang.String p)
-
csi_CTC
private void csi_CTC(java.lang.String p)
-
csi_ECH
private void csi_ECH(java.lang.String p)
-
csi_CBT
private void csi_CBT(java.lang.String p)
-
csi_HPA
private void csi_HPA(java.lang.String p)
-
csi_HPR
private void csi_HPR(java.lang.String p)
-
csi_REP
private void csi_REP(java.lang.String p)
-
csi_DA
private void csi_DA(java.lang.String p)
-
csi_VPA
private void csi_VPA(java.lang.String p)
-
csi_VPR
private void csi_VPR(java.lang.String p)
-
csi_HVP
private void csi_HVP(java.lang.String p)
-
csi_TBC
private void csi_TBC(java.lang.String p)
-
csi_SM
private void csi_SM(java.lang.String p)
-
csi_RM
private void csi_RM(java.lang.String p)
-
csi_SGR
private void csi_SGR(java.lang.String p)
-
col24
private long col24(int col)
-
csi_DSR
private void csi_DSR(java.lang.String p)
-
csi_DECSTBM
private void csi_DECSTBM(java.lang.String p)
-
csi_SCP
private void csi_SCP(java.lang.String p)
-
csi_RCP
private void csi_RCP(java.lang.String p)
-
csi_DECREQTPARM
private void csi_DECREQTPARM(java.lang.String p)
-
csi_DECSTR
private void csi_DECSTR(java.lang.String p)
-
vt100_parse_params
private java.lang.String[] vt100_parse_params(java.lang.String p, java.lang.String[] defaults)
-
vt100_parse_params
private int[] vt100_parse_params(java.lang.String p, int[] defaults)
-
vt100_parse_reset
private void vt100_parse_reset()
-
vt100_parse_reset
private void vt100_parse_reset(ScreenTerminal.State state)
-
vt100_parse_process
private void vt100_parse_process()
-
vt100_write
private boolean vt100_write(int c)
-
isDirty
public boolean isDirty()
-
waitDirty
public void waitDirty() throws java.lang.InterruptedException
- Throws:
java.lang.InterruptedException
-
setDirty
protected void setDirty()
-
setSize
public boolean setSize(int w, int h)
-
read
public java.lang.String read()
-
pipe
public java.lang.String pipe(java.lang.String d)
-
write
public boolean write(java.lang.CharSequence d)
-
dump
public void dump(long[] fullscreen, int ftop, int fleft, int fheight, int fwidth, int[] cursor)
-
dump
public java.lang.String dump(long timeout, boolean forceDump) throws java.lang.InterruptedException
- Throws:
java.lang.InterruptedException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-