diff options
Diffstat (limited to 'doc/fl_text_display.html')
-rw-r--r-- | doc/fl_text_display.html | 726 |
1 files changed, 679 insertions, 47 deletions
diff --git a/doc/fl_text_display.html b/doc/fl_text_display.html index 723c5fe..54b2f54 100644 --- a/doc/fl_text_display.html +++ b/doc/fl_text_display.html @@ -1,4 +1,3 @@ - <!DOCTYPE html> <html lang="en"> @@ -14,6 +13,9 @@ <h2>Fl_Text_Display Binding Map</h2> +<a href="index.html">Back to Index</a> + + <table class="package"> <tr><th colspan="2">Package name</th></tr> @@ -40,22 +42,39 @@ </tr> <tr> - <td>enum { NORMAL_CURSOR, CARET_CURSOR, DIM_CURSOR, BLOCK_CURSOR, HEAVY_CURSOR, SIMPLE_CURSOR }</td> + <td>enum {<br /> + NORMAL_CURSOR,<br /> + CARET_CURSOR,<br /> + DIM_CURSOR,<br /> + BLOCK_CURSOR,<br /> + HEAVY_CURSOR,<br /> + SIMPLE_CURSOR }</td> <td>Cursor_Style</td> </tr> <tr> - <td>enum { CURSOR_POS, CHARACTER_POS }</td> - <td> </td> + <td>enum {<br /> + CURSOR_POS,<br /> + CHARACTER_POS }</td> + <td>Position_Kind</td> </tr> <tr> - <td>enum { DRAG_NONE = -2, DRAG_START_DND = -1, DRAG_CHAR = 0, DRAG_WORD = 1, DRAG_LINE = 2 }</td> + <td>enum {<br /> + DRAG_NONE = -2,<br /> + DRAG_START_DND = -1,<br /> + DRAG_CHAR = 0,<br /> + DRAG_WORD = 1,<br /> + DRAG_LINE = 2 }</td> <td> </td> </tr> <tr> - <td>enum { WRAP_NONE, WRAP_AT_COLUMN, WRAP_AT_PIXEL, WRAP_AT_BOUNDS }</td> + <td>enum {<br /> + WRAP_NONE,<br /> + WRAP_AT_COLUMN,<br /> + WRAP_AT_PIXEL,<br /> + WRAP_AT_BOUNDS }</td> <td>Wrap_Mode</td> </tr> @@ -70,21 +89,44 @@ </tr> <tr> - <td> </td> + <td>uchar</td> <td>Style_Index</td> </tr> <tr> - <td> </td> + <td>Style_Table_Entry *</td> <td>Style_Array</td> </tr> + <tr> + <td>int</td> + <td>Style_Mask</td> + </tr> + + <tr> + <td>int</td> + <td>Style_Info</td> + </tr> + </table> <table class="function"> - <tr><th colspan="2">Functions and Procedures</th></tr> + <tr><th colspan="2">Protected Attributes</th></tr> + + <tr> +<td colspan="2" style="text-align:center"> +Too many to list. None that look suited for public API usage. +</td> + </tr> + +</table> + + + +<table class="function"> + <tr><th colspan="2">Constructors</th></tr> <tr> <td><pre> @@ -93,14 +135,34 @@ Fl_Text_Display(int X, int Y, int W, int H, const char *L=0); <td><pre> function Create (X, Y, W, H : in Integer; - Text : in String) + Text : in String := "") return Text_Display; </pre></td> </tr> <tr> +<td>Rely on the automatic use of begin when a group is created, or use begin/end +explicitly, or add each widget to its intended parent group manually.</td> +<td><pre> +function Create + (Parent : in out Groups.Group'Class; + X, Y, W, H : in Integer; + Text : in String := "") + return Text_Display; +</pre></td> + </tr> + +</table> + + + +<table class="function"> + <tr><th colspan="2">Functions and Procedures</th></tr> + + <tr> <td><pre> void buffer(Fl_Text_Buffer *buf); + void buffer(Fl_Text_Buffer &buf); </pre></td> <td><pre> @@ -135,7 +197,8 @@ function Col_To_X <tr> <td><pre> -int count_lines(int start, int end, bool start_pos_is_line_start) const; +int count_lines(int start, int end, + bool start_pos_is_line_start) const; </pre></td> <td><pre> function Count_Lines @@ -181,16 +244,6 @@ procedure Set_Cursor_Style <tr> <td><pre> -virtual void draw(); -</pre></td> -<td><pre> -procedure Draw - (This : in out Text_Display); -</pre></td> - </tr> - - <tr> -<td><pre> virtual int handle(int e); </pre></td> <td><pre> @@ -282,19 +335,9 @@ function Get_Insert_Position </tr> <tr> -<td> </td> <td><pre> -function Item - (Tint : in Color; - Font : in Font_Kind; - Size : in Font_Size) - return Style_Entry; -</pre></td> - </tr> - - <tr> -<td><pre> -int line_end(int startPos, bool startPosIsLineStart) const; +int line_end(int startPos, + bool startPosIsLineStart) const; </pre></td> <td><pre> function Line_End @@ -407,16 +450,24 @@ function Get_Linenumber_Font <tr> <td><pre> -void linenumber_format(const char *val); +const char * linenumber_format() const; +</pre></td> +<td><pre> +function Get_Linenumber_Format + (This : in Text_Display) + return String; </pre></td> -<td> </td> </tr> <tr> <td><pre> -const char * linenumber_format() const; +void linenumber_format(const char *val); +</pre></td> +<td><pre> +procedure Set_Linenumber_Format + (This : in out Text_Display; + Value : in String); </pre></td> -<td> </td> </tr> <tr> @@ -470,6 +521,10 @@ int move_down(); <td><pre> procedure Move_Down (This : in out Text_Display); + +function Move_Down + (This : in out Text_Display) + return Boolean; </pre></td> </tr> @@ -480,6 +535,10 @@ int move_left(); <td><pre> procedure Move_Left (This : in out Text_Display); + +function Move_Left + (This : in out Text_Display) + return Boolean; </pre></td> </tr> @@ -490,6 +549,10 @@ int move_right(); <td><pre> procedure Move_Right (This : in out Text_Display); + +function Move_Right + (This : in out Text_Display) + return Boolean; </pre></td> </tr> @@ -500,6 +563,10 @@ int move_up(); <td><pre> procedure Move_Up (This : in out Text_Display); + +function Move_Up + (This : in out Text_Display) + return Boolean; </pre></td> </tr> @@ -526,9 +593,17 @@ procedure Overstrike <tr> <td><pre> -int position_style(int lineStartPos, int lineLen, int lineIndex) const; +int position_style(int lineStartPos, int lineLen, + int lineIndex) const; +</pre></td> +<td><pre> +function Position_Style + (This : in Text_Display; + Line_Start : in Natural; + Line_Length : in Natural; + Line_Index : in Natural) + return Styles.Style_Info; </pre></td> -<td> </td> </tr> <tr> @@ -569,7 +644,11 @@ procedure Redisplay_Range <td><pre> virtual void resize(int X, int Y, int W, int H); </pre></td> -<td> </td> +<td><pre> +procedure Resize + (This : in out Text_Display; + X, Y, W, H : in Integer); +</pre></td> </tr> <tr> @@ -590,8 +669,9 @@ void scroll(int topLineNum, int horizOffset); </pre></td> <td><pre> procedure Scroll_To - (This : in out Text_Display; - Line : in Natural); + (This : in out Text_Display; + Line : in Natural; + Column : in Natural := 0); </pre></td> </tr> @@ -643,14 +723,22 @@ procedure Set_Scrollbar_Width <td><pre> int shortcut() const; </pre></td> -<td> </td> +<td><pre> +function Get_Shortcut + (This : in Text_Display) + return Key_Combo; +</pre></td> </tr> <tr> <td><pre> void shortcut(int s); </pre></td> -<td> </td> +<td><pre> +procedure Set_Shortcut + (This : in out Text_Display; + Value : in Key_Combo); +</pre></td> </tr> <tr> @@ -675,7 +763,8 @@ procedure Show_Insert_Position <tr> <td><pre> -int skip_lines(int startPos, int nLines, bool startPosIsLineStart); +int skip_lines(int startPos, int nLines, + bool startPosIsLineStart); </pre></td> <td><pre> function Skip_Lines @@ -792,14 +881,24 @@ procedure Set_Wrap_Mode <td><pre> int wrapped_column(int row, int column) const; </pre></td> -<td> </td> +<td><pre> +function Wrapped_Column + (This : in Text_Display; + Row, Column : in Natural) + return Natural; +</pre></td> </tr> <tr> <td><pre> int wrapped_row(int row) const; </pre></td> -<td> </td> +<td><pre> +function Wrapped_Row + (This : in Text_Display; + Row : in Natural) + return Natural; +</pre></td> </tr> <tr> @@ -817,6 +916,539 @@ function X_To_Col </table> + +<table class="function"> + <tr><th colspan="2">Static Protected Functions and Procedures</th></tr> + + <tr> +<td><pre> +static void buffer_modified_cb(int pos, int nInserted, int nDeleted, + int nRestyled, const char *deletedText, void *cbArg); +</pre></td> +<td><pre> +procedure Buffer_Modified_Callback + (This : in out Text_Display; + Action : in FLTK.Text_Buffers.Modification; + Place : in FLTK.Text_Buffers.Position; + Length : in Natural; + Deleted_Text : in String); +</pre></td> + </tr> + + <tr> +<td><pre> +static void buffer_predelete_cb(int pos, int nDeleted, void *cbArg); +</pre></td> +<td><pre> +procedure Buffer_Predelete_Callback + (This : in out Text_Display; + Place : in FLTK.Text_Buffers.Position; + Length : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +static void h_scrollbar_cb(Fl_Scrollbar *w, Fl_Text_Display *d); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +static void scroll_timer_cb(void *); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +static void v_scrollbar_cb(Fl_Scrollbar *w, Fl_Text_Display *d); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + +</table> + + + +<table class="function"> + <tr><th colspan="2">Protected Functions and Procedures</th></tr> + + <tr> +<td><pre> +void absolute_top_line_number(int oldFirstChar); +</pre></td> +<td><pre> +procedure Redo_Absolute_Top_Line + (This : in out Text_Display; + Old_First : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +void calc_last_char(); +</pre></td> +<td><pre> +procedure Calculate_Last_Character + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +void calc_line_starts(int startLine, int endLine); +</pre></td> +<td><pre> +procedure Calculate_Line_Starts + (This : in out Text_Display; + Start, Finish : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +void clear_rect(int style, int x, int y, int width, + int height) const; +</pre></td> +<td><pre> +procedure Clear_Rect + (This : in out Text_Display; + Style : in Styles.Style_Info; + X, Y, W, H : in Integer); +</pre></td> + </tr> + + <tr> +<td><pre> +void display_insert(); +</pre></td> +<td><pre> +procedure Display_Insert + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +virtual void draw(); +</pre></td> +<td><pre> +procedure Draw + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_cursor(int, int); +</pre></td> +<td><pre> +procedure Draw_Cursor + (This : in out Text_Display; + X, Y : in Integer); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_line_numbers(bool clearAll); +</pre></td> +<td><pre> +procedure Draw_Line_Numbers + (This : in out Text_Display; + Clear : in Boolean := False); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_range(int start, int end); +</pre></td> +<td><pre> +procedure Draw_Range + (This : in out Text_Display; + Start, Finish : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_string(int style, int x, int y, int toX, + const char *string, int nChars) const; +</pre></td> +<td><pre> +procedure Draw_String + (This : in out Text_Display; + Style : in Styles.Style_Info; + X, Y : in Integer; + Right : in Integer; + Text : in String; + Num_Chars : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_text(int x, int y, int w, int h); +</pre></td> +<td><pre> +procedure Draw_Text + (This : in out Text_Display; + X, Y, W, H : in Integer); +</pre></td> + </tr> + + <tr> +<td><pre> +void draw_vline(int visLineNum, int leftClip, int rightClip, + int leftCharIndex, int rightCharIndex); +</pre></td> +<td><pre> +procedure Draw_Visible_Line + (This : in out Text_Display; + Line : in Natural; + Left_Clip, Right_Clip : in Integer; + Left_Char, Right_Char : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +int empty_vlines() const; +</pre></td> +<td><pre> +function Has_Empty_Visible_Lines + (This : in Text_Display) + return Boolean; +</pre></td> + </tr> + + <tr> +<td><pre> +void extend_range_for_styles(int *start, int *end); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +void find_line_end(int pos, bool start_pos_is_line_start, + int *lineEnd, int *nextLineStart) const; +</pre></td> +<td><pre> +procedure Find_Line_End + (This : in Text_Display; + Start : in Natural; + Start_Pos_Is_Line_Start : in Boolean; + Line_End : out Natural; + Next_Line_Start : out Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +void find_wrap_range(const char *deletedText, int pos, + int nInserted, int nDeleted, int *modRangeStart, + int *modRangeEnd, int *linesInserted, int *linesDeleted); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +int find_x(const char *s, int len, int style, int x) const; +</pre></td> +<td><pre> +function Find_Character + (This : in Text_Display; + Text : in String; + Style : in Styles.Style_Index; + X : in Integer) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +int get_absolute_top_line_number() const; +</pre></td> +<td><pre> +function Get_Absolute_Top_Line + (This : in Text_Display) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +int handle_vline(int mode, int lineStart, int lineLen, + int leftChar, int rightChar, int topClip, int bottomClip, + int leftClip, int rightClip) const; +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +int longest_vline() const; +</pre></td> +<td><pre> +function Get_Longest_Visible_Line + (This : in Text_Display) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +void maintain_absolute_top_line_number(int state); +</pre></td> +<td><pre> +procedure Maintain_Absolute_Top_Line + (This : in out Text_Display; + State : in Boolean := True); +</pre></td> + </tr> + + <tr> +<td><pre> +int maintaining_absolute_top_line_number() const; +</pre></td> +<td><pre> +function Maintaining_Absolute_Top_Line + (This : in Text_Display) + return Boolean; +</pre></td> + </tr> + + <tr> +<td><pre> +void measure_deleted_lines(int pos, int nDeleted); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +double measure_proportional_character(const char *s, int colNum, + int pos) const; +</pre></td> +<td><pre> +function Measure_Character + (This : in Text_Display; + Text : in String; + X : in Integer; + Index : in Positive) + return Long_Float; +</pre></td> + </tr> + + <tr> +<td><pre> +int measure_vline(int visLineNum) const; +</pre></td> +<td><pre> +function Measure_Visible_Line + (This : in Text_Display; + Line : in Natural) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +void offset_line_starts(int newTopLineNum); +</pre></td> +<td><pre> +procedure Offset_Line_Starts + (This : in out Text_Display; + New_Top : in Natural); +</pre></td> + </tr> + + <tr> +<td><pre> +int position_to_line(int pos, int *lineNum) const; +</pre></td> +<td><pre> +function Position_To_Line + (This : in Text_Display; + Position : in Natural) + return Natural; + +function Position_To_Line + (This : in Text_Display; + Position : in Natural; + Displayed : out Boolean) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +int position_to_linecol(int pos, int *lineNum, int *column) const; +</pre></td> +<td><pre> +procedure Position_To_Line_Column + (This : in Text_Display; + Position : in Natural; + Line : out Natural; + Column : out Natural); + +procedure Position_To_Line_Column + (This : in Text_Display; + Position : in Natural; + Line : out Natural; + Column : out Natural; + Displayed : out Boolean); +</pre></td> + </tr> + + <tr> +<td><pre> +void reset_absolute_top_line_number(); +</pre></td> +<td><pre> +procedure Reset_Absolute_Top_Line + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +int scroll_(int topLineNum, int horizOffset); +</pre></td> +<td><pre> +function Scroll_To + (This : in out Text_Display; + Line : in Natural; + Pixel : in Natural := 0) + return Boolean; +</pre></td> + </tr> + + <tr> +<td><pre> +double string_width(const char *string, int length, + int style) const; +</pre></td> +<td><pre> +function Measure_String + (This : in Text_Display; + Text : in String; + Style : in Styles.Style_Index) + return Long_Float; +</pre></td> + </tr> + + <tr> +<td><pre> +void update_h_scrollbar(); +</pre></td> +<td><pre> +procedure Update_Horizontal_Scrollbar + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +void update_line_starts(int pos, int charsInserted, + int charsDeleted, int linesInserted, int linesDeleted, + int *scrolled); +</pre></td> +<td>Intentionally left unbound.</td> + </tr> + + <tr> +<td><pre> +void update_v_scrollbar(); +</pre></td> +<td><pre> +procedure Update_Vertical_Scrollbar + (This : in out Text_Display); +</pre></td> + </tr> + + <tr> +<td><pre> +int vline_length(int visLineNum) const; +</pre></td> +<td><pre> +function Visible_Line_Length + (This : in Text_Display; + Line : in Natural) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +int wrap_uses_character(int lineEndPos) const; +</pre></td> +<td><pre> +function Wrap_Uses_Character + (This : in Text_Display; + Line_End : in Natural) + return Boolean; +</pre></td> + </tr> + + <tr> +<td><pre> +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; +</pre></td> +<td><pre> +procedure Count_Wrapped_Lines + (This : in Text_Display; + Buffer : in FLTK.Text_Buffers.Text_Buffer; + Start : in Natural; + Max_Position, Max_Lines : in Natural; + Start_Pos_Is_Line_Start : in Boolean; + Style_Offset : in Natural; + Finish, Line_Count : out Natural; + End_Count_Line_Start : out Natural; + Last_Line_End : out Natural; + Count_Last_Missing_Newline : in Boolean := True); +</pre></td> + </tr> + + <tr> +<td><pre> +int xy_to_position(int x, int y, int PosType=CHARACTER_POS) const; +</pre></td> +<td><pre> +function XY_To_Position + (This : in Text_Display; + X, Y : in Integer; + Kind : in Position_Kind := Character_Position) + return Natural; +</pre></td> + </tr> + + <tr> +<td><pre> +void xy_to_rowcol(int x, int y, int *row, int *column, + int PosType=CHARACTER_POS) const; +</pre></td> +<td><pre> +procedure XY_To_Row_Column + (This : in Text_Display; + X, Y : in Integer; + Row, Column : out Natural; + Kind : in Position_Kind := Character_Position); +</pre></td> + </tr> + +</table> + + </body> </html> |