/packages/gtk2/src/gtk+/gtk/gtktextiter.inc

https://github.com/slibre/freepascal · Pascal · 199 lines · 117 code · 20 blank · 62 comment · 0 complexity · bb44fc1cf8f95e4b947ca758aaf2f3bd MD5 · raw file

  1. // included by gtk2.pas
  2. {$IFDEF read_forward_definitions}
  3. {$ENDIF read_forward_definitions}
  4. //------------------------------------------------------------------------------
  5. {$IFDEF read_interface_types}
  6. { Possible future plans: SEARCH_CASE_INSENSITIVE, SEARCH_REGEXP }
  7. PGtkTextSearchFlags = ^TGtkTextSearchFlags;
  8. TGtkTextSearchFlags = longint;
  9. { GtkTextIter is an opaque datatype; ignore all these fields.
  10. Initialize the iter with gtk_text_buffer_get_iter_
  11. functions
  12. }
  13. {< private > }
  14. { padding }
  15. PGtkTextIter = ^TGtkTextIter;
  16. TGtkTextIter = record
  17. dummy1 : gpointer;
  18. dummy2 : gpointer;
  19. dummy3 : gint;
  20. dummy4 : gint;
  21. dummy5 : gint;
  22. dummy6 : gint;
  23. dummy7 : gint;
  24. dummy8 : gint;
  25. dummy9 : gpointer;
  26. dummy10 : gpointer;
  27. dummy11 : gint;
  28. dummy12 : gint;
  29. dummy13 : gint;
  30. dummy14 : gpointer;
  31. end;
  32. TGtkTextCharPredicate = function (ch:gunichar; user_data:gpointer):gboolean; cdecl;
  33. {$ENDIF read_interface_types}
  34. //------------------------------------------------------------------------------
  35. {$IFDEF read_interface_rest}
  36. const
  37. GTK_TEXT_SEARCH_VISIBLE_ONLY = 0; (* values of TGtkTextSearchFlags *)
  38. GTK_TEXT_SEARCH_TEXT_ONLY = 1;
  39. {
  40. Iter: represents a location in the text. Becomes invalid if the
  41. characters/pixmaps/widgets (indexable objects) in the text buffer
  42. are changed.
  43. }
  44. function GTK_TYPE_TEXT_ITER : GType;
  45. { This is primarily intended for language bindings that want to avoid
  46. a "buffer" argument to text insertions, deletions, etc. }
  47. function gtk_text_iter_get_buffer(iter:PGtkTextIter):PGtkTextBuffer; cdecl; external gtklib;
  48. {
  49. Life cycle
  50. }
  51. function gtk_text_iter_copy(iter:PGtkTextIter):PGtkTextIter; cdecl; external gtklib;
  52. procedure gtk_text_iter_free(iter:PGtkTextIter); cdecl; external gtklib;
  53. function gtk_text_iter_get_type:GType; cdecl; external gtklib;
  54. {
  55. Convert to different kinds of index
  56. }
  57. function gtk_text_iter_get_offset(iter:PGtkTextIter):gint; cdecl; external gtklib;
  58. function gtk_text_iter_get_line(iter:PGtkTextIter):gint; cdecl; external gtklib;
  59. function gtk_text_iter_get_line_offset(iter:PGtkTextIter):gint; cdecl; external gtklib;
  60. function gtk_text_iter_get_line_index(iter:PGtkTextIter):gint; cdecl; external gtklib;
  61. function gtk_text_iter_get_visible_line_offset(iter:PGtkTextIter):gint; cdecl; external gtklib;
  62. function gtk_text_iter_get_visible_line_index(iter:PGtkTextIter):gint; cdecl; external gtklib;
  63. {
  64. "Dereference" operators
  65. }
  66. function gtk_text_iter_get_char(iter:PGtkTextIter):gunichar; cdecl; external gtklib;
  67. { includes the 0xFFFC char for pixmaps/widgets, so char offsets
  68. into the returned string map properly into buffer char offsets
  69. }
  70. function gtk_text_iter_get_slice(start:PGtkTextIter; theEnd:PGtkTextIter):Pgchar; cdecl; external gtklib;
  71. { includes only text, no 0xFFFC }
  72. function gtk_text_iter_get_text(start:PGtkTextIter; theEnd:PGtkTextIter):Pgchar; cdecl; external gtklib;
  73. { exclude invisible chars }
  74. function gtk_text_iter_get_visible_slice(start:PGtkTextIter; theEnd:PGtkTextIter):Pgchar; cdecl; external gtklib;
  75. function gtk_text_iter_get_visible_text(start:PGtkTextIter; theEnd:PGtkTextIter):Pgchar; cdecl; external gtklib;
  76. function gtk_text_iter_get_pixbuf(iter:PGtkTextIter):PGdkPixbuf; cdecl; external gtklib;
  77. function gtk_text_iter_get_marks(iter:PGtkTextIter):PGSList; cdecl; external gtklib;
  78. function gtk_text_iter_get_child_anchor(iter:PGtkTextIter):PGtkTextChildAnchor; cdecl; external gtklib;
  79. { Return list of tags toggled at this point (toggled_on determines
  80. whether the list is of on-toggles or off-toggles)
  81. }
  82. function gtk_text_iter_get_toggled_tags(iter:PGtkTextIter; toggled_on:gboolean):PGSList; cdecl; external gtklib;
  83. function gtk_text_iter_begins_tag(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  84. function gtk_text_iter_ends_tag(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  85. function gtk_text_iter_toggles_tag(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  86. function gtk_text_iter_has_tag(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  87. function gtk_text_iter_get_tags(iter:PGtkTextIter):PGSList; cdecl; external gtklib;
  88. function gtk_text_iter_editable(iter:PGtkTextIter; default_setting:gboolean):gboolean; cdecl; external gtklib;
  89. function gtk_text_iter_can_insert(iter:PGtkTextIter; default_editability:gboolean):gboolean; cdecl; external gtklib;
  90. function gtk_text_iter_starts_word(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  91. function gtk_text_iter_ends_word(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  92. function gtk_text_iter_inside_word(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  93. function gtk_text_iter_starts_sentence(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  94. function gtk_text_iter_ends_sentence(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  95. function gtk_text_iter_inside_sentence(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  96. function gtk_text_iter_starts_line(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  97. function gtk_text_iter_ends_line(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  98. function gtk_text_iter_is_cursor_position(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  99. function gtk_text_iter_get_chars_in_line(iter:PGtkTextIter):gint; cdecl; external gtklib;
  100. function gtk_text_iter_get_bytes_in_line(iter:PGtkTextIter):gint; cdecl; external gtklib;
  101. function gtk_text_iter_get_attributes(iter:PGtkTextIter; values:PGtkTextAttributes):gboolean; cdecl; external gtklib;
  102. function gtk_text_iter_get_language(iter:PGtkTextIter):PPangoLanguage; cdecl; external gtklib;
  103. function gtk_text_iter_is_end(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  104. function gtk_text_iter_is_start(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  105. {
  106. Moving around the buffer
  107. }
  108. function gtk_text_iter_forward_char(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  109. function gtk_text_iter_backward_char(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  110. function gtk_text_iter_forward_chars(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  111. function gtk_text_iter_backward_chars(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  112. function gtk_text_iter_forward_line(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  113. function gtk_text_iter_backward_line(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  114. function gtk_text_iter_forward_lines(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  115. function gtk_text_iter_backward_lines(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  116. function gtk_text_iter_forward_word_end(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  117. function gtk_text_iter_backward_word_start(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  118. function gtk_text_iter_forward_word_ends(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  119. function gtk_text_iter_backward_word_starts(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  120. function gtk_text_iter_forward_sentence_end(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  121. function gtk_text_iter_backward_sentence_start(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  122. function gtk_text_iter_forward_sentence_ends(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  123. function gtk_text_iter_backward_sentence_starts(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  124. { cursor positions are almost equivalent to chars, but not quite;
  125. in some languages, you can't put the cursor between certain
  126. chars. Also, you can't put the cursor between \r\n at the theEnd
  127. of a line.
  128. }
  129. function gtk_text_iter_forward_cursor_position(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  130. function gtk_text_iter_backward_cursor_position(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  131. function gtk_text_iter_forward_cursor_positions(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  132. function gtk_text_iter_backward_cursor_positions(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  133. procedure gtk_text_iter_set_offset(iter:PGtkTextIter; char_offset:gint); cdecl; external gtklib;
  134. procedure gtk_text_iter_set_line(iter:PGtkTextIter; line_number:gint); cdecl; external gtklib;
  135. procedure gtk_text_iter_set_line_offset(iter:PGtkTextIter; char_on_line:gint); cdecl; external gtklib;
  136. procedure gtk_text_iter_set_line_index(iter:PGtkTextIter; byte_on_line:gint); cdecl; external gtklib;
  137. procedure gtk_text_iter_forward_to_end(iter:PGtkTextIter); cdecl; external gtklib;
  138. function gtk_text_iter_forward_to_line_end(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  139. procedure gtk_text_iter_set_visible_line_offset(iter:PGtkTextIter; char_on_line:gint); cdecl; external gtklib;
  140. procedure gtk_text_iter_set_visible_line_index(iter:PGtkTextIter; byte_on_line:gint); cdecl; external gtklib;
  141. { returns TRUE if a toggle was found; NULL for the tag pointer
  142. means "any tag toggle", otherwise the next toggle of the
  143. specified tag is located.
  144. }
  145. function gtk_text_iter_forward_to_tag_toggle(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  146. function gtk_text_iter_backward_to_tag_toggle(iter:PGtkTextIter; tag:PGtkTextTag):gboolean; cdecl; external gtklib;
  147. function gtk_text_iter_forward_find_char(iter:PGtkTextIter; pred:TGtkTextCharPredicate; user_data:gpointer; limit:PGtkTextIter):gboolean; cdecl; external gtklib;
  148. function gtk_text_iter_backward_find_char(iter:PGtkTextIter; pred:TGtkTextCharPredicate; user_data:gpointer; limit:PGtkTextIter):gboolean; cdecl; external gtklib;
  149. function gtk_text_iter_forward_search(iter:PGtkTextIter; str:Pgchar; flags:TGtkTextSearchFlags; match_start:PGtkTextIter; match_end:PGtkTextIter;
  150. limit:PGtkTextIter):gboolean; cdecl; external gtklib;
  151. function gtk_text_iter_backward_search(iter:PGtkTextIter; str:Pgchar; flags:TGtkTextSearchFlags; match_start:PGtkTextIter; match_end:PGtkTextIter;
  152. limit:PGtkTextIter):gboolean; cdecl; external gtklib;
  153. {
  154. Comparisons
  155. }
  156. function gtk_text_iter_equal(lhs:PGtkTextIter; rhs:PGtkTextIter):gboolean; cdecl; external gtklib;
  157. function gtk_text_iter_compare(lhs:PGtkTextIter; rhs:PGtkTextIter):gint; cdecl; external gtklib;
  158. function gtk_text_iter_in_range(iter:PGtkTextIter; start:PGtkTextIter; theEnd:PGtkTextIter):gboolean; cdecl; external gtklib;
  159. { Put these two in ascending order }
  160. procedure gtk_text_iter_order(first:PGtkTextIter; second:PGtkTextIter); cdecl; external gtklib;
  161. {$ifdef HasGTK2_4}
  162. function gtk_text_iter_backward_visible_cursor_position(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  163. function gtk_text_iter_backward_visible_cursor_positions(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  164. function gtk_text_iter_backward_visible_word_start(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  165. function gtk_text_iter_backward_visible_word_starts(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  166. function gtk_text_iter_forward_visible_cursor_position(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  167. function gtk_text_iter_forward_visible_cursor_positions(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  168. function gtk_text_iter_forward_visible_word_end(iter:PGtkTextIter):gboolean; cdecl; external gtklib;
  169. function gtk_text_iter_forward_visible_word_ends(iter:PGtkTextIter; count:gint):gboolean; cdecl; external gtklib;
  170. {$endif}
  171. {$ENDIF read_interface_rest}
  172. //------------------------------------------------------------------------------
  173. {$IFDEF read_implementation}
  174. function GTK_TYPE_TEXT_ITER : GType;
  175. begin
  176. GTK_TYPE_TEXT_ITER:=gtk_text_iter_get_type;
  177. end;
  178. {$ENDIF read_implementation}
  179. // included by gtk2.pas