Class 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.
    • 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_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
    • Constructor Detail

      • ScreenTerminal

        public ScreenTerminal()
      • ScreenTerminal

        public ScreenTerminal​(int width,
                              int height)
    • 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_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 class java.lang.Object