|
NTK 1.3.0
|
This is the FLTK text editor widget. More...
#include <Fl_Text_Editor.H>
Classes | |
| struct | Key_Binding |
| Simple linked list associating a key/state to a function. More... | |
Public Types | |
| typedef int(* | Key_Func) (int key, Fl_Text_Editor *editor) |
| Key function binding callback type. | |
Public Types inherited from Fl_Text_Display | |
| enum | { DRAG_NONE = -2 , DRAG_START_DND = -1 , DRAG_CHAR = 0 , DRAG_WORD = 1 , DRAG_LINE = 2 } |
| drag types - they match Fl::event_clicks() so that single clicking to start a collection selects by character, double clicking selects by word and triple clicking selects by line. | |
| enum | { WRAP_NONE , WRAP_AT_COLUMN , WRAP_AT_PIXEL , WRAP_AT_BOUNDS } |
| wrap types - used in wrap_mode() More... | |
| enum | { CURSOR_POS , CHARACTER_POS } |
| the character position is the left edge of a character, whereas the cursor is thought to be between the centers of two consecutive characters. | |
| enum | { NORMAL_CURSOR , CARET_CURSOR , DIM_CURSOR , BLOCK_CURSOR , HEAVY_CURSOR } |
| text display cursor shapes enumeration More... | |
| typedef void(* | Unfinished_Style_Cb) (int, void *) |
Public Member Functions | |
| void | add_default_key_bindings (Key_Binding **list) |
| Adds all of the default editor key bindings to the specified key binding list. | |
| void | add_key_binding (int key, int state, Key_Func f) |
| Adds a key of state "state" with the function "function". | |
| void | add_key_binding (int key, int state, Key_Func f, Key_Binding **list) |
| Adds a key of state "state" with the function "function". | |
| Key_Func | bound_key_function (int key, int state) |
| Returns the function associated with a key binding. | |
| Key_Func | bound_key_function (int key, int state, Key_Binding *list) |
| Returns the function associated with a key binding. | |
| void | default_key_function (Key_Func f) |
| Sets the default key function for unassigned keys. | |
| Fl_Text_Editor (int X, int Y, int W, int H, const char *l=0) | |
| The constructor creates a new text editor widget. | |
| virtual int | handle (int e) |
| Event handling. | |
| int | insert_mode () |
| Gets the current insert mode; if non-zero, new text is inserted before the current cursor position. | |
| void | insert_mode (int b) |
| Sets the current insert mode; if non-zero, new text is inserted before the current cursor position. | |
| void | remove_all_key_bindings () |
| Removes all of the key bindings associated with the text editor or list. | |
| void | remove_all_key_bindings (Key_Binding **list) |
| Removes all of the key bindings associated with the text editor or list. | |
| void | remove_key_binding (int key, int state) |
| Removes the key binding associated with the key "key" of state "state". | |
| void | remove_key_binding (int key, int state, Key_Binding **list) |
| Removes the key binding associated with the key "key" of state "state". | |
Public Member Functions inherited from Fl_Text_Display | |
| Fl_Text_Buffer * | buffer () const |
| Gets the current text buffer associated with the text widget. | |
| void | buffer (Fl_Text_Buffer &buf) |
| Sets the current text buffer associated with the text widget. | |
| void | buffer (Fl_Text_Buffer *buf) |
| Attach a text buffer to display, replacing the current buffer (if any) | |
| double | col_to_x (double col) const |
| Convert a column number into an x pixel position. | |
| int | count_lines (int start, int end, bool start_pos_is_line_start) const |
| Count the number of lines between two positions. | |
| Fl_Color | cursor_color () const |
| Gets the text cursor color. | |
| void | cursor_color (Fl_Color n) |
| Sets the text cursor color. | |
| void | cursor_style (int style) |
| Sets the text cursor style. | |
| Fl_Text_Display (int X, int Y, int W, int H, const char *l=0) | |
| Creates a new text display widget. | |
| void | hide_cursor () |
| Hides the text cursor. | |
| void | highlight_data (Fl_Text_Buffer *styleBuffer, const Style_Table_Entry *styleTable, int nStyles, char unfinishedStyle, Unfinished_Style_Cb unfinishedHighlightCB, void *cbArg) |
| Attach (or remove) highlight information in text display and redisplay. | |
| int | in_selection (int x, int y) const |
| Check if a pixel position is within the primary selection. | |
| void | insert (const char *text) |
| Inserts "text" at the current cursor location. | |
| int | insert_position () const |
| Gets the position of the text insertion cursor for text display. | |
| void | insert_position (int newPos) |
| Sets the position of the text insertion cursor for text display. | |
| int | line_end (int startPos, bool startPosIsLineStart) const |
| Returns the end of a line. | |
| int | line_start (int pos) const |
| Return the beginning of a line. | |
| int | move_down () |
| Moves the current insert position down one line. | |
| int | move_left () |
| Moves the current insert position left one character. | |
| int | move_right () |
| Moves the current insert position right one character. | |
| int | move_up () |
| Moves the current insert position up one line. | |
| void | next_word (void) |
| Moves the current insert position right one word. | |
| void | overstrike (const char *text) |
| Replaces text at the current insert position. | |
| int | position_style (int lineStartPos, int lineLen, int lineIndex) const |
| Find the correct style for a character. | |
| int | position_to_xy (int pos, int *x, int *y) const |
| Convert a character index into a pixel position. | |
| void | previous_word (void) |
| Moves the current insert position left one word. | |
| void | redisplay_range (int start, int end) |
| Marks text from start to end as needing a redraw. | |
| virtual void | resize (int X, int Y, int W, int H) |
| Change the size of the displayed text area. | |
| int | rewind_lines (int startPos, int nLines) |
| Skip a number of lines back. | |
| void | scroll (int topLineNum, int horizOffset) |
| Scrolls the current buffer to start at the specified line and column. | |
| Fl_Align | scrollbar_align () const |
| Gets the scrollbar alignment type. | |
| void | scrollbar_align (Fl_Align a) |
| Sets the scrollbar alignment type. | |
| int | scrollbar_width () const |
| Gets the width/height of the scrollbars. | |
| void | scrollbar_width (int W) |
| Sets the width/height of the scrollbars. | |
| int | shortcut () const |
| void | shortcut (int s) |
| void | show_cursor (int b=1) |
| Shows the text cursor. | |
| void | show_insert_position () |
| Scrolls the text buffer to show the current insert position. | |
| int | skip_lines (int startPos, int nLines, bool startPosIsLineStart) |
| Skip a number of lines forward. | |
| Fl_Color | textcolor () const |
| Gets the default color of text in the widget. | |
| void | textcolor (Fl_Color n) |
| Sets the default color of text in the widget. | |
| Fl_Font | textfont () const |
| Gets the default font used when drawing text in the widget. | |
| void | textfont (Fl_Font s) |
| Sets the default font used when drawing text in the widget. | |
| Fl_Fontsize | textsize () const |
| Gets the default size of text in the widget. | |
| void | textsize (Fl_Fontsize s) |
| Sets the default size of text in the widget. | |
| int | word_end (int pos) const |
| Moves the insert position to the end of the current word. | |
| int | word_start (int pos) const |
| Moves the insert position to the beginning of the current word. | |
| void | wrap_mode (int wrap, int wrap_margin) |
| Set the new text wrap mode. | |
| int | wrapped_column (int row, int column) const |
| Nobody knows what this function does. | |
| int | wrapped_row (int row) const |
| Nobody knows what this function does. | |
| double | x_to_col (double x) const |
| Convert an x pixel position into a column number. | |
| ~Fl_Text_Display () | |
| Free a text display and release its associated memory. | |
Public Member Functions inherited from Fl_Group | |
| Fl_Widget *& | _ddfdesign_kludge () |
| This is for forms compatibility only. | |
| void | add (Fl_Widget &) |
| The widget is removed from its current group (if any) and then added to the end of this group. | |
| void | add (Fl_Widget *o) |
| See void Fl_Group::add(Fl_Widget &w) | |
| void | add_resizable (Fl_Widget &o) |
| Adds a widget to the group and makes it the resizable widget. | |
| Fl_Widget *const * | array () const |
| Returns a pointer to the array of children. | |
| virtual Fl_Group * | as_group () |
| Returns an Fl_Group pointer if this widget is an Fl_Group. | |
| void | begin () |
| Sets the current group so you can build the widget tree by just constructing the widgets. | |
| Fl_Widget * | child (int n) const |
| Returns array()[n]. | |
| int | children () const |
| Returns how many child widgets the group has. | |
| void | clear () |
| Deletes all child widgets from memory recursively. | |
| unsigned int | clip_children () |
| Returns the current clipping mode. | |
| void | clip_children (int c) |
| Controls whether the group widget clips the drawing of child widgets to its bounding box. | |
| void | end () |
| Exactly the same as current(this->parent()). | |
| int | find (const Fl_Widget &o) const |
| See int Fl_Group::find(const Fl_Widget *w) const. | |
| int | find (const Fl_Widget *) const |
| Searches the child array for the widget and returns the index. | |
| Fl_Group (int, int, int, int, const char *=0) | |
| Creates a new Fl_Group widget using the given position, size, and label string. | |
| void | focus (Fl_Widget *W) |
| void | forms_end () |
| This is for forms compatibility only. | |
| void | init_sizes () |
| Resets the internal array of widget sizes and positions. | |
| void | insert (Fl_Widget &, int i) |
| The widget is removed from its current group (if any) and then inserted into this group. | |
| void | insert (Fl_Widget &o, Fl_Widget *before) |
| This does insert(w, find(before)). | |
| void | remove (Fl_Widget &) |
| Removes a widget from the group but does not delete it. | |
| void | remove (Fl_Widget *o) |
Removes the widget o from the group. | |
| void | remove (int index) |
Removes the widget at index from the group but does not delete it. | |
| Fl_Widget * | resizable () const |
| See void Fl_Group::resizable(Fl_Widget *box) | |
| void | resizable (Fl_Widget &o) |
| See void Fl_Group::resizable(Fl_Widget *box) | |
| void | resizable (Fl_Widget *o) |
| The resizable widget defines the resizing box for the group. | |
| virtual | ~Fl_Group () |
| The destructor also deletes all the children. | |
Public Member Functions inherited from Fl_Widget | |
| void | activate () |
| Activates the widget. | |
| unsigned int | active () const |
| Returns whether the widget is active. | |
| int | active_r () const |
| Returns whether the widget and all of its parents are active. | |
| Fl_Align | align () const |
| Gets the label alignment. | |
| void | align (Fl_Align alignment) |
| Sets the label alignment. | |
| long | argument () const |
| Gets the current user data (long) argument that is passed to the callback function. | |
| void | argument (long v) |
| Sets the current user data (long) argument that is passed to the callback function. | |
| virtual class Fl_Gl_Window * | as_gl_window () |
| Returns an Fl_Gl_Window pointer if this widget is an Fl_Gl_Window. | |
| virtual Fl_Window * | as_window () |
| Returns an Fl_Window pointer if this widget is an Fl_Window. | |
| Fl_Boxtype | box () const |
| Gets the box type of the widget. | |
| void | box (Fl_Boxtype new_box) |
| Sets the box type for the widget. | |
| Fl_Callback_p | callback () const |
| Gets the current callback function for the widget. | |
| void | callback (Fl_Callback *cb) |
| Sets the current callback function for the widget. | |
| void | callback (Fl_Callback *cb, void *p) |
| Sets the current callback function for the widget. | |
| void | callback (Fl_Callback0 *cb) |
| Sets the current callback function for the widget. | |
| void | callback (Fl_Callback1 *cb, long p=0) |
| Sets the current callback function for the widget. | |
| unsigned int | changed () const |
| Checks if the widget value changed since the last callback. | |
| void | clear_changed () |
| Marks the value of the widget as unchanged. | |
| void | clear_damage (fl_damage_t c=0) |
| Clears or sets the damage flags. | |
| void | clear_output () |
| Sets a widget to accept input. | |
| void | clear_visible () |
| Hides the widget. | |
| void | clear_visible_focus () |
| Disables keyboard focus navigation with this widget. | |
| Fl_Color | color () const |
| Gets the background color of the widget. | |
| void | color (Fl_Color bg) |
| Sets the background color of the widget. | |
| void | color (Fl_Color bg, Fl_Color sel) |
| Sets the background and selection color of the widget. | |
| Fl_Color | color2 () const |
| For back compatibility only. | |
| void | color2 (unsigned a) |
| For back compatibility only. | |
| int | contains (const Fl_Widget *w) const |
| Checks if w is a child of this widget. | |
| void | copy_label (const char *new_label) |
| Sets the current label. | |
| void | copy_tooltip (const char *text) |
| Sets the current tooltip text. | |
| fl_damage_t | damage () const |
| Returns non-zero if draw() needs to be called. | |
| void | damage (fl_damage_t c) |
| Sets the damage bits for the widget. | |
| void | damage (fl_damage_t c, int x, int y, int w, int h) |
| Sets the damage bits for an area inside the widget. | |
| int | damage_resize (int, int, int, int) |
| Internal use only. | |
| void | deactivate () |
| Deactivates the widget. | |
| Fl_Image * | deimage () |
| Gets the image that is used as part of the widget label. | |
| const Fl_Image * | deimage () const |
| void | deimage (Fl_Image &img) |
| Sets the image to use as part of the widget label. | |
| void | deimage (Fl_Image *img) |
| Sets the image to use as part of the widget label. | |
| void | do_callback () |
| Calls the widget callback. | |
| void | do_callback (Fl_Widget *o, long arg) |
| Calls the widget callback. | |
| void | do_callback (Fl_Widget *o, void *arg=0) |
| Calls the widget callback. | |
| void | draw_label (int, int, int, int, Fl_Align) const |
| Draws the label in an arbitrary bounding box with an arbitrary alignment. | |
| int | h () const |
| Gets the widget height. | |
| virtual void | hide () |
| Makes a widget invisible. | |
| Fl_Image * | image () |
| Gets the image that is used as part of the widget label. | |
| const Fl_Image * | image () const |
| void | image (Fl_Image &img) |
| Sets the image to use as part of the widget label. | |
| void | image (Fl_Image *img) |
| Sets the image to use as part of the widget label. | |
| int | inside (const Fl_Widget *w) const |
| Checks if this widget is a child of w. | |
| const char * | label () const |
| Gets the current label text. | |
| void | label (const char *text) |
| Sets the current label pointer. | |
| void | label (Fl_Labeltype a, const char *b) |
| Shortcut to set the label text and type in one call. | |
| Fl_Color | labelcolor () const |
| Gets the label color. | |
| void | labelcolor (Fl_Color c) |
| Sets the label color. | |
| Fl_Font | labelfont () const |
| Gets the font to use. | |
| void | labelfont (Fl_Font f) |
| Sets the font to use. | |
| Fl_Fontsize | labelsize () const |
| Gets the font size in pixels. | |
| void | labelsize (Fl_Fontsize pix) |
| Sets the font size in pixels. | |
| Fl_Labeltype | labeltype () const |
| Gets the label type. | |
| void | labeltype (Fl_Labeltype a) |
| Sets the label type. | |
| void | measure_label (int &ww, int &hh) const |
| Sets width ww and height hh accordingly with the label size. | |
| unsigned int | output () const |
| Returns if a widget is used for output only. | |
| Fl_Group * | parent () const |
| Returns a pointer to the parent widget. | |
| void | parent (Fl_Group *p) |
| Internal use only - "for hacks only". | |
| void | position (int X, int Y) |
| Repositions the window or widget. | |
| void | redraw () |
| Schedules the drawing of the widget. | |
| void | redraw_label () |
| Schedules the drawing of the label. | |
| Fl_Color | selection_color () const |
| Gets the selection color. | |
| void | selection_color (Fl_Color a) |
| Sets the selection color. | |
| void | set_changed () |
| Marks the value of the widget as changed. | |
| void | set_output () |
| Sets a widget to output only. | |
| void | set_visible () |
| Makes the widget visible. | |
| void | set_visible_focus () |
| Enables keyboard focus navigation with this widget. | |
| virtual void | show () |
| Makes a widget visible. | |
| void | size (int W, int H) |
| Changes the size of the widget. | |
| int | take_focus () |
| Gives the widget the keyboard focus. | |
| unsigned int | takesevents () const |
| Returns if the widget is able to take events. | |
| int | test_shortcut () |
| Returns true if the widget's label contains the entered '&x' shortcut. | |
| const char * | tooltip () const |
| Gets the current tooltip text. | |
| void | tooltip (const char *text) |
| Sets the current tooltip text. | |
| uchar | type () const |
| Gets the widget type. | |
| void | type (uchar t) |
| Sets the widget type. | |
| void * | user_data () const |
| Gets the user data for this widget. | |
| void | user_data (void *v) |
| Sets the user data for this widget. | |
| unsigned int | visible () const |
| Returns whether a widget is visible. | |
| unsigned int | visible_focus () |
| Checks whether this widget has a visible focus. | |
| void | visible_focus (int v) |
| Modifies keyboard focus navigation. | |
| int | visible_r () const |
| Returns whether a widget and all its parents are visible. | |
| int | w () const |
| Gets the widget width. | |
| Fl_When | when () const |
| Returns the conditions under which the callback is called. | |
| void | when (uchar i) |
| Sets the flags used to decide when a callback is called. | |
| Fl_Window * | window () const |
| Returns a pointer to the primary Fl_Window widget. | |
| int | x () const |
| Gets the widget position in its window. | |
| int | y () const |
| Gets the widget position in its window. | |
| virtual | ~Fl_Widget () |
| Destroys the widget. | |
Static Public Member Functions | |
| static int | kf_backspace (int c, Fl_Text_Editor *e) |
| Does a backspace in the current buffer. | |
| static int | kf_c_s_move (int c, Fl_Text_Editor *e) |
| Extends the current selection in the direction indicated by control key c. | |
| static int | kf_copy (int c, Fl_Text_Editor *e) |
| Does a copy of selected text or the current character in the current buffer. | |
| static int | kf_ctrl_move (int c, Fl_Text_Editor *e) |
| Moves the current text cursor in the direction indicated by control key. | |
| static int | kf_cut (int c, Fl_Text_Editor *e) |
| Does a cut of selected text in the current buffer. | |
| static int | kf_default (int c, Fl_Text_Editor *e) |
| Inserts the text associated with the key. | |
| static int | kf_delete (int c, Fl_Text_Editor *e) |
| Does a delete of selected text or the current character in the current buffer. | |
| static int | kf_down (int c, Fl_Text_Editor *e) |
| Moves the text cursor one line down. | |
| static int | kf_end (int c, Fl_Text_Editor *e) |
| Moves the text cursor to the end of the current line. | |
| static int | kf_enter (int c, Fl_Text_Editor *e) |
| Inserts a newline at the current cursor position. | |
| static int | kf_home (int, Fl_Text_Editor *e) |
| Moves the text cursor to the beginning of the current line. | |
| static int | kf_ignore (int c, Fl_Text_Editor *e) |
| Ignores the keypress. | |
| static int | kf_insert (int c, Fl_Text_Editor *e) |
| Toggles the insert mode in the text editor. | |
| static int | kf_left (int c, Fl_Text_Editor *e) |
| Moves the text cursor one character to the left. | |
| static int | kf_m_s_move (int c, Fl_Text_Editor *e) |
| Extends the current selection in the direction indicated by meta key c. | |
| static int | kf_meta_move (int c, Fl_Text_Editor *e) |
| Moves the current text cursor in the direction indicated by meta key. | |
| static int | kf_move (int c, Fl_Text_Editor *e) |
| Moves the text cursor in the direction indicated by key c. | |
| static int | kf_page_down (int c, Fl_Text_Editor *e) |
| Moves the text cursor down one page. | |
| static int | kf_page_up (int c, Fl_Text_Editor *e) |
| Moves the text cursor up one page. | |
| static int | kf_paste (int c, Fl_Text_Editor *e) |
| Does a paste of selected text in the current buffer. | |
| static int | kf_right (int c, Fl_Text_Editor *e) |
| Moves the text cursor one character to the right. | |
| static int | kf_select_all (int c, Fl_Text_Editor *e) |
| Selects all text in the current buffer. | |
| static int | kf_shift_move (int c, Fl_Text_Editor *e) |
| Extends the current selection in the direction of key c. | |
| static int | kf_undo (int c, Fl_Text_Editor *e) |
| Undo last edit in the current buffer. | |
| static int | kf_up (int c, Fl_Text_Editor *e) |
| Moves the text cursor one line up. | |
Static Public Member Functions inherited from Fl_Group | |
| static Fl_Group * | current () |
| Returns the currently active group. | |
| static void | current (Fl_Group *g) |
| Sets the current group. | |
Static Public Member Functions inherited from Fl_Widget | |
| static void | default_callback (Fl_Widget *cb, void *d) |
| Sets the default callback for all widgets. | |
| static unsigned int | label_shortcut (const char *t) |
| Returns the Unicode value of the '&x' shortcut in a given text. | |
| static int | test_shortcut (const char *, const bool require_alt=false) |
Returns true if the given text t contains the entered '&x' shortcut. | |
Protected Member Functions | |
| int | handle_key () |
| Handles a key press in the editor. | |
| void | maybe_do_callback () |
| does or does not a callback according to changed() and when() settings | |
Protected Member Functions inherited from Fl_Text_Display | |
| void | absolute_top_line_number (int oldFirstChar) |
| Line numbering stuff, currently unused. | |
| void | calc_last_char () |
| Update last display character index. | |
| void | calc_line_starts (int startLine, int endLine) |
| Update the line start arrays. | |
| void | clear_rect (int style, int x, int y, int width, int height) const |
Clear a rectangle with the appropriate background color for style. | |
| void | display_insert () |
| Scroll the display to bring insertion cursor into view. | |
| virtual void | draw () |
| Draw the widget. | |
| void | draw_cursor (int, int) |
Draw a cursor with top center at X, Y. | |
| void | draw_line_numbers (bool clearAll) |
| Refresh the line number area. | |
| void | draw_range (int start, int end) |
| Draw a range of text. | |
| void | draw_string (int style, int x, int y, int toX, const char *string, int nChars) const |
| Draw a text segment in a single style. | |
| void | draw_text (int X, int Y, int W, int H) |
| Refresh a rectangle of the text display. | |
| void | draw_vline (int visLineNum, int leftClip, int rightClip, int leftCharIndex, int rightCharIndex) |
| Draw a single line of text. | |
| int | empty_vlines () const |
| Return true if there are lines visible with no corresponding buffer text. | |
| void | extend_range_for_styles (int *start, int *end) |
| I don't know what this does! | |
| void | find_line_end (int pos, bool start_pos_is_line_start, int *lineEnd, int *nextLineStart) const |
| Finds both the end of the current line and the start of the next line. | |
| void | find_wrap_range (const char *deletedText, int pos, int nInserted, int nDeleted, int *modRangeStart, int *modRangeEnd, int *linesInserted, int *linesDeleted) |
| Wrapping calculations. | |
| int | find_x (const char *s, int len, int style, int x) const |
| Find the index of the character that lies at the given x position. | |
| int | get_absolute_top_line_number () const |
| Line numbering stuff, currently unused. | |
| int | handle_vline (int mode, int lineStart, int lineLen, int leftChar, int rightChar, int topClip, int bottomClip, int leftClip, int rightClip) const |
| Universal pixel machine. | |
| int | longest_vline () const |
| Find the longest line of all visible lines. | |
| void | maintain_absolute_top_line_number (int state) |
| Line numbering stuff, currently unused. | |
| int | maintaining_absolute_top_line_number () const |
| Line numbering stuff, currently unused. | |
| void | measure_deleted_lines (int pos, int nDeleted) |
| Wrapping calculations. | |
| double | measure_proportional_character (const char *s, int colNum, int pos) const |
| Wrapping calculations. | |
| int | measure_vline (int visLineNum) const |
| Returns the width in pixels of the displayed line pointed to by "visLineNum". | |
| void | offset_line_starts (int newTopLineNum) |
| Offset line start counters for a new vertical scroll position. | |
| int | position_to_line (int pos, int *lineNum) const |
| Convert a position index into a line number offset. | |
| int | position_to_linecol (int pos, int *lineNum, int *column) const |
Find the line and column number of position pos. | |
| void | reset_absolute_top_line_number () |
| Line numbering stuff, probably unused. | |
| int | scroll_ (int topLineNum, int horizOffset) |
| Scrolls the current buffer to start at the specified line and column. | |
| double | string_width (const char *string, int length, int style) const |
| Find the width of a string in the font of a particular style. | |
| void | update_h_scrollbar () |
| Update vertical scrollbar. | |
| void | update_line_starts (int pos, int charsInserted, int charsDeleted, int linesInserted, int linesDeleted, int *scrolled) |
| Update line start arrays and variables. | |
| void | update_v_scrollbar () |
| Update vertical scrollbar. | |
| int | vline_length (int visLineNum) const |
| Count number of bytes in a visible line. | |
| int | wrap_uses_character (int lineEndPos) const |
| Check if the line break is caused by a \n or by line wrapping. | |
| void | wrapped_line_counter (Fl_Text_Buffer *buf, int startPos, int maxPos, int maxLines, bool startPosIsLineStart, int styleBufOffset, int *retPos, int *retLines, int *retLineStart, int *retLineEnd, bool countLastLineMissingNewLine=true) const |
| Wrapping calculations. | |
| int | xy_to_position (int x, int y, int PosType=CHARACTER_POS) const |
| Translate a pixel position into a character index. | |
| void | xy_to_rowcol (int x, int y, int *row, int *column, int PosType=CHARACTER_POS) const |
| Translate pixel coordinates into row and column. | |
Protected Member Functions inherited from Fl_Group | |
| void | draw_child (Fl_Widget &widget) const |
| Forces a child to redraw. | |
| void | draw_children () |
| Draws all children of the group. | |
| void | draw_outside_label (const Fl_Widget &widget) const |
| Parents normally call this to draw outside labels of child widgets. | |
| int * | sizes () |
| Returns the internal array of widget sizes and positions. | |
| void | update_child (Fl_Widget &widget) const |
| Draws a child only if it needs it. | |
Protected Member Functions inherited from Fl_Widget | |
| void | clear_flag (unsigned int c) |
| Clears a flag in the flags mask. | |
| void | draw_backdrop () const |
| If FL_ALIGN_IMAGE_BACKDROP is set, the image or deimage will be drawn. | |
| void | draw_box () const |
| Draws the widget box according its box style. | |
| void | draw_box (Fl_Boxtype t, Fl_Color c) const |
| Draws a box of type t, of color c at the widget's position and size. | |
| void | draw_box (Fl_Boxtype t, int x, int y, int w, int h, Fl_Color c) const |
| Draws a box of type t, of color c at the position X,Y and size W,H. | |
| void | draw_focus () |
| draws a focus rectangle around the widget | |
| void | draw_focus (Fl_Boxtype t, int x, int y, int w, int h) const |
| Draws a focus box for the widget at the given position and size. | |
| void | draw_label () const |
| Draws the widget's label at the defined label position. | |
| void | draw_label (int, int, int, int) const |
| Draws the label in an arbitrary bounding box. | |
| Fl_Widget (int x, int y, int w, int h, const char *label=0L) | |
| Creates a widget at the given position and size. | |
| unsigned int | flags () const |
| Gets the widget flags mask. | |
| void | h (int v) |
| Internal use only. | |
| void | set_flag (unsigned int c) |
| Sets a flag in the flags mask. | |
| void | w (int v) |
| Internal use only. | |
| void | x (int v) |
| Internal use only. | |
| void | y (int v) |
| Internal use only. | |
Additional Inherited Members | ||
Protected Types inherited from Fl_Text_Display | ||
| enum | { DRAW_LINE , FIND_INDEX , FIND_INDEX_FROM_ZERO , GET_WIDTH } | |
Protected Types inherited from Fl_Widget | ||
| enum | { INACTIVE = 1<<0 , INVISIBLE = 1<<1 , OUTPUT = 1<<2 , NOBORDER = 1<<3 , FORCE_POSITION = 1<<4 , NON_MODAL = 1<<5 , SHORTCUT_LABEL = 1<<6 , CHANGED = 1<<7 , OVERRIDE = 1<<8 , VISIBLE_FOCUS = 1<<9 , COPIED_LABEL = 1<<10 , CLIP_CHILDREN = 1<<11 , MENU_WINDOW = 1<<12 , TOOLTIP_WINDOW = 1<<13 , MODAL = 1<<14 , NO_OVERLAY = 1<<15 , GROUP_RELATIVE = 1<<16 , COPIED_TOOLTIP = 1<<17 , USERFLAG3 = 1<<29 , USERFLAG2 = 1<<30 , USERFLAG1 = 1<<31 } | |
| flags possible values enumeration. More... | ||
Static Protected Member Functions inherited from Fl_Text_Display | ||
| static void | buffer_modified_cb (int pos, int nInserted, int nDeleted, int nRestyled, const char *deletedText, void *cbArg) | |
| This is called whenever the buffer is modified. | ||
| static void | buffer_predelete_cb (int pos, int nDeleted, void *cbArg) | |
| This is called before any characters are deleted. | ||
| static void | h_scrollbar_cb (Fl_Scrollbar *w, Fl_Text_Display *d) | |
| Callbacks for drag or valueChanged on scrollbars. | ||
| static void | scroll_timer_cb (void *) | |
| Timer callback for scroll events. | ||
| static void | v_scrollbar_cb (Fl_Scrollbar *w, Fl_Text_Display *d) | |
| Callbacks for drag or valueChanged on scrollbars. | ||
Protected Attributes inherited from Fl_Text_Display | ||
| int | damage_range1_end | |
| int | damage_range1_start | |
| int | damage_range2_end | |
| int | damage_range2_start | |
| int | display_insert_position_hint | |
| int | dragging | |
| int | dragPos | |
| int | dragType | |
| int | mAbsTopLineNum | |
| Fl_Text_Buffer * | mBuffer | |
| double | mColumnScale | |
| int | mContinuousWrap | |
| Fl_Color | mCursor_color | |
| int | mCursorOldY | |
| int | mCursorOn | |
| int | mCursorPos | |
| int | mCursorPreferredXPos | |
| int | mCursorStyle | |
| int | mCursorToHint | |
| int | mFirstChar | |
| void * | mHighlightCBArg | |
| int | mHorizOffset | |
| int | mHorizOffsetHint | |
| Fl_Scrollbar * | mHScrollBar | |
| int | mLastChar | |
| int | mLineNumLeft | |
| int | mLineNumWidth | |
| int * | mLineStarts | |
| int | mMaxsize | |
| int | mModifyingTabDistance | |
| int | mNBufferLines | |
| int | mNeedAbsTopLineNum | |
| int | mNLinesDeleted | |
| int | mNStyles | |
| int | mNVisibleLines | |
| Fl_Text_Buffer * | mStyleBuffer | |
| const Style_Table_Entry * | mStyleTable | |
| int | mSuppressResync | |
| int | mTopLineNum | |
| int | mTopLineNumHint | |
| Unfinished_Style_Cb | mUnfinishedHighlightCB | |
| char | mUnfinishedStyle | |
| Fl_Scrollbar * | mVScrollBar | |
| int | mWrapMarginPix | |
| Fl_Align | scrollbar_align_ | |
| int | scrollbar_width_ | |
| int | shortcut_ | |
| struct { | ||
| int h | ||
| int w | ||
| int x | ||
| int y | ||
| } | text_area | |
| Fl_Color | textcolor_ | |
| Fl_Font | textfont_ | |
| Fl_Fontsize | textsize_ | |
This is the FLTK text editor widget.
It allows the user to edit multiple lines of text and supports highlighting and scrolling. The buffer that is displayed in the widget is managed by the Fl_Text_Buffer class.
|
virtual |
Event handling.
Reimplemented from Fl_Text_Display.
|
inline |
Gets the current insert mode; if non-zero, new text is inserted before the current cursor position.
Otherwise, new text replaces text at the current cursor position.
|
inline |
Sets the current insert mode; if non-zero, new text is inserted before the current cursor position.
Otherwise, new text replaces text at the current cursor position.
|
static |
Undo last edit in the current buffer.
Also deselect previous selection.