class_textedit.rst 49 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800
  1. .. Generated automatically by doc/tools/makerst.py in Godot's source tree.
  2. .. DO NOT EDIT THIS FILE, but the TextEdit.xml source instead.
  3. .. The source is found in doc/classes or modules/<name>/doc_classes.
  4. .. _class_TextEdit:
  5. TextEdit
  6. ========
  7. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  8. **Category:** Core
  9. Brief Description
  10. -----------------
  11. Multiline text editing control.
  12. Properties
  13. ----------
  14. +-----------------------------+-------------------------------------------------------------------------------------------+
  15. | :ref:`bool<class_bool>` | :ref:`breakpoint_gutter<class_TextEdit_property_breakpoint_gutter>` |
  16. +-----------------------------+-------------------------------------------------------------------------------------------+
  17. | :ref:`bool<class_bool>` | :ref:`caret_blink<class_TextEdit_property_caret_blink>` |
  18. +-----------------------------+-------------------------------------------------------------------------------------------+
  19. | :ref:`float<class_float>` | :ref:`caret_blink_speed<class_TextEdit_property_caret_blink_speed>` |
  20. +-----------------------------+-------------------------------------------------------------------------------------------+
  21. | :ref:`bool<class_bool>` | :ref:`caret_block_mode<class_TextEdit_property_caret_block_mode>` |
  22. +-----------------------------+-------------------------------------------------------------------------------------------+
  23. | :ref:`bool<class_bool>` | :ref:`caret_moving_by_right_click<class_TextEdit_property_caret_moving_by_right_click>` |
  24. +-----------------------------+-------------------------------------------------------------------------------------------+
  25. | :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_TextEdit_property_context_menu_enabled>` |
  26. +-----------------------------+-------------------------------------------------------------------------------------------+
  27. | :ref:`bool<class_bool>` | :ref:`draw_spaces<class_TextEdit_property_draw_spaces>` |
  28. +-----------------------------+-------------------------------------------------------------------------------------------+
  29. | :ref:`bool<class_bool>` | :ref:`draw_tabs<class_TextEdit_property_draw_tabs>` |
  30. +-----------------------------+-------------------------------------------------------------------------------------------+
  31. | :ref:`bool<class_bool>` | :ref:`fold_gutter<class_TextEdit_property_fold_gutter>` |
  32. +-----------------------------+-------------------------------------------------------------------------------------------+
  33. | :ref:`int<class_int>` | :ref:`hiding_enabled<class_TextEdit_property_hiding_enabled>` |
  34. +-----------------------------+-------------------------------------------------------------------------------------------+
  35. | :ref:`bool<class_bool>` | :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` |
  36. +-----------------------------+-------------------------------------------------------------------------------------------+
  37. | :ref:`bool<class_bool>` | :ref:`highlight_current_line<class_TextEdit_property_highlight_current_line>` |
  38. +-----------------------------+-------------------------------------------------------------------------------------------+
  39. | :ref:`bool<class_bool>` | :ref:`override_selected_font_color<class_TextEdit_property_override_selected_font_color>` |
  40. +-----------------------------+-------------------------------------------------------------------------------------------+
  41. | :ref:`bool<class_bool>` | :ref:`readonly<class_TextEdit_property_readonly>` |
  42. +-----------------------------+-------------------------------------------------------------------------------------------+
  43. | :ref:`bool<class_bool>` | :ref:`show_line_numbers<class_TextEdit_property_show_line_numbers>` |
  44. +-----------------------------+-------------------------------------------------------------------------------------------+
  45. | :ref:`bool<class_bool>` | :ref:`smooth_scrolling<class_TextEdit_property_smooth_scrolling>` |
  46. +-----------------------------+-------------------------------------------------------------------------------------------+
  47. | :ref:`bool<class_bool>` | :ref:`syntax_highlighting<class_TextEdit_property_syntax_highlighting>` |
  48. +-----------------------------+-------------------------------------------------------------------------------------------+
  49. | :ref:`String<class_String>` | :ref:`text<class_TextEdit_property_text>` |
  50. +-----------------------------+-------------------------------------------------------------------------------------------+
  51. | :ref:`float<class_float>` | :ref:`v_scroll_speed<class_TextEdit_property_v_scroll_speed>` |
  52. +-----------------------------+-------------------------------------------------------------------------------------------+
  53. | :ref:`bool<class_bool>` | :ref:`wrap_enabled<class_TextEdit_property_wrap_enabled>` |
  54. +-----------------------------+-------------------------------------------------------------------------------------------+
  55. Methods
  56. -------
  57. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  58. | void | :ref:`add_color_region<class_TextEdit_method_add_color_region>` **(** :ref:`String<class_String>` begin_key, :ref:`String<class_String>` end_key, :ref:`Color<class_Color>` color, :ref:`bool<class_bool>` line_only=false **)** |
  59. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  60. | void | :ref:`add_keyword_color<class_TextEdit_method_add_keyword_color>` **(** :ref:`String<class_String>` keyword, :ref:`Color<class_Color>` color **)** |
  61. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  62. | :ref:`bool<class_bool>` | :ref:`can_fold<class_TextEdit_method_can_fold>` **(** :ref:`int<class_int>` line **)** const |
  63. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  64. | void | :ref:`clear_colors<class_TextEdit_method_clear_colors>` **(** **)** |
  65. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  66. | void | :ref:`clear_undo_history<class_TextEdit_method_clear_undo_history>` **(** **)** |
  67. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  68. | void | :ref:`copy<class_TextEdit_method_copy>` **(** **)** |
  69. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  70. | :ref:`int<class_int>` | :ref:`cursor_get_column<class_TextEdit_method_cursor_get_column>` **(** **)** const |
  71. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  72. | :ref:`int<class_int>` | :ref:`cursor_get_line<class_TextEdit_method_cursor_get_line>` **(** **)** const |
  73. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  74. | void | :ref:`cursor_set_column<class_TextEdit_method_cursor_set_column>` **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` adjust_viewport=true **)** |
  75. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  76. | void | :ref:`cursor_set_line<class_TextEdit_method_cursor_set_line>` **(** :ref:`int<class_int>` line, :ref:`bool<class_bool>` adjust_viewport=true, :ref:`bool<class_bool>` can_be_hidden=true, :ref:`int<class_int>` wrap_index=0 **)** |
  77. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  78. | void | :ref:`cut<class_TextEdit_method_cut>` **(** **)** |
  79. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  80. | void | :ref:`deselect<class_TextEdit_method_deselect>` **(** **)** |
  81. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  82. | void | :ref:`fold_all_lines<class_TextEdit_method_fold_all_lines>` **(** **)** |
  83. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  84. | void | :ref:`fold_line<class_TextEdit_method_fold_line>` **(** :ref:`int<class_int>` line **)** |
  85. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  86. | :ref:`Array<class_Array>` | :ref:`get_breakpoints<class_TextEdit_method_get_breakpoints>` **(** **)** const |
  87. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  88. | :ref:`Color<class_Color>` | :ref:`get_keyword_color<class_TextEdit_method_get_keyword_color>` **(** :ref:`String<class_String>` keyword **)** const |
  89. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  90. | :ref:`String<class_String>` | :ref:`get_line<class_TextEdit_method_get_line>` **(** :ref:`int<class_int>` line **)** const |
  91. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  92. | :ref:`int<class_int>` | :ref:`get_line_count<class_TextEdit_method_get_line_count>` **(** **)** const |
  93. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  94. | :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_TextEdit_method_get_menu>` **(** **)** const |
  95. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  96. | :ref:`int<class_int>` | :ref:`get_selection_from_column<class_TextEdit_method_get_selection_from_column>` **(** **)** const |
  97. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  98. | :ref:`int<class_int>` | :ref:`get_selection_from_line<class_TextEdit_method_get_selection_from_line>` **(** **)** const |
  99. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  100. | :ref:`String<class_String>` | :ref:`get_selection_text<class_TextEdit_method_get_selection_text>` **(** **)** const |
  101. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  102. | :ref:`int<class_int>` | :ref:`get_selection_to_column<class_TextEdit_method_get_selection_to_column>` **(** **)** const |
  103. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  104. | :ref:`int<class_int>` | :ref:`get_selection_to_line<class_TextEdit_method_get_selection_to_line>` **(** **)** const |
  105. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  106. | :ref:`String<class_String>` | :ref:`get_word_under_cursor<class_TextEdit_method_get_word_under_cursor>` **(** **)** const |
  107. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  108. | :ref:`bool<class_bool>` | :ref:`has_keyword_color<class_TextEdit_method_has_keyword_color>` **(** :ref:`String<class_String>` keyword **)** const |
  109. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  110. | void | :ref:`insert_text_at_cursor<class_TextEdit_method_insert_text_at_cursor>` **(** :ref:`String<class_String>` text **)** |
  111. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  112. | :ref:`bool<class_bool>` | :ref:`is_folded<class_TextEdit_method_is_folded>` **(** :ref:`int<class_int>` line **)** const |
  113. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  114. | :ref:`bool<class_bool>` | :ref:`is_line_hidden<class_TextEdit_method_is_line_hidden>` **(** :ref:`int<class_int>` line **)** const |
  115. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  116. | :ref:`bool<class_bool>` | :ref:`is_selection_active<class_TextEdit_method_is_selection_active>` **(** **)** const |
  117. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  118. | void | :ref:`menu_option<class_TextEdit_method_menu_option>` **(** :ref:`int<class_int>` option **)** |
  119. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  120. | void | :ref:`paste<class_TextEdit_method_paste>` **(** **)** |
  121. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  122. | void | :ref:`redo<class_TextEdit_method_redo>` **(** **)** |
  123. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  124. | void | :ref:`remove_breakpoints<class_TextEdit_method_remove_breakpoints>` **(** **)** |
  125. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  126. | :ref:`PoolIntArray<class_PoolIntArray>` | :ref:`search<class_TextEdit_method_search>` **(** :ref:`String<class_String>` key, :ref:`int<class_int>` flags, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column **)** const |
  127. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  128. | void | :ref:`select<class_TextEdit_method_select>` **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_column **)** |
  129. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  130. | void | :ref:`select_all<class_TextEdit_method_select_all>` **(** **)** |
  131. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  132. | void | :ref:`set_line_as_hidden<class_TextEdit_method_set_line_as_hidden>` **(** :ref:`int<class_int>` line, :ref:`bool<class_bool>` enable **)** |
  133. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  134. | void | :ref:`toggle_fold_line<class_TextEdit_method_toggle_fold_line>` **(** :ref:`int<class_int>` line **)** |
  135. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | void | :ref:`undo<class_TextEdit_method_undo>` **(** **)** |
  137. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | void | :ref:`unfold_line<class_TextEdit_method_unfold_line>` **(** :ref:`int<class_int>` line **)** |
  139. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | void | :ref:`unhide_all_lines<class_TextEdit_method_unhide_all_lines>` **(** **)** |
  141. +-----------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. Theme Properties
  143. ----------------
  144. +---------------------------------+-----------------------------+
  145. | :ref:`Color<class_Color>` | background_color |
  146. +---------------------------------+-----------------------------+
  147. | :ref:`Color<class_Color>` | bookmark_color |
  148. +---------------------------------+-----------------------------+
  149. | :ref:`Color<class_Color>` | brace_mismatch_color |
  150. +---------------------------------+-----------------------------+
  151. | :ref:`Color<class_Color>` | breakpoint_color |
  152. +---------------------------------+-----------------------------+
  153. | :ref:`Color<class_Color>` | caret_background_color |
  154. +---------------------------------+-----------------------------+
  155. | :ref:`Color<class_Color>` | caret_color |
  156. +---------------------------------+-----------------------------+
  157. | :ref:`Color<class_Color>` | code_folding_color |
  158. +---------------------------------+-----------------------------+
  159. | :ref:`StyleBox<class_StyleBox>` | completion |
  160. +---------------------------------+-----------------------------+
  161. | :ref:`Color<class_Color>` | completion_background_color |
  162. +---------------------------------+-----------------------------+
  163. | :ref:`Color<class_Color>` | completion_existing_color |
  164. +---------------------------------+-----------------------------+
  165. | :ref:`Color<class_Color>` | completion_font_color |
  166. +---------------------------------+-----------------------------+
  167. | :ref:`int<class_int>` | completion_lines |
  168. +---------------------------------+-----------------------------+
  169. | :ref:`int<class_int>` | completion_max_width |
  170. +---------------------------------+-----------------------------+
  171. | :ref:`Color<class_Color>` | completion_scroll_color |
  172. +---------------------------------+-----------------------------+
  173. | :ref:`int<class_int>` | completion_scroll_width |
  174. +---------------------------------+-----------------------------+
  175. | :ref:`Color<class_Color>` | completion_selected_color |
  176. +---------------------------------+-----------------------------+
  177. | :ref:`Color<class_Color>` | current_line_color |
  178. +---------------------------------+-----------------------------+
  179. | :ref:`Color<class_Color>` | executing_line_color |
  180. +---------------------------------+-----------------------------+
  181. | :ref:`StyleBox<class_StyleBox>` | focus |
  182. +---------------------------------+-----------------------------+
  183. | :ref:`Texture<class_Texture>` | fold |
  184. +---------------------------------+-----------------------------+
  185. | :ref:`Texture<class_Texture>` | folded |
  186. +---------------------------------+-----------------------------+
  187. | :ref:`Font<class_Font>` | font |
  188. +---------------------------------+-----------------------------+
  189. | :ref:`Color<class_Color>` | font_color |
  190. +---------------------------------+-----------------------------+
  191. | :ref:`Color<class_Color>` | font_color_selected |
  192. +---------------------------------+-----------------------------+
  193. | :ref:`Color<class_Color>` | function_color |
  194. +---------------------------------+-----------------------------+
  195. | :ref:`Color<class_Color>` | line_number_color |
  196. +---------------------------------+-----------------------------+
  197. | :ref:`int<class_int>` | line_spacing |
  198. +---------------------------------+-----------------------------+
  199. | :ref:`Color<class_Color>` | mark_color |
  200. +---------------------------------+-----------------------------+
  201. | :ref:`Color<class_Color>` | member_variable_color |
  202. +---------------------------------+-----------------------------+
  203. | :ref:`StyleBox<class_StyleBox>` | normal |
  204. +---------------------------------+-----------------------------+
  205. | :ref:`Color<class_Color>` | number_color |
  206. +---------------------------------+-----------------------------+
  207. | :ref:`StyleBox<class_StyleBox>` | read_only |
  208. +---------------------------------+-----------------------------+
  209. | :ref:`Color<class_Color>` | safe_line_number_color |
  210. +---------------------------------+-----------------------------+
  211. | :ref:`Color<class_Color>` | selection_color |
  212. +---------------------------------+-----------------------------+
  213. | :ref:`Texture<class_Texture>` | space |
  214. +---------------------------------+-----------------------------+
  215. | :ref:`Color<class_Color>` | symbol_color |
  216. +---------------------------------+-----------------------------+
  217. | :ref:`Texture<class_Texture>` | tab |
  218. +---------------------------------+-----------------------------+
  219. | :ref:`Color<class_Color>` | word_highlighted_color |
  220. +---------------------------------+-----------------------------+
  221. Signals
  222. -------
  223. .. _class_TextEdit_signal_breakpoint_toggled:
  224. - **breakpoint_toggled** **(** :ref:`int<class_int>` row **)**
  225. Emitted when a breakpoint is placed via the breakpoint gutter.
  226. .. _class_TextEdit_signal_cursor_changed:
  227. - **cursor_changed** **(** **)**
  228. Emitted when the cursor changes.
  229. .. _class_TextEdit_signal_info_clicked:
  230. - **info_clicked** **(** :ref:`int<class_int>` row, :ref:`String<class_String>` info **)**
  231. .. _class_TextEdit_signal_request_completion:
  232. - **request_completion** **(** **)**
  233. .. _class_TextEdit_signal_symbol_lookup:
  234. - **symbol_lookup** **(** :ref:`String<class_String>` symbol, :ref:`int<class_int>` row, :ref:`int<class_int>` column **)**
  235. .. _class_TextEdit_signal_text_changed:
  236. - **text_changed** **(** **)**
  237. Emitted when the text changes.
  238. Enumerations
  239. ------------
  240. .. _enum_TextEdit_SearchFlags:
  241. .. _class_TextEdit_constant_SEARCH_MATCH_CASE:
  242. .. _class_TextEdit_constant_SEARCH_WHOLE_WORDS:
  243. .. _class_TextEdit_constant_SEARCH_BACKWARDS:
  244. enum **SearchFlags**:
  245. - **SEARCH_MATCH_CASE** = **1** --- Match case when searching.
  246. - **SEARCH_WHOLE_WORDS** = **2** --- Match whole words when searching.
  247. - **SEARCH_BACKWARDS** = **4** --- Search from end to beginning.
  248. .. _enum_TextEdit_MenuItems:
  249. .. _class_TextEdit_constant_MENU_CUT:
  250. .. _class_TextEdit_constant_MENU_COPY:
  251. .. _class_TextEdit_constant_MENU_PASTE:
  252. .. _class_TextEdit_constant_MENU_CLEAR:
  253. .. _class_TextEdit_constant_MENU_SELECT_ALL:
  254. .. _class_TextEdit_constant_MENU_UNDO:
  255. .. _class_TextEdit_constant_MENU_REDO:
  256. .. _class_TextEdit_constant_MENU_MAX:
  257. enum **MenuItems**:
  258. - **MENU_CUT** = **0** --- Cuts (Copies and clears) the selected text.
  259. - **MENU_COPY** = **1** --- Copies the selected text.
  260. - **MENU_PASTE** = **2** --- Pastes the clipboard text over the selected text (or at the cursor's position).
  261. - **MENU_CLEAR** = **3** --- Erases the whole ``TextEdit`` text.
  262. - **MENU_SELECT_ALL** = **4** --- Selects the whole ``TextEdit`` text.
  263. - **MENU_UNDO** = **5** --- Undoes the previous action.
  264. - **MENU_REDO** = **6**
  265. - **MENU_MAX** = **7**
  266. Description
  267. -----------
  268. TextEdit is meant for editing large, multiline text. It also has facilities for editing code, such as syntax highlighting support and multiple levels of undo/redo.
  269. Property Descriptions
  270. ---------------------
  271. .. _class_TextEdit_property_breakpoint_gutter:
  272. - :ref:`bool<class_bool>` **breakpoint_gutter**
  273. +----------+--------------------------------------+
  274. | *Setter* | set_breakpoint_gutter_enabled(value) |
  275. +----------+--------------------------------------+
  276. | *Getter* | is_breakpoint_gutter_enabled() |
  277. +----------+--------------------------------------+
  278. If ``true``, the breakpoint gutter is visible.
  279. .. _class_TextEdit_property_caret_blink:
  280. - :ref:`bool<class_bool>` **caret_blink**
  281. +----------+---------------------------------+
  282. | *Setter* | cursor_set_blink_enabled(value) |
  283. +----------+---------------------------------+
  284. | *Getter* | cursor_get_blink_enabled() |
  285. +----------+---------------------------------+
  286. If ``true``, the caret (visual cursor) blinks.
  287. .. _class_TextEdit_property_caret_blink_speed:
  288. - :ref:`float<class_float>` **caret_blink_speed**
  289. +----------+-------------------------------+
  290. | *Setter* | cursor_set_blink_speed(value) |
  291. +----------+-------------------------------+
  292. | *Getter* | cursor_get_blink_speed() |
  293. +----------+-------------------------------+
  294. Duration (in seconds) of a caret's blinking cycle.
  295. .. _class_TextEdit_property_caret_block_mode:
  296. - :ref:`bool<class_bool>` **caret_block_mode**
  297. +----------+------------------------------+
  298. | *Setter* | cursor_set_block_mode(value) |
  299. +----------+------------------------------+
  300. | *Getter* | cursor_is_block_mode() |
  301. +----------+------------------------------+
  302. If ``true``, the caret displays as a rectangle.
  303. If ``false``, the caret displays as a bar.
  304. .. _class_TextEdit_property_caret_moving_by_right_click:
  305. - :ref:`bool<class_bool>` **caret_moving_by_right_click**
  306. +----------+------------------------------------+
  307. | *Setter* | set_right_click_moves_caret(value) |
  308. +----------+------------------------------------+
  309. | *Getter* | is_right_click_moving_caret() |
  310. +----------+------------------------------------+
  311. If ``true``, a right click moves the cursor at the mouse position before displaying the context menu.
  312. If ``false``, the context menu disregards mouse location.
  313. .. _class_TextEdit_property_context_menu_enabled:
  314. - :ref:`bool<class_bool>` **context_menu_enabled**
  315. +----------+---------------------------------+
  316. | *Setter* | set_context_menu_enabled(value) |
  317. +----------+---------------------------------+
  318. | *Getter* | is_context_menu_enabled() |
  319. +----------+---------------------------------+
  320. If ``true``, a right click displays the context menu.
  321. .. _class_TextEdit_property_draw_spaces:
  322. - :ref:`bool<class_bool>` **draw_spaces**
  323. +----------+------------------------+
  324. | *Setter* | set_draw_spaces(value) |
  325. +----------+------------------------+
  326. | *Getter* | is_drawing_spaces() |
  327. +----------+------------------------+
  328. If ``true``, the "space" character will have a visible representation.
  329. .. _class_TextEdit_property_draw_tabs:
  330. - :ref:`bool<class_bool>` **draw_tabs**
  331. +----------+----------------------+
  332. | *Setter* | set_draw_tabs(value) |
  333. +----------+----------------------+
  334. | *Getter* | is_drawing_tabs() |
  335. +----------+----------------------+
  336. If ``true``, the "tab" character will have a visible representation.
  337. .. _class_TextEdit_property_fold_gutter:
  338. - :ref:`bool<class_bool>` **fold_gutter**
  339. +----------+--------------------------------+
  340. | *Setter* | set_fold_gutter_enabled(value) |
  341. +----------+--------------------------------+
  342. | *Getter* | is_fold_gutter_enabled() |
  343. +----------+--------------------------------+
  344. If ``true``, the fold gutter is visible. This enables folding groups of indented lines.
  345. .. _class_TextEdit_property_hiding_enabled:
  346. - :ref:`int<class_int>` **hiding_enabled**
  347. +----------+---------------------------+
  348. | *Setter* | set_hiding_enabled(value) |
  349. +----------+---------------------------+
  350. | *Getter* | is_hiding_enabled() |
  351. +----------+---------------------------+
  352. .. _class_TextEdit_property_highlight_all_occurrences:
  353. - :ref:`bool<class_bool>` **highlight_all_occurrences**
  354. +----------+----------------------------------------+
  355. | *Setter* | set_highlight_all_occurrences(value) |
  356. +----------+----------------------------------------+
  357. | *Getter* | is_highlight_all_occurrences_enabled() |
  358. +----------+----------------------------------------+
  359. .. _class_TextEdit_property_highlight_current_line:
  360. - :ref:`bool<class_bool>` **highlight_current_line**
  361. +----------+-------------------------------------+
  362. | *Setter* | set_highlight_current_line(value) |
  363. +----------+-------------------------------------+
  364. | *Getter* | is_highlight_current_line_enabled() |
  365. +----------+-------------------------------------+
  366. If ``true``, the line containing the cursor is highlighted.
  367. .. _class_TextEdit_property_override_selected_font_color:
  368. - :ref:`bool<class_bool>` **override_selected_font_color**
  369. +----------+-----------------------------------------+
  370. | *Setter* | set_override_selected_font_color(value) |
  371. +----------+-----------------------------------------+
  372. | *Getter* | is_overriding_selected_font_color() |
  373. +----------+-----------------------------------------+
  374. .. _class_TextEdit_property_readonly:
  375. - :ref:`bool<class_bool>` **readonly**
  376. +----------+---------------------+
  377. | *Setter* | set_readonly(value) |
  378. +----------+---------------------+
  379. | *Getter* | is_readonly() |
  380. +----------+---------------------+
  381. If ``true``, read-only mode is enabled. Existing text cannot be modified and new text cannot be added.
  382. .. _class_TextEdit_property_show_line_numbers:
  383. - :ref:`bool<class_bool>` **show_line_numbers**
  384. +----------+--------------------------------+
  385. | *Setter* | set_show_line_numbers(value) |
  386. +----------+--------------------------------+
  387. | *Getter* | is_show_line_numbers_enabled() |
  388. +----------+--------------------------------+
  389. If ``true``, line numbers are displayed to the left of the text.
  390. .. _class_TextEdit_property_smooth_scrolling:
  391. - :ref:`bool<class_bool>` **smooth_scrolling**
  392. +----------+---------------------------------+
  393. | *Setter* | set_smooth_scroll_enable(value) |
  394. +----------+---------------------------------+
  395. | *Getter* | is_smooth_scroll_enabled() |
  396. +----------+---------------------------------+
  397. .. _class_TextEdit_property_syntax_highlighting:
  398. - :ref:`bool<class_bool>` **syntax_highlighting**
  399. +----------+------------------------------+
  400. | *Setter* | set_syntax_coloring(value) |
  401. +----------+------------------------------+
  402. | *Getter* | is_syntax_coloring_enabled() |
  403. +----------+------------------------------+
  404. .. _class_TextEdit_property_text:
  405. - :ref:`String<class_String>` **text**
  406. +----------+-----------------+
  407. | *Setter* | set_text(value) |
  408. +----------+-----------------+
  409. | *Getter* | get_text() |
  410. +----------+-----------------+
  411. String value of the ``TextEdit``.
  412. .. _class_TextEdit_property_v_scroll_speed:
  413. - :ref:`float<class_float>` **v_scroll_speed**
  414. +----------+---------------------------+
  415. | *Setter* | set_v_scroll_speed(value) |
  416. +----------+---------------------------+
  417. | *Getter* | get_v_scroll_speed() |
  418. +----------+---------------------------+
  419. Vertical scroll sensitivity.
  420. .. _class_TextEdit_property_wrap_enabled:
  421. - :ref:`bool<class_bool>` **wrap_enabled**
  422. +----------+-------------------------+
  423. | *Setter* | set_wrap_enabled(value) |
  424. +----------+-------------------------+
  425. | *Getter* | is_wrap_enabled() |
  426. +----------+-------------------------+
  427. If ``true``, enables text wrapping when it goes beyond the edge of what is visible.
  428. Method Descriptions
  429. -------------------
  430. .. _class_TextEdit_method_add_color_region:
  431. - void **add_color_region** **(** :ref:`String<class_String>` begin_key, :ref:`String<class_String>` end_key, :ref:`Color<class_Color>` color, :ref:`bool<class_bool>` line_only=false **)**
  432. Add color region (given the delimiters) and its colors.
  433. .. _class_TextEdit_method_add_keyword_color:
  434. - void **add_keyword_color** **(** :ref:`String<class_String>` keyword, :ref:`Color<class_Color>` color **)**
  435. Add a keyword and its color.
  436. .. _class_TextEdit_method_can_fold:
  437. - :ref:`bool<class_bool>` **can_fold** **(** :ref:`int<class_int>` line **)** const
  438. Returns if the given line is foldable, that is, it has indented lines right below it.
  439. .. _class_TextEdit_method_clear_colors:
  440. - void **clear_colors** **(** **)**
  441. Clear all the syntax coloring information.
  442. .. _class_TextEdit_method_clear_undo_history:
  443. - void **clear_undo_history** **(** **)**
  444. Clear the undo history.
  445. .. _class_TextEdit_method_copy:
  446. - void **copy** **(** **)**
  447. Copy the current selection.
  448. .. _class_TextEdit_method_cursor_get_column:
  449. - :ref:`int<class_int>` **cursor_get_column** **(** **)** const
  450. Return the column the editing cursor is at.
  451. .. _class_TextEdit_method_cursor_get_line:
  452. - :ref:`int<class_int>` **cursor_get_line** **(** **)** const
  453. Return the line the editing cursor is at.
  454. .. _class_TextEdit_method_cursor_set_column:
  455. - void **cursor_set_column** **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` adjust_viewport=true **)**
  456. .. _class_TextEdit_method_cursor_set_line:
  457. - void **cursor_set_line** **(** :ref:`int<class_int>` line, :ref:`bool<class_bool>` adjust_viewport=true, :ref:`bool<class_bool>` can_be_hidden=true, :ref:`int<class_int>` wrap_index=0 **)**
  458. .. _class_TextEdit_method_cut:
  459. - void **cut** **(** **)**
  460. Cut the current selection.
  461. .. _class_TextEdit_method_deselect:
  462. - void **deselect** **(** **)**
  463. Clears the current selection.
  464. .. _class_TextEdit_method_fold_all_lines:
  465. - void **fold_all_lines** **(** **)**
  466. Folds all lines that are possible to be folded (see :ref:`can_fold<class_TextEdit_method_can_fold>`).
  467. .. _class_TextEdit_method_fold_line:
  468. - void **fold_line** **(** :ref:`int<class_int>` line **)**
  469. Folds the given line, if possible (see :ref:`can_fold<class_TextEdit_method_can_fold>`).
  470. .. _class_TextEdit_method_get_breakpoints:
  471. - :ref:`Array<class_Array>` **get_breakpoints** **(** **)** const
  472. Return an array containing the line number of each breakpoint.
  473. .. _class_TextEdit_method_get_keyword_color:
  474. - :ref:`Color<class_Color>` **get_keyword_color** **(** :ref:`String<class_String>` keyword **)** const
  475. .. _class_TextEdit_method_get_line:
  476. - :ref:`String<class_String>` **get_line** **(** :ref:`int<class_int>` line **)** const
  477. Return the text of a specific line.
  478. .. _class_TextEdit_method_get_line_count:
  479. - :ref:`int<class_int>` **get_line_count** **(** **)** const
  480. Return the amount of total lines in the text.
  481. .. _class_TextEdit_method_get_menu:
  482. - :ref:`PopupMenu<class_PopupMenu>` **get_menu** **(** **)** const
  483. Returns the :ref:`PopupMenu<class_PopupMenu>` of this ``TextEdit``. By default, this menu is displayed when right-clicking on the ``TextEdit``.
  484. .. _class_TextEdit_method_get_selection_from_column:
  485. - :ref:`int<class_int>` **get_selection_from_column** **(** **)** const
  486. Return the selection begin column.
  487. .. _class_TextEdit_method_get_selection_from_line:
  488. - :ref:`int<class_int>` **get_selection_from_line** **(** **)** const
  489. Return the selection begin line.
  490. .. _class_TextEdit_method_get_selection_text:
  491. - :ref:`String<class_String>` **get_selection_text** **(** **)** const
  492. Return the text inside the selection.
  493. .. _class_TextEdit_method_get_selection_to_column:
  494. - :ref:`int<class_int>` **get_selection_to_column** **(** **)** const
  495. Return the selection end column.
  496. .. _class_TextEdit_method_get_selection_to_line:
  497. - :ref:`int<class_int>` **get_selection_to_line** **(** **)** const
  498. Return the selection end line.
  499. .. _class_TextEdit_method_get_word_under_cursor:
  500. - :ref:`String<class_String>` **get_word_under_cursor** **(** **)** const
  501. .. _class_TextEdit_method_has_keyword_color:
  502. - :ref:`bool<class_bool>` **has_keyword_color** **(** :ref:`String<class_String>` keyword **)** const
  503. .. _class_TextEdit_method_insert_text_at_cursor:
  504. - void **insert_text_at_cursor** **(** :ref:`String<class_String>` text **)**
  505. Insert a given text at the cursor position.
  506. .. _class_TextEdit_method_is_folded:
  507. - :ref:`bool<class_bool>` **is_folded** **(** :ref:`int<class_int>` line **)** const
  508. Returns if the given line is folded.
  509. .. _class_TextEdit_method_is_line_hidden:
  510. - :ref:`bool<class_bool>` **is_line_hidden** **(** :ref:`int<class_int>` line **)** const
  511. .. _class_TextEdit_method_is_selection_active:
  512. - :ref:`bool<class_bool>` **is_selection_active** **(** **)** const
  513. Return ``true`` if the selection is active.
  514. .. _class_TextEdit_method_menu_option:
  515. - void **menu_option** **(** :ref:`int<class_int>` option **)**
  516. .. _class_TextEdit_method_paste:
  517. - void **paste** **(** **)**
  518. Paste the current selection.
  519. .. _class_TextEdit_method_redo:
  520. - void **redo** **(** **)**
  521. Perform redo operation.
  522. .. _class_TextEdit_method_remove_breakpoints:
  523. - void **remove_breakpoints** **(** **)**
  524. Removes all the breakpoints (without firing "breakpoint_toggled" signal).
  525. .. _class_TextEdit_method_search:
  526. - :ref:`PoolIntArray<class_PoolIntArray>` **search** **(** :ref:`String<class_String>` key, :ref:`int<class_int>` flags, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column **)** const
  527. Perform a search inside the text. Search flags can be specified in the SEARCH\_\* enum.
  528. .. _class_TextEdit_method_select:
  529. - void **select** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_column **)**
  530. Perform selection, from line/column to line/column.
  531. .. _class_TextEdit_method_select_all:
  532. - void **select_all** **(** **)**
  533. Select all the text.
  534. .. _class_TextEdit_method_set_line_as_hidden:
  535. - void **set_line_as_hidden** **(** :ref:`int<class_int>` line, :ref:`bool<class_bool>` enable **)**
  536. .. _class_TextEdit_method_toggle_fold_line:
  537. - void **toggle_fold_line** **(** :ref:`int<class_int>` line **)**
  538. Toggle the folding of the code block at the given line.
  539. .. _class_TextEdit_method_undo:
  540. - void **undo** **(** **)**
  541. Perform undo operation.
  542. .. _class_TextEdit_method_unfold_line:
  543. - void **unfold_line** **(** :ref:`int<class_int>` line **)**
  544. Unfolds the given line, if folded.
  545. .. _class_TextEdit_method_unhide_all_lines:
  546. - void **unhide_all_lines** **(** **)**