28#include <FL/Fl_Scrollbar.H>
29#include <FL/Fl_Rect.H>
371 COLORMASK = (FG_XTERM | BG_XTERM)
390 SCROLLBAR_OFF = 0x00,
391 SCROLLBAR_AUTO = 0x01,
406 int left_, right_, top_, bottom_;
408 Margin(
void) { left_ = right_ = top_ = bottom_ = 3; }
409 int left(
void)
const {
return left_; }
410 int right(
void)
const {
return right_; }
411 int top(
void)
const {
return top_; }
412 int bottom(
void)
const {
return bottom_; }
413 void left(
int val) { left_ = val; }
414 void right(
int val) { right_ = val; }
415 void top(
int val) { top_ = val; }
416 void bottom(
int val) { bottom_ = val; }
439 uchar attrib(
void)
const {
return attrib_; }
440 uchar charflags(
void)
const {
return charflags_; }
448 Fl_Color defaultfgcolor(
void)
const {
return defaultfgcolor_; }
449 Fl_Color defaultbgcolor(
void)
const {
return defaultbgcolor_; }
450 Fl_Font fontface(
void)
const {
return fontface_; }
451 Fl_Fontsize fontsize(
void)
const {
return fontsize_; }
452 int fontheight(
void)
const {
return fontheight_; }
453 int fontdescent(
void)
const {
return fontdescent_; }
454 int charwidth(
void)
const {
return charwidth_; }
456 void attrib(
uchar val) { attrib_ = val; }
457 void charflags(
uchar val) { charflags_ = val; }
458 void set_charflag(
uchar val) { charflags_ |= val; }
459 void clr_charflag(
uchar val) { charflags_ &= ~val; }
461 void fgcolor(
int r,
int g,
int b) { fgcolor_ = (r<<24) | (g<<16) | (b<<8); clr_charflag(FG_XTERM); }
462 void bgcolor(
int r,
int g,
int b) { bgcolor_ = (r<<24) | (g<<16) | (b<<8); clr_charflag(BG_XTERM); }
463 void fgcolor(
Fl_Color val) { fgcolor_ = val; clr_charflag(FG_XTERM); }
464 void bgcolor(
Fl_Color val) { bgcolor_ = val; clr_charflag(BG_XTERM); }
466 void fgcolor_xterm(
Fl_Color val) { fgcolor_ = val; set_charflag(FG_XTERM); }
467 void bgcolor_xterm(
Fl_Color val) { bgcolor_ = val; set_charflag(BG_XTERM); }
468 void fgcolor_xterm(
uchar val);
469 void bgcolor_xterm(
uchar val);
471 void defaultfgcolor(
Fl_Color val) { defaultfgcolor_ = val; }
472 void defaultbgcolor(
Fl_Color val) { defaultbgcolor_ = val; }
473 void fontface(
Fl_Font val) { fontface_ = val; update(); }
474 void fontsize(
Fl_Fontsize val) { fontsize_ = val; update(); }
476 void update_fake(
void);
478 void sgr_reset(
void) {
480 if (charflags() & FG_XTERM) fgcolor_xterm(defaultfgcolor_);
481 else fgcolor(defaultfgcolor_);
482 if (charflags() & BG_XTERM) bgcolor_xterm(defaultbgcolor_);
483 else bgcolor(defaultbgcolor_);
485 int onoff(
bool flag,
Attrib a) {
return (flag ? (attrib_ | a) : (attrib_ & ~a)); }
491 void sgr_blink(
bool val) { (void)val; }
512 fgcolor_ = 0xfffff000;
513 bgcolor_ = 0x00d00000;
515 int col(
void)
const {
return col_; }
516 int row(
void)
const {
return row_; }
517 int h(
void)
const {
return h_; }
518 Fl_Color fgcolor(
void)
const {
return fgcolor_; }
519 Fl_Color bgcolor(
void)
const {
return bgcolor_; }
520 void col(
int val) { col_ = val >= 0 ? val : 0; }
521 void row(
int val) { row_ = val >= 0 ? val : 0; }
522 void h(
int val) { h_ = val; }
523 void fgcolor(
Fl_Color val) { fgcolor_ = val; }
524 void bgcolor(
Fl_Color val) { bgcolor_ = val; }
525 int left(
void) { col_ = (col_>0) ? (col_-1) : 0;
return col_; }
526 int right(
void) {
return ++col_; }
527 int up(
void) { row_ = (row_>0) ? (row_-1) : 0;
return row_; }
528 int down(
void) {
return ++row_; }
529 bool is_rowcol(
int drow,
int dcol)
const;
530 void scroll(
int nrows);
531 void home(
void) { row_ = 0; col_ = 0; }
540 static const int max_utf8_ = 4;
541 char text_[max_utf8_];
548 void text_utf8_(
const char *text,
int len);
556 inline int max_utf8()
const {
return max_utf8_; }
557 void text_utf8(
const char *text,
int len,
const CharStyle& style);
558 void text_ascii(
char c,
const CharStyle& style);
559 void fl_font_set(
const CharStyle& style)
const;
564 const char* text_utf8(
void)
const {
return text_; }
566 uchar attrib(
void)
const {
return attrib_; }
567 uchar charflags(
void)
const {
return charflags_; }
571 int length(
void)
const {
return int(len_); }
572 double pwidth(
void)
const;
573 int pwidth_int(
void)
const;
575 void clear(
const CharStyle& style) { text_utf8(
" ", 1, style); charflags_ = 0; attrib_ = 0; }
576 bool is_char(
char c)
const {
return *text_ == c; }
577 void show_char(
void)
const { ::printf(
"%.*s", len_, text_); }
578 void show_char_info(
void)
const { ::fprintf(stderr,
"UTF-8('%.*s', len=%d)\n", len_, text_, len_); }
598 void new_copy(
int drows,
int dcols,
int hrows,
const CharStyle& style);
607 void clear_hist(
void);
636 inline int ring_rows(
void)
const {
return ring_rows_; }
637 inline int ring_cols(
void)
const {
return ring_cols_; }
638 inline int ring_srow(
void)
const {
return(0); }
639 inline int ring_erow(
void)
const {
return(ring_rows_ - 1); }
640 inline int hist_rows(
void)
const {
return hist_rows_; }
641 inline int hist_cols(
void)
const {
return ring_cols_; }
642 inline int hist_srow(
void)
const {
return((offset_ + 0) % ring_rows_); }
643 inline int hist_erow(
void)
const {
return((offset_ + hist_rows_ - 1) % ring_rows_); }
644 inline int disp_rows(
void)
const {
return disp_rows_; }
645 inline int disp_cols(
void)
const {
return ring_cols_; }
646 inline int disp_srow(
void)
const {
return((offset_ + hist_rows_) % ring_rows_); }
647 inline int disp_erow(
void)
const {
return((offset_ + hist_rows_ + disp_rows_ - 1) % ring_rows_); }
648 inline int offset(
void)
const {
return offset_; }
649 void offset_adjust(
int rows);
650 void hist_rows(
int val) { hist_rows_ = val; }
651 void disp_rows(
int val) { disp_rows_ = val; }
654 inline int hist_use(
void)
const {
return hist_use_; }
655 inline void hist_use(
int val) { hist_use_ = val; }
656 inline int hist_use_srow(
void)
const {
return((offset_ + hist_rows_ - hist_use_) % ring_rows_); }
657 inline Utf8Char *ring_chars(
void) {
return ring_chars_; }
658 inline Utf8Char *ring_chars(
void)
const {
return ring_chars_; }
660 bool is_hist_ring_row(
int grow)
const;
661 bool is_disp_ring_row(
int grow)
const;
663 void move_disp_row(
int src_row,
int dst_row);
664 void clear_disp_rows(
int sdrow,
int edrow,
const CharStyle& style);
665 void scroll(
int rows,
const CharStyle& style);
667 const Utf8Char* u8c_ring_row(
int row)
const;
668 const Utf8Char* u8c_hist_row(
int hrow)
const;
669 const Utf8Char* u8c_hist_use_row(
int hurow)
const;
670 const Utf8Char* u8c_disp_row(
int drow)
const;
676 Utf8Char* u8c_hist_use_row(
int hurow);
679 void create(
int drows,
int dcols,
int hrows);
682 void change_disp_rows(
int drows,
const CharStyle& style);
683 void change_disp_cols(
int dcols,
const CharStyle& style);
692 int srow_, scol_, erow_, ecol_;
693 int push_row_, push_col_;
694 bool push_char_right_;
701 int srow(
void)
const {
return srow_; }
702 int scol(
void)
const {
return scol_; }
703 int erow(
void)
const {
return erow_; }
704 int ecol(
void)
const {
return ecol_; }
705 void push_clear() { push_row_ = push_col_ = -1; push_char_right_ =
false; }
706 void push_rowcol(
int row,
int col,
bool char_right) {
707 push_row_ = row; push_col_ = col; push_char_right_ = char_right; }
708 void start_push() { start(push_row_, push_col_, push_char_right_); }
709 bool dragged_off(
int row,
int col,
bool char_right) {
710 return (push_row_ != row) || (push_col_+push_char_right_ != col+char_right); }
711 void selectionfgcolor(
Fl_Color val) { selectionfgcolor_ = val; }
712 void selectionbgcolor(
Fl_Color val) { selectionbgcolor_ = val; }
713 Fl_Color selectionfgcolor(
void)
const {
return selectionfgcolor_; }
714 Fl_Color selectionbgcolor(
void)
const {
return selectionbgcolor_; }
715 bool is_selection(
void)
const {
return is_selection_; }
716 bool get_selection(
int &srow,
int &scol,
int &erow,
int &ecol)
const;
717 bool start(
int row,
int col,
bool char_right);
718 bool extend(
int row,
int col,
bool char_right);
720 void select(
int srow,
int scol,
int erow,
int ecol);
722 int state(
void)
const {
return state_; }
723 void scroll(
int nrows);
739 static const int maxbuff = 80;
740 static const int maxvals = 20;
742 static const int success = 0;
743 static const int fail = -1;
744 static const int completed = 1;
754 int save_row_, save_col_;
756 int append_buff(
char c);
757 int append_val(
void);
762 char esc_mode(
void)
const;
763 void esc_mode(
char val);
764 int total_vals(
void)
const;
765 int val(
int i)
const;
766 int defvalmax(
int dval,
int max)
const;
767 bool parse_in_progress(
void)
const;
768 bool is_csi(
void)
const;
770 void save_cursor(
int row,
int col);
771 void restore_cursor(
int &row,
int &col);
783 void clear(
void) { buflen_ = clen_ = 0; }
786 bool is_continuation(
char c) {
797 return ((c & 0xc0) == 0x80);
800 const char* buf(
void)
const {
return buf_; }
802 int buflen(
void)
const {
return buflen_; }
812 bool append(
const char* p,
int len) {
813 if (len <= 0)
return true;
814 if (buflen_ + len >= (
int)
sizeof(buf_))
815 {
clear();
return false; }
817 while (len>0) { buf_[buflen_++] = *p++; len--; }
820 bool is_complete(
void)
const {
return (buflen_ && (buflen_ == clen_)); }
856 const char *error_char_;
857 bool fontsize_defer_;
881 bool redraw_modified_;
887 const Utf8Char* u8c_ring_row(
int grow)
const;
888 const Utf8Char* u8c_hist_row(
int hrow)
const;
889 const Utf8Char* u8c_hist_use_row(
int hrow)
const;
890 const Utf8Char* u8c_disp_row(
int drow)
const;
896 Utf8Char* u8c_hist_use_row(
int hurow);
900 void create_ring(
int drows,
int dcols,
int hrows);
901 void init_(
int X,
int Y,
int W,
int H,
const char*L,
int rows,
int cols,
int hist,
bool fontsize_defer);
903 void init_tabstops(
int newsize);
904 void default_tabstops(
void);
905 void clear_all_tabstops(
void);
906 void set_tabstop(
void);
907 void clear_tabstop(
void);
909 void update_screen_xywh(
void);
910 void update_screen(
bool font_changed);
911 void set_scrollbar_params(
Fl_Scrollbar* scroll,
int min,
int max);
912 void update_scrollbar(
void);
914 void resize_display_rows(
int drows);
915 void resize_display_columns(
int dcols);
916 void refit_disp_to_screen(
void);
918 static void scrollbar_cb(
Fl_Widget*,
void*);
919 static void autoscroll_timer_cb(
void*);
920 void autoscroll_timer_cb2(
void);
921 static void redraw_timer_cb(
void*);
922 void redraw_timer_cb2(
void);
927 void current_style(
const CharStyle& sty);
929 int x_to_glob_col(
int X,
int grow,
int &gcol,
bool &gcr)
const;
930 int xy_to_glob_rowcol(
int X,
int Y,
int &grow,
int &gcol,
bool &gcr)
const;
932 int w_to_col(
int W)
const;
933 int h_to_row(
int H)
const;
935 void clear_sod(
void);
936 void clear_eod(
void);
937 void clear_eol(
void);
938 void clear_sol(
void);
939 void clear_line(
int row);
940 void clear_line(
void);
941 const Utf8Char* walk_selection(
const Utf8Char *u8c,
int &row,
int &col)
const;
942 bool get_selection(
int &srow,
int &scol,
int &erow,
int &ecol)
const;
943 bool is_selection(
void)
const;
944 bool is_inside_selection(
int row,
int col)
const;
946 bool is_hist_ring_row(
int grow)
const;
947 bool is_disp_ring_row(
int grow)
const;
949 int selection_text_len(
void)
const;
950 const char* selection_text(
void)
const;
952 void clear_mouse_selection(
void);
953 bool selection_extend(
int X,
int Y);
954 void select_word(
int grow,
int gcol);
955 void select_line(
int grow);
956 void scroll(
int rows);
957 void insert_rows(
int count);
958 void delete_rows(
int count);
959 void insert_char_eol(
char c,
int drow,
int dcol,
int rep);
960 void insert_char(
char c,
int rep);
961 void delete_chars(
int drow,
int dcol,
int rep);
962 void delete_chars(
int rep);
967 void clear_screen(
bool scroll_to_hist=
true);
968 void clear_screen_home(
bool scroll_to_hist=
true);
969 void clear_history(
void);
970 void reset_terminal(
void);
971 void cursor_home(
void);
978 void cursor_row(
int row);
979 void cursor_col(
int col);
981 int cursor_row(
void)
const;
982 int cursor_col(
void)
const;
984 void cursor_up(
int count=1,
bool do_scroll=
false);
985 void cursor_down(
int count=1,
bool do_scroll=
false);
986 void cursor_left(
int count=1);
987 void cursor_right(
int count=1,
bool do_scroll=
false);
988 void cursor_eol(
void);
989 void cursor_sol(
void);
990 void cursor_cr(
void);
991 void cursor_crlf(
int count=1);
992 void cursor_tab_right(
int count=1);
993 void cursor_tab_left(
int count=1);
994 void save_cursor(
void);
995 void restore_cursor(
void);
1001 void handle_lf(
void);
1002 void handle_cr(
void);
1003 void handle_esc(
void);
1005 void handle_ctrl(
char c);
1006 bool is_printable(
char c);
1007 bool is_ctrl(
char c);
1008 void handle_SGR(
void);
1009 void handle_DECRARA(
void);
1010 void handle_escseq(
char c);
1012 void display_modified(
void);
1013 void display_modified_clear(
void);
1014 void clear_char_at_disp(
int drow,
int dcol);
1015 const Utf8Char* utf8_char_at_disp(
int drow,
int dcol)
const;
1016 const Utf8Char* utf8_char_at_glob(
int grow,
int gcol)
const;
1017 void repeat_char(
char c,
int rep);
1018 void utf8_cache_clear(
void);
1019 void utf8_cache_flush(
void);
1022 void plot_char(
const char *text,
int len,
int drow,
int dcol);
1023 void plot_char(
char c,
int drow,
int dcol);
1024 void print_char(
const char *text,
int len=-1);
1025 void print_char(
char c);
1027 void append_utf8(
const char *buf,
int len=-1);
1028 void append_ascii(
const char *s);
1029 void append(
const char *s,
int len=-1);
1031 int handle_unknown_char(
void);
1032 int handle_unknown_char(
int drow,
int dcol);
1034 void draw_row_bg(
int grow,
int X,
int Y)
const;
1035 void draw_row(
int grow,
int Y)
const;
1036 void draw_buff(
int Y)
const;
1038 void handle_selection_autoscroll(
void);
1039 int handle_selection(
int e);
1045 const char* text(
bool lines_below_cursor=
false)
const;
1053 inline int ring_rows(
void)
const {
return ring_.ring_rows(); }
1055 inline int ring_cols(
void)
const {
return ring_.ring_cols(); }
1057 inline int ring_srow(
void)
const {
return ring_.ring_srow(); }
1059 inline int ring_erow(
void)
const {
return ring_.ring_erow(); }
1061 inline int hist_rows(
void)
const {
return ring_.hist_rows(); }
1063 inline int hist_cols(
void)
const {
return ring_.hist_cols(); }
1065 inline int hist_srow(
void)
const {
return ring_.hist_srow(); }
1067 inline int hist_erow(
void)
const {
return ring_.hist_erow(); }
1069 inline int hist_use(
void)
const {
return ring_.hist_use(); }
1073 inline int disp_rows(
void)
const {
return ring_.disp_rows(); }
1075 inline int disp_cols(
void)
const {
return ring_.disp_cols(); }
1077 inline int disp_srow(
void)
const {
return ring_.disp_srow(); }
1079 inline int disp_erow(
void)
const {
return ring_.disp_erow(); }
1081 inline int offset(
void)
const {
return ring_.offset(); }
1089 int scrollbar_size(
void)
const;
1090 void scrollbar_size(
int val);
1091 int scrollbar_actual_size(
void)
const;
1092 void hscrollbar_style(ScrollbarStyle val);
1093 ScrollbarStyle hscrollbar_style(
void)
const;
1095 int history_rows(
void)
const;
1096 void history_rows(
int val);
1097 int history_use(
void)
const;
1099 int display_rows(
void)
const;
1100 void display_rows(
int val);
1101 int display_columns(
void)
const;
1102 void display_columns(
int val);
1123 void margin_left(
int val);
1124 void margin_right(
int val);
1125 void margin_top(
int val);
1126 void margin_bottom(
int val);
1134 void textfgcolor_default(
Fl_Color val);
1135 void textbgcolor_default(
Fl_Color val);
1152 void textfgcolor_xterm(
uchar val);
1153 void textbgcolor_xterm(
uchar val);
1163 void textattrib(
uchar val);
1164 uchar textattrib()
const;
1166 RedrawStyle redraw_style(
void)
const;
1167 void redraw_style(RedrawStyle val);
1169 bool is_redraw_style(RedrawStyle val) {
return redraw_style_ == val; }
1171 float redraw_rate(
void)
const;
1172 void redraw_rate(
float val);
1174 bool show_unknown(
void)
const;
1175 void show_unknown(
bool val);
1184 bool ansi(
void)
const;
1185 void ansi(
bool val);
1187 int history_lines(
void)
const;
1188 void history_lines(
int val);
1190 void printf(
const char *fmt, ...);
1191 void vprintf(
const char *fmt, va_list ap);
1193 Fl_Terminal(
int X,
int Y,
int W,
int H,
const char*L=0);
1194 Fl_Terminal(
int X,
int Y,
int W,
int H,
const char*L,
int rows,
int cols,
int hist);
int Fl_Font
A font number is an index into the internal font table.
Definition Enumerations.H:1057
unsigned int Fl_Color
An FLTK color value; see also Colors
Definition Enumerations.H:1114
int Fl_Fontsize
Size of a font in pixels.
Definition Enumerations.H:1086
Fl_Boxtype
FLTK standard box types.
Definition Enumerations.H:638
Fl_Group and Fl_End classes.
The Fl_Group class is the main FLTK container widget.
Definition Fl_Group.H:59
void end()
Exactly the same as current(this->parent()).
Definition Fl_Group.cxx:76
int handle(int) FL_OVERRIDE
Handles the specified event.
Definition Fl_Group.cxx:148
void resize(int, int, int, int) FL_OVERRIDE
Resizes the Fl_Group widget and all of its children.
Definition Fl_Group.cxx:809
void draw() FL_OVERRIDE
Draws the widget.
Definition Fl_Group.cxx:928
void clear()
Deletes all child widgets from memory recursively.
Definition Fl_Group.cxx:382
Rectangle with standard FLTK coordinates (X, Y, W, H).
Definition Fl_Rect.H:30
Definition Fl_Terminal.H:425
Definition Fl_Terminal.H:501
Definition Fl_Terminal.H:735
Definition Fl_Terminal.H:405
Definition Fl_Terminal.H:778
Definition Fl_Terminal.H:587
Definition Fl_Terminal.H:690
Definition Fl_Terminal.H:539
Terminal widget supporting Unicode/utf-8, ANSI/xterm escape codes with full RGB color control.
Definition Fl_Terminal.H:320
void selectionbgcolor(Fl_Color val)
Set mouse selection background color.
Definition Fl_Terminal.H:1157
const char * error_char(void) const
Returns the "error character" utf8 string, which is shown for invalid utf8 or bad ANSI sequences if s...
Definition Fl_Terminal.H:1182
int disp_srow(void) const
Return the starting row# in the display area.
Definition Fl_Terminal.H:1077
Fl_Color color(void) const
Return base widget Fl_Group's box() color()
Definition Fl_Terminal.H:1141
int hist_rows(void) const
Return the number of rows in the scrollback history.
Definition Fl_Terminal.H:1061
Fl_Color textbgcolor_default(void) const
Return text's default background color.
Definition Fl_Terminal.H:1151
int margin_left(void) const
Return the left margin; see Margins.
Definition Fl_Terminal.H:1116
Fl_Color selectionfgcolor(void) const
Get mouse selection foreground color.
Definition Fl_Terminal.H:1159
Attrib
Bits for the per-character attributes, which control text features such as italic,...
Definition Fl_Terminal.H:346
@ NORMAL
all attributes off
Definition Fl_Terminal.H:347
@ ITALIC
italic font text
Definition Fl_Terminal.H:350
@ DIM
dim text; color slightly darker than normal
Definition Fl_Terminal.H:349
@ STRIKEOUT
strikeout text
Definition Fl_Terminal.H:355
@ UNDERLINE
underlined text
Definition Fl_Terminal.H:351
@ BOLD
bold text: uses bold font, color brighter than normal
Definition Fl_Terminal.H:348
@ INVERSE
inverse text; fg/bg color are swapped
Definition Fl_Terminal.H:353
Fl_Color selectionbgcolor(void) const
Get mouse selection background color.
Definition Fl_Terminal.H:1161
int offset(void) const
Returns the current offset into the ring buffer.
Definition Fl_Terminal.H:1081
int margin_bottom(void) const
Return the bottom margin; see Margins.
Definition Fl_Terminal.H:1122
Fl_Scrollbar * scrollbar
Vertical scrollbar.
Definition Fl_Terminal.H:842
int margin_top(void) const
Return the top margin; see Margins.
Definition Fl_Terminal.H:1120
int hist_srow(void) const
Return the starting row# of the scrollback history.
Definition Fl_Terminal.H:1065
Fl_Font textfont(void) const
Return text font used to draw all text in the terminal.
Definition Fl_Terminal.H:1137
void error_char(const char *val)
Sets the "error character" utf8 string shown for invalid utf8 or bad ANSI sequences if show_unknown()...
Definition Fl_Terminal.H:1179
int disp_erow(void) const
Return the ending row# in the display area.
Definition Fl_Terminal.H:1079
Fl_Color textfgcolor(void) const
Return text's current foreground color.
Definition Fl_Terminal.H:1145
Fl_Fontsize textsize(void) const
Return text font size used to draw all text in the terminal.
Definition Fl_Terminal.H:1139
int ring_cols(void) const
Return the number of columns in the ring buffer.
Definition Fl_Terminal.H:1055
CharFlags
Per-character 8 bit flags (uchar) used to manage special states for characters.
Definition Fl_Terminal.H:362
ScrollbarStyle
Behavior of scrollbars.
Definition Fl_Terminal.H:389
int hist_cols(void) const
Return the number of columns in the scrollback history.
Definition Fl_Terminal.H:1063
Fl_Color textbgcolor(void) const
Return text's current background color.
Definition Fl_Terminal.H:1147
Fl_Color textfgcolor_default(void) const
Return text's default foreground color.
Definition Fl_Terminal.H:1149
RedrawStyle
Determines when Fl_Terminal calls redraw() if new text is added.
Definition Fl_Terminal.H:332
@ RATE_LIMITED
timer controlled redraws. (DEFAULT)
Definition Fl_Terminal.H:334
int margin_right(void) const
Return the right margin; see Margins.
Definition Fl_Terminal.H:1118
int ring_rows(void) const
Return the number of rows in the ring buffer.
Definition Fl_Terminal.H:1053
int hist_use(void) const
Return number of rows in use by the scrollback history.
Definition Fl_Terminal.H:1069
int disp_rows(void) const
Return the number of rows in the display area.
Definition Fl_Terminal.H:1073
int hist_use_srow(void) const
Return the starting row of the "in use" scrollback history.
Definition Fl_Terminal.H:1071
int disp_cols(void) const
Return the number of columns in the display area.
Definition Fl_Terminal.H:1075
Fl_Scrollbar * hscrollbar
Horizontal scrollbar.
Definition Fl_Terminal.H:853
int ring_srow(void) const
Return the starting row# in the ring buffer. (Always 0)
Definition Fl_Terminal.H:1057
OutFlags
Output translation flags for special control character translations.
Definition Fl_Terminal.H:378
int ring_erow(void) const
Return the ending row# in the ring buffer (Always ring_rows()-1)
Definition Fl_Terminal.H:1059
Fl_Boxtype box(void) const
Returns the current box type.
Definition Fl_Terminal.H:1113
void box(Fl_Boxtype val)
Sets the box type, updates terminal margins et al.
Definition Fl_Terminal.H:1111
void selectionfgcolor(Fl_Color val)
Set mouse selection foreground color.
Definition Fl_Terminal.H:1155
Fl_Color textcolor(void) const
Return textcolor(). This is a convenience method that returns textfgcolor_default()
Definition Fl_Terminal.H:1143
int hist_erow(void) const
Return the ending row# of the scrollback history.
Definition Fl_Terminal.H:1067
#define FL_OVERRIDE
This macro makes it safe to use the C++11 keyword override with older compilers.
Definition fl_attr.h:38
unsigned char uchar
unsigned char
Definition fl_types.h:30
int fl_utf8len(char c)
Returns the byte length of the UTF-8 sequence with first byte c, or -1 if c is not valid.
Definition fl_utf8.cxx:69