class_textedit.rst 199 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/TextEdit.xml.
  6. .. _class_TextEdit:
  7. TextEdit
  8. ========
  9. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  10. **Inherited By:** :ref:`CodeEdit<class_CodeEdit>`
  11. Multiline text editing control.
  12. .. rst-class:: classref-introduction-group
  13. Description
  14. -----------
  15. 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.
  16. \ **Note:** Most viewport, caret and edit methods contain a ``caret_index`` argument for :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` support. The argument should be one of the following: ``-1`` for all carets, ``0`` for the main caret, or greater than ``0`` for secondary carets.
  17. \ **Note:** When holding down :kbd:`Alt`, the vertical scroll wheel will scroll 5 times as fast as it would normally do. This also works in the Godot script editor.
  18. .. rst-class:: classref-reftable-group
  19. Properties
  20. ----------
  21. .. table::
  22. :widths: auto
  23. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  24. | :ref:`bool<class_bool>` | :ref:`caret_blink<class_TextEdit_property_caret_blink>` | ``false`` |
  25. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  26. | :ref:`float<class_float>` | :ref:`caret_blink_interval<class_TextEdit_property_caret_blink_interval>` | ``0.65`` |
  27. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  28. | :ref:`bool<class_bool>` | :ref:`caret_draw_when_editable_disabled<class_TextEdit_property_caret_draw_when_editable_disabled>` | ``false`` |
  29. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  30. | :ref:`bool<class_bool>` | :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` | ``true`` |
  31. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  32. | :ref:`bool<class_bool>` | :ref:`caret_move_on_right_click<class_TextEdit_property_caret_move_on_right_click>` | ``true`` |
  33. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  34. | :ref:`bool<class_bool>` | :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` | ``true`` |
  35. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  36. | :ref:`CaretType<enum_TextEdit_CaretType>` | :ref:`caret_type<class_TextEdit_property_caret_type>` | ``0`` |
  37. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  38. | :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_TextEdit_property_context_menu_enabled>` | ``true`` |
  39. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  40. | :ref:`bool<class_bool>` | :ref:`deselect_on_focus_loss_enabled<class_TextEdit_property_deselect_on_focus_loss_enabled>` | ``true`` |
  41. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  42. | :ref:`bool<class_bool>` | :ref:`drag_and_drop_selection_enabled<class_TextEdit_property_drag_and_drop_selection_enabled>` | ``true`` |
  43. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  44. | :ref:`bool<class_bool>` | :ref:`draw_control_chars<class_TextEdit_property_draw_control_chars>` | ``false`` |
  45. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  46. | :ref:`bool<class_bool>` | :ref:`draw_spaces<class_TextEdit_property_draw_spaces>` | ``false`` |
  47. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  48. | :ref:`bool<class_bool>` | :ref:`draw_tabs<class_TextEdit_property_draw_tabs>` | ``false`` |
  49. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  50. | :ref:`bool<class_bool>` | :ref:`editable<class_TextEdit_property_editable>` | ``true`` |
  51. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  52. | :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
  53. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  54. | :ref:`bool<class_bool>` | :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` | ``false`` |
  55. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  56. | :ref:`bool<class_bool>` | :ref:`highlight_current_line<class_TextEdit_property_highlight_current_line>` | ``false`` |
  57. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  58. | :ref:`String<class_String>` | :ref:`language<class_TextEdit_property_language>` | ``""`` |
  59. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`middle_mouse_paste_enabled<class_TextEdit_property_middle_mouse_paste_enabled>` | ``true`` |
  61. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  62. | :ref:`bool<class_bool>` | :ref:`minimap_draw<class_TextEdit_property_minimap_draw>` | ``false`` |
  63. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  64. | :ref:`int<class_int>` | :ref:`minimap_width<class_TextEdit_property_minimap_width>` | ``80`` |
  65. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  66. | :ref:`CursorShape<enum_Control_CursorShape>` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control<class_Control_property_mouse_default_cursor_shape>`) |
  67. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  68. | :ref:`String<class_String>` | :ref:`placeholder_text<class_TextEdit_property_placeholder_text>` | ``""`` |
  69. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  70. | :ref:`bool<class_bool>` | :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` | ``false`` |
  71. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  72. | :ref:`int<class_int>` | :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` | ``0`` |
  73. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  74. | :ref:`bool<class_bool>` | :ref:`scroll_past_end_of_file<class_TextEdit_property_scroll_past_end_of_file>` | ``false`` |
  75. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  76. | :ref:`bool<class_bool>` | :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` | ``false`` |
  77. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  78. | :ref:`float<class_float>` | :ref:`scroll_v_scroll_speed<class_TextEdit_property_scroll_v_scroll_speed>` | ``80.0`` |
  79. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  80. | :ref:`float<class_float>` | :ref:`scroll_vertical<class_TextEdit_property_scroll_vertical>` | ``0.0`` |
  81. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  82. | :ref:`bool<class_bool>` | :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` | ``true`` |
  83. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  84. | :ref:`bool<class_bool>` | :ref:`shortcut_keys_enabled<class_TextEdit_property_shortcut_keys_enabled>` | ``true`` |
  85. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  86. | :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_TextEdit_property_structured_text_bidi_override>` | ``0`` |
  87. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  88. | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_TextEdit_property_structured_text_bidi_override_options>` | ``[]`` |
  89. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  90. | :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` | :ref:`syntax_highlighter<class_TextEdit_property_syntax_highlighter>` | |
  91. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  92. | :ref:`String<class_String>` | :ref:`text<class_TextEdit_property_text>` | ``""`` |
  93. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  94. | :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_TextEdit_property_text_direction>` | ``0`` |
  95. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  96. | :ref:`bool<class_bool>` | :ref:`virtual_keyboard_enabled<class_TextEdit_property_virtual_keyboard_enabled>` | ``true`` |
  97. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  98. | :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` | :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` | ``0`` |
  99. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  100. .. rst-class:: classref-reftable-group
  101. Methods
  102. -------
  103. .. table::
  104. :widths: auto
  105. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  106. | void | :ref:`_backspace<class_TextEdit_method__backspace>` **(** :ref:`int<class_int>` caret_index **)** |virtual| |
  107. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  108. | void | :ref:`_copy<class_TextEdit_method__copy>` **(** :ref:`int<class_int>` caret_index **)** |virtual| |
  109. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  110. | void | :ref:`_cut<class_TextEdit_method__cut>` **(** :ref:`int<class_int>` caret_index **)** |virtual| |
  111. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  112. | void | :ref:`_handle_unicode_input<class_TextEdit_method__handle_unicode_input>` **(** :ref:`int<class_int>` unicode_char, :ref:`int<class_int>` caret_index **)** |virtual| |
  113. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  114. | void | :ref:`_paste<class_TextEdit_method__paste>` **(** :ref:`int<class_int>` caret_index **)** |virtual| |
  115. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  116. | void | :ref:`_paste_primary_clipboard<class_TextEdit_method__paste_primary_clipboard>` **(** :ref:`int<class_int>` caret_index **)** |virtual| |
  117. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  118. | :ref:`int<class_int>` | :ref:`add_caret<class_TextEdit_method_add_caret>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` col **)** |
  119. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  120. | void | :ref:`add_caret_at_carets<class_TextEdit_method_add_caret_at_carets>` **(** :ref:`bool<class_bool>` below **)** |
  121. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  122. | void | :ref:`add_gutter<class_TextEdit_method_add_gutter>` **(** :ref:`int<class_int>` at=-1 **)** |
  123. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  124. | void | :ref:`add_selection_for_next_occurrence<class_TextEdit_method_add_selection_for_next_occurrence>` **(** **)** |
  125. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  126. | void | :ref:`adjust_carets_after_edit<class_TextEdit_method_adjust_carets_after_edit>` **(** :ref:`int<class_int>` caret, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_col, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_col **)** |
  127. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  128. | void | :ref:`adjust_viewport_to_caret<class_TextEdit_method_adjust_viewport_to_caret>` **(** :ref:`int<class_int>` caret_index=0 **)** |
  129. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  130. | void | :ref:`backspace<class_TextEdit_method_backspace>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  131. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  132. | void | :ref:`begin_complex_operation<class_TextEdit_method_begin_complex_operation>` **(** **)** |
  133. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  134. | void | :ref:`center_viewport_to_caret<class_TextEdit_method_center_viewport_to_caret>` **(** :ref:`int<class_int>` caret_index=0 **)** |
  135. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | void | :ref:`clear<class_TextEdit_method_clear>` **(** **)** |
  137. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | void | :ref:`clear_undo_history<class_TextEdit_method_clear_undo_history>` **(** **)** |
  139. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | void | :ref:`copy<class_TextEdit_method_copy>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  141. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. | void | :ref:`cut<class_TextEdit_method_cut>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  143. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  144. | void | :ref:`delete_selection<class_TextEdit_method_delete_selection>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  145. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  146. | void | :ref:`deselect<class_TextEdit_method_deselect>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  147. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  148. | void | :ref:`end_action<class_TextEdit_method_end_action>` **(** **)** |
  149. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  150. | void | :ref:`end_complex_operation<class_TextEdit_method_end_complex_operation>` **(** **)** |
  151. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  152. | :ref:`int<class_int>` | :ref:`get_caret_column<class_TextEdit_method_get_caret_column>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  153. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  154. | :ref:`int<class_int>` | :ref:`get_caret_count<class_TextEdit_method_get_caret_count>` **(** **)** |const| |
  155. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  156. | :ref:`Vector2<class_Vector2>` | :ref:`get_caret_draw_pos<class_TextEdit_method_get_caret_draw_pos>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  157. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  158. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_caret_index_edit_order<class_TextEdit_method_get_caret_index_edit_order>` **(** **)** |
  159. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  160. | :ref:`int<class_int>` | :ref:`get_caret_line<class_TextEdit_method_get_caret_line>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  161. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  162. | :ref:`int<class_int>` | :ref:`get_caret_wrap_index<class_TextEdit_method_get_caret_wrap_index>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  163. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  164. | :ref:`int<class_int>` | :ref:`get_first_non_whitespace_column<class_TextEdit_method_get_first_non_whitespace_column>` **(** :ref:`int<class_int>` line **)** |const| |
  165. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  166. | :ref:`int<class_int>` | :ref:`get_first_visible_line<class_TextEdit_method_get_first_visible_line>` **(** **)** |const| |
  167. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  168. | :ref:`int<class_int>` | :ref:`get_gutter_count<class_TextEdit_method_get_gutter_count>` **(** **)** |const| |
  169. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  170. | :ref:`String<class_String>` | :ref:`get_gutter_name<class_TextEdit_method_get_gutter_name>` **(** :ref:`int<class_int>` gutter **)** |const| |
  171. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  172. | :ref:`GutterType<enum_TextEdit_GutterType>` | :ref:`get_gutter_type<class_TextEdit_method_get_gutter_type>` **(** :ref:`int<class_int>` gutter **)** |const| |
  173. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  174. | :ref:`int<class_int>` | :ref:`get_gutter_width<class_TextEdit_method_get_gutter_width>` **(** :ref:`int<class_int>` gutter **)** |const| |
  175. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  176. | :ref:`HScrollBar<class_HScrollBar>` | :ref:`get_h_scroll_bar<class_TextEdit_method_get_h_scroll_bar>` **(** **)** |const| |
  177. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  178. | :ref:`int<class_int>` | :ref:`get_indent_level<class_TextEdit_method_get_indent_level>` **(** :ref:`int<class_int>` line **)** |const| |
  179. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  180. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line<class_TextEdit_method_get_last_full_visible_line>` **(** **)** |const| |
  181. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  182. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line_wrap_index<class_TextEdit_method_get_last_full_visible_line_wrap_index>` **(** **)** |const| |
  183. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  184. | :ref:`int<class_int>` | :ref:`get_last_unhidden_line<class_TextEdit_method_get_last_unhidden_line>` **(** **)** |const| |
  185. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  186. | :ref:`String<class_String>` | :ref:`get_line<class_TextEdit_method_get_line>` **(** :ref:`int<class_int>` line **)** |const| |
  187. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  188. | :ref:`Color<class_Color>` | :ref:`get_line_background_color<class_TextEdit_method_get_line_background_color>` **(** :ref:`int<class_int>` line **)** |const| |
  189. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  190. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_line_column_at_pos<class_TextEdit_method_get_line_column_at_pos>` **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`bool<class_bool>` allow_out_of_bounds=true **)** |const| |
  191. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  192. | :ref:`int<class_int>` | :ref:`get_line_count<class_TextEdit_method_get_line_count>` **(** **)** |const| |
  193. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  194. | :ref:`Texture2D<class_Texture2D>` | :ref:`get_line_gutter_icon<class_TextEdit_method_get_line_gutter_icon>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const| |
  195. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  196. | :ref:`Color<class_Color>` | :ref:`get_line_gutter_item_color<class_TextEdit_method_get_line_gutter_item_color>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const| |
  197. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  198. | :ref:`Variant<class_Variant>` | :ref:`get_line_gutter_metadata<class_TextEdit_method_get_line_gutter_metadata>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const| |
  199. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  200. | :ref:`String<class_String>` | :ref:`get_line_gutter_text<class_TextEdit_method_get_line_gutter_text>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const| |
  201. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  202. | :ref:`int<class_int>` | :ref:`get_line_height<class_TextEdit_method_get_line_height>` **(** **)** |const| |
  203. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  204. | :ref:`int<class_int>` | :ref:`get_line_width<class_TextEdit_method_get_line_width>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=-1 **)** |const| |
  205. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  206. | :ref:`int<class_int>` | :ref:`get_line_wrap_count<class_TextEdit_method_get_line_wrap_count>` **(** :ref:`int<class_int>` line **)** |const| |
  207. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  208. | :ref:`int<class_int>` | :ref:`get_line_wrap_index_at_column<class_TextEdit_method_get_line_wrap_index_at_column>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const| |
  209. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  210. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_line_wrapped_text<class_TextEdit_method_get_line_wrapped_text>` **(** :ref:`int<class_int>` line **)** |const| |
  211. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  212. | :ref:`Vector2<class_Vector2>` | :ref:`get_local_mouse_pos<class_TextEdit_method_get_local_mouse_pos>` **(** **)** |const| |
  213. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  214. | :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_TextEdit_method_get_menu>` **(** **)** |const| |
  215. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  216. | :ref:`int<class_int>` | :ref:`get_minimap_line_at_pos<class_TextEdit_method_get_minimap_line_at_pos>` **(** :ref:`Vector2i<class_Vector2i>` position **)** |const| |
  217. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  218. | :ref:`int<class_int>` | :ref:`get_minimap_visible_lines<class_TextEdit_method_get_minimap_visible_lines>` **(** **)** |const| |
  219. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  220. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_next_visible_line_index_offset_from<class_TextEdit_method_get_next_visible_line_index_offset_from>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index, :ref:`int<class_int>` visible_amount **)** |const| |
  221. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  222. | :ref:`int<class_int>` | :ref:`get_next_visible_line_offset_from<class_TextEdit_method_get_next_visible_line_offset_from>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` visible_amount **)** |const| |
  223. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  224. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_pos_at_line_column<class_TextEdit_method_get_pos_at_line_column>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const| |
  225. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  226. | :ref:`Rect2i<class_Rect2i>` | :ref:`get_rect_at_line_column<class_TextEdit_method_get_rect_at_line_column>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const| |
  227. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  228. | :ref:`int<class_int>` | :ref:`get_saved_version<class_TextEdit_method_get_saved_version>` **(** **)** |const| |
  229. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  230. | :ref:`float<class_float>` | :ref:`get_scroll_pos_for_line<class_TextEdit_method_get_scroll_pos_for_line>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)** |const| |
  231. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  232. | :ref:`String<class_String>` | :ref:`get_selected_text<class_TextEdit_method_get_selected_text>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  233. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  234. | :ref:`int<class_int>` | :ref:`get_selection_column<class_TextEdit_method_get_selection_column>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  235. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  236. | :ref:`int<class_int>` | :ref:`get_selection_from_column<class_TextEdit_method_get_selection_from_column>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  237. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  238. | :ref:`int<class_int>` | :ref:`get_selection_from_line<class_TextEdit_method_get_selection_from_line>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  239. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  240. | :ref:`int<class_int>` | :ref:`get_selection_line<class_TextEdit_method_get_selection_line>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  241. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  242. | :ref:`SelectionMode<enum_TextEdit_SelectionMode>` | :ref:`get_selection_mode<class_TextEdit_method_get_selection_mode>` **(** **)** |const| |
  243. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  244. | :ref:`int<class_int>` | :ref:`get_selection_to_column<class_TextEdit_method_get_selection_to_column>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  245. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  246. | :ref:`int<class_int>` | :ref:`get_selection_to_line<class_TextEdit_method_get_selection_to_line>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  247. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  248. | :ref:`int<class_int>` | :ref:`get_tab_size<class_TextEdit_method_get_tab_size>` **(** **)** |const| |
  249. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  250. | :ref:`int<class_int>` | :ref:`get_total_gutter_width<class_TextEdit_method_get_total_gutter_width>` **(** **)** |const| |
  251. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  252. | :ref:`int<class_int>` | :ref:`get_total_visible_line_count<class_TextEdit_method_get_total_visible_line_count>` **(** **)** |const| |
  253. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  254. | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_TextEdit_method_get_v_scroll_bar>` **(** **)** |const| |
  255. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  256. | :ref:`int<class_int>` | :ref:`get_version<class_TextEdit_method_get_version>` **(** **)** |const| |
  257. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  258. | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_TextEdit_method_get_visible_line_count>` **(** **)** |const| |
  259. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  260. | :ref:`int<class_int>` | :ref:`get_visible_line_count_in_range<class_TextEdit_method_get_visible_line_count_in_range>` **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)** |const| |
  261. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  262. | :ref:`String<class_String>` | :ref:`get_word_at_pos<class_TextEdit_method_get_word_at_pos>` **(** :ref:`Vector2<class_Vector2>` position **)** |const| |
  263. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  264. | :ref:`String<class_String>` | :ref:`get_word_under_caret<class_TextEdit_method_get_word_under_caret>` **(** :ref:`int<class_int>` caret_index=-1 **)** |const| |
  265. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  266. | :ref:`bool<class_bool>` | :ref:`has_ime_text<class_TextEdit_method_has_ime_text>` **(** **)** |const| |
  267. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  268. | :ref:`bool<class_bool>` | :ref:`has_redo<class_TextEdit_method_has_redo>` **(** **)** |const| |
  269. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  270. | :ref:`bool<class_bool>` | :ref:`has_selection<class_TextEdit_method_has_selection>` **(** :ref:`int<class_int>` caret_index=-1 **)** |const| |
  271. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  272. | :ref:`bool<class_bool>` | :ref:`has_undo<class_TextEdit_method_has_undo>` **(** **)** |const| |
  273. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  274. | void | :ref:`insert_line_at<class_TextEdit_method_insert_line_at>` **(** :ref:`int<class_int>` line, :ref:`String<class_String>` text **)** |
  275. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  276. | void | :ref:`insert_text_at_caret<class_TextEdit_method_insert_text_at_caret>` **(** :ref:`String<class_String>` text, :ref:`int<class_int>` caret_index=-1 **)** |
  277. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  278. | :ref:`bool<class_bool>` | :ref:`is_caret_visible<class_TextEdit_method_is_caret_visible>` **(** :ref:`int<class_int>` caret_index=0 **)** |const| |
  279. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  280. | :ref:`bool<class_bool>` | :ref:`is_dragging_cursor<class_TextEdit_method_is_dragging_cursor>` **(** **)** |const| |
  281. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  282. | :ref:`bool<class_bool>` | :ref:`is_gutter_clickable<class_TextEdit_method_is_gutter_clickable>` **(** :ref:`int<class_int>` gutter **)** |const| |
  283. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  284. | :ref:`bool<class_bool>` | :ref:`is_gutter_drawn<class_TextEdit_method_is_gutter_drawn>` **(** :ref:`int<class_int>` gutter **)** |const| |
  285. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  286. | :ref:`bool<class_bool>` | :ref:`is_gutter_overwritable<class_TextEdit_method_is_gutter_overwritable>` **(** :ref:`int<class_int>` gutter **)** |const| |
  287. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  288. | :ref:`bool<class_bool>` | :ref:`is_line_gutter_clickable<class_TextEdit_method_is_line_gutter_clickable>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const| |
  289. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  290. | :ref:`bool<class_bool>` | :ref:`is_line_wrapped<class_TextEdit_method_is_line_wrapped>` **(** :ref:`int<class_int>` line **)** |const| |
  291. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  292. | :ref:`bool<class_bool>` | :ref:`is_menu_visible<class_TextEdit_method_is_menu_visible>` **(** **)** |const| |
  293. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  294. | :ref:`bool<class_bool>` | :ref:`is_mouse_over_selection<class_TextEdit_method_is_mouse_over_selection>` **(** :ref:`bool<class_bool>` edges, :ref:`int<class_int>` caret_index=-1 **)** |const| |
  295. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  296. | :ref:`bool<class_bool>` | :ref:`is_overtype_mode_enabled<class_TextEdit_method_is_overtype_mode_enabled>` **(** **)** |const| |
  297. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  298. | void | :ref:`menu_option<class_TextEdit_method_menu_option>` **(** :ref:`int<class_int>` option **)** |
  299. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  300. | void | :ref:`merge_gutters<class_TextEdit_method_merge_gutters>` **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)** |
  301. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  302. | void | :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>` **(** **)** |
  303. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  304. | void | :ref:`paste<class_TextEdit_method_paste>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  305. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  306. | void | :ref:`paste_primary_clipboard<class_TextEdit_method_paste_primary_clipboard>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  307. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  308. | void | :ref:`redo<class_TextEdit_method_redo>` **(** **)** |
  309. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  310. | void | :ref:`remove_caret<class_TextEdit_method_remove_caret>` **(** :ref:`int<class_int>` caret **)** |
  311. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  312. | void | :ref:`remove_gutter<class_TextEdit_method_remove_gutter>` **(** :ref:`int<class_int>` gutter **)** |
  313. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  314. | void | :ref:`remove_secondary_carets<class_TextEdit_method_remove_secondary_carets>` **(** **)** |
  315. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  316. | void | :ref:`remove_text<class_TextEdit_method_remove_text>` **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_column **)** |
  317. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  318. | :ref:`Vector2i<class_Vector2i>` | :ref:`search<class_TextEdit_method_search>` **(** :ref:`String<class_String>` text, :ref:`int<class_int>` flags, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_colum **)** |const| |
  319. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  320. | 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, :ref:`int<class_int>` caret_index=0 **)** |
  321. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  322. | void | :ref:`select_all<class_TextEdit_method_select_all>` **(** **)** |
  323. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  324. | void | :ref:`select_word_under_caret<class_TextEdit_method_select_word_under_caret>` **(** :ref:`int<class_int>` caret_index=-1 **)** |
  325. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  326. | void | :ref:`set_caret_column<class_TextEdit_method_set_caret_column>` **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` adjust_viewport=true, :ref:`int<class_int>` caret_index=0 **)** |
  327. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  328. | void | :ref:`set_caret_line<class_TextEdit_method_set_caret_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, :ref:`int<class_int>` caret_index=0 **)** |
  329. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  330. | void | :ref:`set_gutter_clickable<class_TextEdit_method_set_gutter_clickable>` **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` clickable **)** |
  331. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  332. | void | :ref:`set_gutter_custom_draw<class_TextEdit_method_set_gutter_custom_draw>` **(** :ref:`int<class_int>` column, :ref:`Callable<class_Callable>` draw_callback **)** |
  333. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  334. | void | :ref:`set_gutter_draw<class_TextEdit_method_set_gutter_draw>` **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` draw **)** |
  335. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  336. | void | :ref:`set_gutter_name<class_TextEdit_method_set_gutter_name>` **(** :ref:`int<class_int>` gutter, :ref:`String<class_String>` name **)** |
  337. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  338. | void | :ref:`set_gutter_overwritable<class_TextEdit_method_set_gutter_overwritable>` **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` overwritable **)** |
  339. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  340. | void | :ref:`set_gutter_type<class_TextEdit_method_set_gutter_type>` **(** :ref:`int<class_int>` gutter, :ref:`GutterType<enum_TextEdit_GutterType>` type **)** |
  341. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  342. | void | :ref:`set_gutter_width<class_TextEdit_method_set_gutter_width>` **(** :ref:`int<class_int>` gutter, :ref:`int<class_int>` width **)** |
  343. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  344. | void | :ref:`set_line<class_TextEdit_method_set_line>` **(** :ref:`int<class_int>` line, :ref:`String<class_String>` new_text **)** |
  345. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  346. | void | :ref:`set_line_as_center_visible<class_TextEdit_method_set_line_as_center_visible>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)** |
  347. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  348. | void | :ref:`set_line_as_first_visible<class_TextEdit_method_set_line_as_first_visible>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)** |
  349. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  350. | void | :ref:`set_line_as_last_visible<class_TextEdit_method_set_line_as_last_visible>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)** |
  351. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  352. | void | :ref:`set_line_background_color<class_TextEdit_method_set_line_background_color>` **(** :ref:`int<class_int>` line, :ref:`Color<class_Color>` color **)** |
  353. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  354. | void | :ref:`set_line_gutter_clickable<class_TextEdit_method_set_line_gutter_clickable>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` clickable **)** |
  355. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  356. | void | :ref:`set_line_gutter_icon<class_TextEdit_method_set_line_gutter_icon>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Texture2D<class_Texture2D>` icon **)** |
  357. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  358. | void | :ref:`set_line_gutter_item_color<class_TextEdit_method_set_line_gutter_item_color>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Color<class_Color>` color **)** |
  359. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  360. | void | :ref:`set_line_gutter_metadata<class_TextEdit_method_set_line_gutter_metadata>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Variant<class_Variant>` metadata **)** |
  361. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  362. | void | :ref:`set_line_gutter_text<class_TextEdit_method_set_line_gutter_text>` **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`String<class_String>` text **)** |
  363. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  364. | void | :ref:`set_overtype_mode_enabled<class_TextEdit_method_set_overtype_mode_enabled>` **(** :ref:`bool<class_bool>` enabled **)** |
  365. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  366. | void | :ref:`set_search_flags<class_TextEdit_method_set_search_flags>` **(** :ref:`int<class_int>` flags **)** |
  367. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  368. | void | :ref:`set_search_text<class_TextEdit_method_set_search_text>` **(** :ref:`String<class_String>` search_text **)** |
  369. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  370. | void | :ref:`set_selection_mode<class_TextEdit_method_set_selection_mode>` **(** :ref:`SelectionMode<enum_TextEdit_SelectionMode>` mode, :ref:`int<class_int>` line=-1, :ref:`int<class_int>` column=-1, :ref:`int<class_int>` caret_index=0 **)** |
  371. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  372. | void | :ref:`set_tab_size<class_TextEdit_method_set_tab_size>` **(** :ref:`int<class_int>` size **)** |
  373. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  374. | void | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>` **(** :ref:`Callable<class_Callable>` callback **)** |
  375. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  376. | void | :ref:`start_action<class_TextEdit_method_start_action>` **(** :ref:`EditAction<enum_TextEdit_EditAction>` action **)** |
  377. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  378. | void | :ref:`swap_lines<class_TextEdit_method_swap_lines>` **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)** |
  379. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  380. | void | :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>` **(** **)** |
  381. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  382. | void | :ref:`undo<class_TextEdit_method_undo>` **(** **)** |
  383. +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  384. .. rst-class:: classref-reftable-group
  385. Theme Properties
  386. ----------------
  387. .. table::
  388. :widths: auto
  389. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  390. | :ref:`Color<class_Color>` | :ref:`background_color<class_TextEdit_theme_color_background_color>` | ``Color(0, 0, 0, 0)`` |
  391. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  392. | :ref:`Color<class_Color>` | :ref:`caret_background_color<class_TextEdit_theme_color_caret_background_color>` | ``Color(0, 0, 0, 1)`` |
  393. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  394. | :ref:`Color<class_Color>` | :ref:`caret_color<class_TextEdit_theme_color_caret_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  395. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  396. | :ref:`Color<class_Color>` | :ref:`current_line_color<class_TextEdit_theme_color_current_line_color>` | ``Color(0.25, 0.25, 0.26, 0.8)`` |
  397. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  398. | :ref:`Color<class_Color>` | :ref:`font_color<class_TextEdit_theme_color_font_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  399. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  400. | :ref:`Color<class_Color>` | :ref:`font_outline_color<class_TextEdit_theme_color_font_outline_color>` | ``Color(1, 1, 1, 1)`` |
  401. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  402. | :ref:`Color<class_Color>` | :ref:`font_placeholder_color<class_TextEdit_theme_color_font_placeholder_color>` | ``Color(0.875, 0.875, 0.875, 0.6)`` |
  403. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  404. | :ref:`Color<class_Color>` | :ref:`font_readonly_color<class_TextEdit_theme_color_font_readonly_color>` | ``Color(0.875, 0.875, 0.875, 0.5)`` |
  405. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  406. | :ref:`Color<class_Color>` | :ref:`font_selected_color<class_TextEdit_theme_color_font_selected_color>` | ``Color(0, 0, 0, 0)`` |
  407. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  408. | :ref:`Color<class_Color>` | :ref:`search_result_border_color<class_TextEdit_theme_color_search_result_border_color>` | ``Color(0.3, 0.3, 0.3, 0.4)`` |
  409. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  410. | :ref:`Color<class_Color>` | :ref:`search_result_color<class_TextEdit_theme_color_search_result_color>` | ``Color(0.3, 0.3, 0.3, 1)`` |
  411. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  412. | :ref:`Color<class_Color>` | :ref:`selection_color<class_TextEdit_theme_color_selection_color>` | ``Color(0.5, 0.5, 0.5, 1)`` |
  413. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  414. | :ref:`Color<class_Color>` | :ref:`word_highlighted_color<class_TextEdit_theme_color_word_highlighted_color>` | ``Color(0.5, 0.5, 0.5, 0.25)`` |
  415. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  416. | :ref:`int<class_int>` | :ref:`caret_width<class_TextEdit_theme_constant_caret_width>` | ``1`` |
  417. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  418. | :ref:`int<class_int>` | :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>` | ``4`` |
  419. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  420. | :ref:`int<class_int>` | :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` | ``0`` |
  421. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  422. | :ref:`Font<class_Font>` | :ref:`font<class_TextEdit_theme_font_font>` | |
  423. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  424. | :ref:`int<class_int>` | :ref:`font_size<class_TextEdit_theme_font_size_font_size>` | |
  425. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  426. | :ref:`Texture2D<class_Texture2D>` | :ref:`space<class_TextEdit_theme_icon_space>` | |
  427. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  428. | :ref:`Texture2D<class_Texture2D>` | :ref:`tab<class_TextEdit_theme_icon_tab>` | |
  429. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  430. | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_TextEdit_theme_style_focus>` | |
  431. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  432. | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_TextEdit_theme_style_normal>` | |
  433. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  434. | :ref:`StyleBox<class_StyleBox>` | :ref:`read_only<class_TextEdit_theme_style_read_only>` | |
  435. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  436. .. rst-class:: classref-section-separator
  437. ----
  438. .. rst-class:: classref-descriptions-group
  439. Signals
  440. -------
  441. .. _class_TextEdit_signal_caret_changed:
  442. .. rst-class:: classref-signal
  443. **caret_changed** **(** **)**
  444. Emitted when the caret changes position.
  445. .. rst-class:: classref-item-separator
  446. ----
  447. .. _class_TextEdit_signal_gutter_added:
  448. .. rst-class:: classref-signal
  449. **gutter_added** **(** **)**
  450. Emitted when a gutter is added.
  451. .. rst-class:: classref-item-separator
  452. ----
  453. .. _class_TextEdit_signal_gutter_clicked:
  454. .. rst-class:: classref-signal
  455. **gutter_clicked** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)**
  456. Emitted when a gutter is clicked.
  457. .. rst-class:: classref-item-separator
  458. ----
  459. .. _class_TextEdit_signal_gutter_removed:
  460. .. rst-class:: classref-signal
  461. **gutter_removed** **(** **)**
  462. Emitted when a gutter is removed.
  463. .. rst-class:: classref-item-separator
  464. ----
  465. .. _class_TextEdit_signal_lines_edited_from:
  466. .. rst-class:: classref-signal
  467. **lines_edited_from** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)**
  468. Emitted immediately when the text changes.
  469. When text is added ``from_line`` will be less then ``to_line``. On a remove ``to_line`` will be less then ``from_line``.
  470. .. rst-class:: classref-item-separator
  471. ----
  472. .. _class_TextEdit_signal_text_changed:
  473. .. rst-class:: classref-signal
  474. **text_changed** **(** **)**
  475. Emitted when the text changes.
  476. .. rst-class:: classref-item-separator
  477. ----
  478. .. _class_TextEdit_signal_text_set:
  479. .. rst-class:: classref-signal
  480. **text_set** **(** **)**
  481. Emitted when :ref:`clear<class_TextEdit_method_clear>` is called or :ref:`text<class_TextEdit_property_text>` is set.
  482. .. rst-class:: classref-section-separator
  483. ----
  484. .. rst-class:: classref-descriptions-group
  485. Enumerations
  486. ------------
  487. .. _enum_TextEdit_MenuItems:
  488. .. rst-class:: classref-enumeration
  489. enum **MenuItems**:
  490. .. _class_TextEdit_constant_MENU_CUT:
  491. .. rst-class:: classref-enumeration-constant
  492. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CUT** = ``0``
  493. Cuts (copies and clears) the selected text.
  494. .. _class_TextEdit_constant_MENU_COPY:
  495. .. rst-class:: classref-enumeration-constant
  496. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_COPY** = ``1``
  497. Copies the selected text.
  498. .. _class_TextEdit_constant_MENU_PASTE:
  499. .. rst-class:: classref-enumeration-constant
  500. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_PASTE** = ``2``
  501. Pastes the clipboard text over the selected text (or at the cursor's position).
  502. .. _class_TextEdit_constant_MENU_CLEAR:
  503. .. rst-class:: classref-enumeration-constant
  504. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CLEAR** = ``3``
  505. Erases the whole **TextEdit** text.
  506. .. _class_TextEdit_constant_MENU_SELECT_ALL:
  507. .. rst-class:: classref-enumeration-constant
  508. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SELECT_ALL** = ``4``
  509. Selects the whole **TextEdit** text.
  510. .. _class_TextEdit_constant_MENU_UNDO:
  511. .. rst-class:: classref-enumeration-constant
  512. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_UNDO** = ``5``
  513. Undoes the previous action.
  514. .. _class_TextEdit_constant_MENU_REDO:
  515. .. rst-class:: classref-enumeration-constant
  516. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_REDO** = ``6``
  517. Redoes the previous action.
  518. .. _class_TextEdit_constant_MENU_SUBMENU_TEXT_DIR:
  519. .. rst-class:: classref-enumeration-constant
  520. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_TEXT_DIR** = ``7``
  521. ID of "Text Writing Direction" submenu.
  522. .. _class_TextEdit_constant_MENU_DIR_INHERITED:
  523. .. rst-class:: classref-enumeration-constant
  524. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_INHERITED** = ``8``
  525. Sets text direction to inherited.
  526. .. _class_TextEdit_constant_MENU_DIR_AUTO:
  527. .. rst-class:: classref-enumeration-constant
  528. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_AUTO** = ``9``
  529. Sets text direction to automatic.
  530. .. _class_TextEdit_constant_MENU_DIR_LTR:
  531. .. rst-class:: classref-enumeration-constant
  532. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_LTR** = ``10``
  533. Sets text direction to left-to-right.
  534. .. _class_TextEdit_constant_MENU_DIR_RTL:
  535. .. rst-class:: classref-enumeration-constant
  536. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_RTL** = ``11``
  537. Sets text direction to right-to-left.
  538. .. _class_TextEdit_constant_MENU_DISPLAY_UCC:
  539. .. rst-class:: classref-enumeration-constant
  540. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DISPLAY_UCC** = ``12``
  541. Toggles control character display.
  542. .. _class_TextEdit_constant_MENU_SUBMENU_INSERT_UCC:
  543. .. rst-class:: classref-enumeration-constant
  544. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_INSERT_UCC** = ``13``
  545. ID of "Insert Control Character" submenu.
  546. .. _class_TextEdit_constant_MENU_INSERT_LRM:
  547. .. rst-class:: classref-enumeration-constant
  548. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRM** = ``14``
  549. Inserts left-to-right mark (LRM) character.
  550. .. _class_TextEdit_constant_MENU_INSERT_RLM:
  551. .. rst-class:: classref-enumeration-constant
  552. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLM** = ``15``
  553. Inserts right-to-left mark (RLM) character.
  554. .. _class_TextEdit_constant_MENU_INSERT_LRE:
  555. .. rst-class:: classref-enumeration-constant
  556. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRE** = ``16``
  557. Inserts start of left-to-right embedding (LRE) character.
  558. .. _class_TextEdit_constant_MENU_INSERT_RLE:
  559. .. rst-class:: classref-enumeration-constant
  560. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLE** = ``17``
  561. Inserts start of right-to-left embedding (RLE) character.
  562. .. _class_TextEdit_constant_MENU_INSERT_LRO:
  563. .. rst-class:: classref-enumeration-constant
  564. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRO** = ``18``
  565. Inserts start of left-to-right override (LRO) character.
  566. .. _class_TextEdit_constant_MENU_INSERT_RLO:
  567. .. rst-class:: classref-enumeration-constant
  568. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLO** = ``19``
  569. Inserts start of right-to-left override (RLO) character.
  570. .. _class_TextEdit_constant_MENU_INSERT_PDF:
  571. .. rst-class:: classref-enumeration-constant
  572. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDF** = ``20``
  573. Inserts pop direction formatting (PDF) character.
  574. .. _class_TextEdit_constant_MENU_INSERT_ALM:
  575. .. rst-class:: classref-enumeration-constant
  576. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ALM** = ``21``
  577. Inserts Arabic letter mark (ALM) character.
  578. .. _class_TextEdit_constant_MENU_INSERT_LRI:
  579. .. rst-class:: classref-enumeration-constant
  580. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRI** = ``22``
  581. Inserts left-to-right isolate (LRI) character.
  582. .. _class_TextEdit_constant_MENU_INSERT_RLI:
  583. .. rst-class:: classref-enumeration-constant
  584. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLI** = ``23``
  585. Inserts right-to-left isolate (RLI) character.
  586. .. _class_TextEdit_constant_MENU_INSERT_FSI:
  587. .. rst-class:: classref-enumeration-constant
  588. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_FSI** = ``24``
  589. Inserts first strong isolate (FSI) character.
  590. .. _class_TextEdit_constant_MENU_INSERT_PDI:
  591. .. rst-class:: classref-enumeration-constant
  592. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDI** = ``25``
  593. Inserts pop direction isolate (PDI) character.
  594. .. _class_TextEdit_constant_MENU_INSERT_ZWJ:
  595. .. rst-class:: classref-enumeration-constant
  596. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWJ** = ``26``
  597. Inserts zero width joiner (ZWJ) character.
  598. .. _class_TextEdit_constant_MENU_INSERT_ZWNJ:
  599. .. rst-class:: classref-enumeration-constant
  600. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWNJ** = ``27``
  601. Inserts zero width non-joiner (ZWNJ) character.
  602. .. _class_TextEdit_constant_MENU_INSERT_WJ:
  603. .. rst-class:: classref-enumeration-constant
  604. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_WJ** = ``28``
  605. Inserts word joiner (WJ) character.
  606. .. _class_TextEdit_constant_MENU_INSERT_SHY:
  607. .. rst-class:: classref-enumeration-constant
  608. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_SHY** = ``29``
  609. Inserts soft hyphen (SHY) character.
  610. .. _class_TextEdit_constant_MENU_MAX:
  611. .. rst-class:: classref-enumeration-constant
  612. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_MAX** = ``30``
  613. Represents the size of the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  614. .. rst-class:: classref-item-separator
  615. ----
  616. .. _enum_TextEdit_EditAction:
  617. .. rst-class:: classref-enumeration
  618. enum **EditAction**:
  619. .. _class_TextEdit_constant_ACTION_NONE:
  620. .. rst-class:: classref-enumeration-constant
  621. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_NONE** = ``0``
  622. No current action.
  623. .. _class_TextEdit_constant_ACTION_TYPING:
  624. .. rst-class:: classref-enumeration-constant
  625. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_TYPING** = ``1``
  626. A typing action.
  627. .. _class_TextEdit_constant_ACTION_BACKSPACE:
  628. .. rst-class:: classref-enumeration-constant
  629. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_BACKSPACE** = ``2``
  630. A backwards delete action.
  631. .. _class_TextEdit_constant_ACTION_DELETE:
  632. .. rst-class:: classref-enumeration-constant
  633. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_DELETE** = ``3``
  634. A forward delete action.
  635. .. rst-class:: classref-item-separator
  636. ----
  637. .. _enum_TextEdit_SearchFlags:
  638. .. rst-class:: classref-enumeration
  639. enum **SearchFlags**:
  640. .. _class_TextEdit_constant_SEARCH_MATCH_CASE:
  641. .. rst-class:: classref-enumeration-constant
  642. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_MATCH_CASE** = ``1``
  643. Match case when searching.
  644. .. _class_TextEdit_constant_SEARCH_WHOLE_WORDS:
  645. .. rst-class:: classref-enumeration-constant
  646. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_WHOLE_WORDS** = ``2``
  647. Match whole words when searching.
  648. .. _class_TextEdit_constant_SEARCH_BACKWARDS:
  649. .. rst-class:: classref-enumeration-constant
  650. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_BACKWARDS** = ``4``
  651. Search from end to beginning.
  652. .. rst-class:: classref-item-separator
  653. ----
  654. .. _enum_TextEdit_CaretType:
  655. .. rst-class:: classref-enumeration
  656. enum **CaretType**:
  657. .. _class_TextEdit_constant_CARET_TYPE_LINE:
  658. .. rst-class:: classref-enumeration-constant
  659. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_LINE** = ``0``
  660. Vertical line caret.
  661. .. _class_TextEdit_constant_CARET_TYPE_BLOCK:
  662. .. rst-class:: classref-enumeration-constant
  663. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_BLOCK** = ``1``
  664. Block caret.
  665. .. rst-class:: classref-item-separator
  666. ----
  667. .. _enum_TextEdit_SelectionMode:
  668. .. rst-class:: classref-enumeration
  669. enum **SelectionMode**:
  670. .. _class_TextEdit_constant_SELECTION_MODE_NONE:
  671. .. rst-class:: classref-enumeration-constant
  672. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_NONE** = ``0``
  673. Not selecting.
  674. .. _class_TextEdit_constant_SELECTION_MODE_SHIFT:
  675. .. rst-class:: classref-enumeration-constant
  676. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_SHIFT** = ``1``
  677. Select as if ``shift`` is pressed.
  678. .. _class_TextEdit_constant_SELECTION_MODE_POINTER:
  679. .. rst-class:: classref-enumeration-constant
  680. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_POINTER** = ``2``
  681. Select single characters as if the user single clicked.
  682. .. _class_TextEdit_constant_SELECTION_MODE_WORD:
  683. .. rst-class:: classref-enumeration-constant
  684. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_WORD** = ``3``
  685. Select whole words as if the user double clicked.
  686. .. _class_TextEdit_constant_SELECTION_MODE_LINE:
  687. .. rst-class:: classref-enumeration-constant
  688. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_LINE** = ``4``
  689. Select whole lines as if the user triple clicked.
  690. .. rst-class:: classref-item-separator
  691. ----
  692. .. _enum_TextEdit_LineWrappingMode:
  693. .. rst-class:: classref-enumeration
  694. enum **LineWrappingMode**:
  695. .. _class_TextEdit_constant_LINE_WRAPPING_NONE:
  696. .. rst-class:: classref-enumeration-constant
  697. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_NONE** = ``0``
  698. Line wrapping is disabled.
  699. .. _class_TextEdit_constant_LINE_WRAPPING_BOUNDARY:
  700. .. rst-class:: classref-enumeration-constant
  701. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_BOUNDARY** = ``1``
  702. Line wrapping occurs at the control boundary, beyond what would normally be visible.
  703. .. rst-class:: classref-item-separator
  704. ----
  705. .. _enum_TextEdit_GutterType:
  706. .. rst-class:: classref-enumeration
  707. enum **GutterType**:
  708. .. _class_TextEdit_constant_GUTTER_TYPE_STRING:
  709. .. rst-class:: classref-enumeration-constant
  710. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_STRING** = ``0``
  711. Draw a string.
  712. .. _class_TextEdit_constant_GUTTER_TYPE_ICON:
  713. .. rst-class:: classref-enumeration-constant
  714. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_ICON** = ``1``
  715. Draw an icon.
  716. .. _class_TextEdit_constant_GUTTER_TYPE_CUSTOM:
  717. .. rst-class:: classref-enumeration-constant
  718. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_CUSTOM** = ``2``
  719. Custom draw.
  720. .. rst-class:: classref-section-separator
  721. ----
  722. .. rst-class:: classref-descriptions-group
  723. Property Descriptions
  724. ---------------------
  725. .. _class_TextEdit_property_caret_blink:
  726. .. rst-class:: classref-property
  727. :ref:`bool<class_bool>` **caret_blink** = ``false``
  728. .. rst-class:: classref-property-setget
  729. - void **set_caret_blink_enabled** **(** :ref:`bool<class_bool>` value **)**
  730. - :ref:`bool<class_bool>` **is_caret_blink_enabled** **(** **)**
  731. If ``true``, makes the caret blink.
  732. .. rst-class:: classref-item-separator
  733. ----
  734. .. _class_TextEdit_property_caret_blink_interval:
  735. .. rst-class:: classref-property
  736. :ref:`float<class_float>` **caret_blink_interval** = ``0.65``
  737. .. rst-class:: classref-property-setget
  738. - void **set_caret_blink_interval** **(** :ref:`float<class_float>` value **)**
  739. - :ref:`float<class_float>` **get_caret_blink_interval** **(** **)**
  740. The interval at which the caret blinks (in seconds).
  741. .. rst-class:: classref-item-separator
  742. ----
  743. .. _class_TextEdit_property_caret_draw_when_editable_disabled:
  744. .. rst-class:: classref-property
  745. :ref:`bool<class_bool>` **caret_draw_when_editable_disabled** = ``false``
  746. .. rst-class:: classref-property-setget
  747. - void **set_draw_caret_when_editable_disabled** **(** :ref:`bool<class_bool>` value **)**
  748. - :ref:`bool<class_bool>` **is_drawing_caret_when_editable_disabled** **(** **)**
  749. If ``true``, caret will be visible when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  750. .. rst-class:: classref-item-separator
  751. ----
  752. .. _class_TextEdit_property_caret_mid_grapheme:
  753. .. rst-class:: classref-property
  754. :ref:`bool<class_bool>` **caret_mid_grapheme** = ``true``
  755. .. rst-class:: classref-property-setget
  756. - void **set_caret_mid_grapheme_enabled** **(** :ref:`bool<class_bool>` value **)**
  757. - :ref:`bool<class_bool>` **is_caret_mid_grapheme_enabled** **(** **)**
  758. Allow moving caret, selecting and removing the individual composite character components.
  759. \ **Note:** :kbd:`Backspace` is always removing individual composite character components.
  760. .. rst-class:: classref-item-separator
  761. ----
  762. .. _class_TextEdit_property_caret_move_on_right_click:
  763. .. rst-class:: classref-property
  764. :ref:`bool<class_bool>` **caret_move_on_right_click** = ``true``
  765. .. rst-class:: classref-property-setget
  766. - void **set_move_caret_on_right_click_enabled** **(** :ref:`bool<class_bool>` value **)**
  767. - :ref:`bool<class_bool>` **is_move_caret_on_right_click_enabled** **(** **)**
  768. If ``true``, a right-click moves the caret at the mouse position before displaying the context menu.
  769. If ``false``, the context menu disregards mouse location.
  770. .. rst-class:: classref-item-separator
  771. ----
  772. .. _class_TextEdit_property_caret_multiple:
  773. .. rst-class:: classref-property
  774. :ref:`bool<class_bool>` **caret_multiple** = ``true``
  775. .. rst-class:: classref-property-setget
  776. - void **set_multiple_carets_enabled** **(** :ref:`bool<class_bool>` value **)**
  777. - :ref:`bool<class_bool>` **is_multiple_carets_enabled** **(** **)**
  778. Sets if multiple carets are allowed.
  779. .. rst-class:: classref-item-separator
  780. ----
  781. .. _class_TextEdit_property_caret_type:
  782. .. rst-class:: classref-property
  783. :ref:`CaretType<enum_TextEdit_CaretType>` **caret_type** = ``0``
  784. .. rst-class:: classref-property-setget
  785. - void **set_caret_type** **(** :ref:`CaretType<enum_TextEdit_CaretType>` value **)**
  786. - :ref:`CaretType<enum_TextEdit_CaretType>` **get_caret_type** **(** **)**
  787. Set the type of caret to draw.
  788. .. rst-class:: classref-item-separator
  789. ----
  790. .. _class_TextEdit_property_context_menu_enabled:
  791. .. rst-class:: classref-property
  792. :ref:`bool<class_bool>` **context_menu_enabled** = ``true``
  793. .. rst-class:: classref-property-setget
  794. - void **set_context_menu_enabled** **(** :ref:`bool<class_bool>` value **)**
  795. - :ref:`bool<class_bool>` **is_context_menu_enabled** **(** **)**
  796. If ``true``, a right-click displays the context menu.
  797. .. rst-class:: classref-item-separator
  798. ----
  799. .. _class_TextEdit_property_deselect_on_focus_loss_enabled:
  800. .. rst-class:: classref-property
  801. :ref:`bool<class_bool>` **deselect_on_focus_loss_enabled** = ``true``
  802. .. rst-class:: classref-property-setget
  803. - void **set_deselect_on_focus_loss_enabled** **(** :ref:`bool<class_bool>` value **)**
  804. - :ref:`bool<class_bool>` **is_deselect_on_focus_loss_enabled** **(** **)**
  805. If ``true``, the selected text will be deselected when focus is lost.
  806. .. rst-class:: classref-item-separator
  807. ----
  808. .. _class_TextEdit_property_drag_and_drop_selection_enabled:
  809. .. rst-class:: classref-property
  810. :ref:`bool<class_bool>` **drag_and_drop_selection_enabled** = ``true``
  811. .. rst-class:: classref-property-setget
  812. - void **set_drag_and_drop_selection_enabled** **(** :ref:`bool<class_bool>` value **)**
  813. - :ref:`bool<class_bool>` **is_drag_and_drop_selection_enabled** **(** **)**
  814. If ``true``, allow drag and drop of selected text.
  815. .. rst-class:: classref-item-separator
  816. ----
  817. .. _class_TextEdit_property_draw_control_chars:
  818. .. rst-class:: classref-property
  819. :ref:`bool<class_bool>` **draw_control_chars** = ``false``
  820. .. rst-class:: classref-property-setget
  821. - void **set_draw_control_chars** **(** :ref:`bool<class_bool>` value **)**
  822. - :ref:`bool<class_bool>` **get_draw_control_chars** **(** **)**
  823. If ``true``, control characters are displayed.
  824. .. rst-class:: classref-item-separator
  825. ----
  826. .. _class_TextEdit_property_draw_spaces:
  827. .. rst-class:: classref-property
  828. :ref:`bool<class_bool>` **draw_spaces** = ``false``
  829. .. rst-class:: classref-property-setget
  830. - void **set_draw_spaces** **(** :ref:`bool<class_bool>` value **)**
  831. - :ref:`bool<class_bool>` **is_drawing_spaces** **(** **)**
  832. If ``true``, the "space" character will have a visible representation.
  833. .. rst-class:: classref-item-separator
  834. ----
  835. .. _class_TextEdit_property_draw_tabs:
  836. .. rst-class:: classref-property
  837. :ref:`bool<class_bool>` **draw_tabs** = ``false``
  838. .. rst-class:: classref-property-setget
  839. - void **set_draw_tabs** **(** :ref:`bool<class_bool>` value **)**
  840. - :ref:`bool<class_bool>` **is_drawing_tabs** **(** **)**
  841. If ``true``, the "tab" character will have a visible representation.
  842. .. rst-class:: classref-item-separator
  843. ----
  844. .. _class_TextEdit_property_editable:
  845. .. rst-class:: classref-property
  846. :ref:`bool<class_bool>` **editable** = ``true``
  847. .. rst-class:: classref-property-setget
  848. - void **set_editable** **(** :ref:`bool<class_bool>` value **)**
  849. - :ref:`bool<class_bool>` **is_editable** **(** **)**
  850. If ``false``, existing text cannot be modified and new text cannot be added.
  851. .. rst-class:: classref-item-separator
  852. ----
  853. .. _class_TextEdit_property_highlight_all_occurrences:
  854. .. rst-class:: classref-property
  855. :ref:`bool<class_bool>` **highlight_all_occurrences** = ``false``
  856. .. rst-class:: classref-property-setget
  857. - void **set_highlight_all_occurrences** **(** :ref:`bool<class_bool>` value **)**
  858. - :ref:`bool<class_bool>` **is_highlight_all_occurrences_enabled** **(** **)**
  859. If ``true``, all occurrences of the selected text will be highlighted.
  860. .. rst-class:: classref-item-separator
  861. ----
  862. .. _class_TextEdit_property_highlight_current_line:
  863. .. rst-class:: classref-property
  864. :ref:`bool<class_bool>` **highlight_current_line** = ``false``
  865. .. rst-class:: classref-property-setget
  866. - void **set_highlight_current_line** **(** :ref:`bool<class_bool>` value **)**
  867. - :ref:`bool<class_bool>` **is_highlight_current_line_enabled** **(** **)**
  868. If ``true``, the line containing the cursor is highlighted.
  869. .. rst-class:: classref-item-separator
  870. ----
  871. .. _class_TextEdit_property_language:
  872. .. rst-class:: classref-property
  873. :ref:`String<class_String>` **language** = ``""``
  874. .. rst-class:: classref-property-setget
  875. - void **set_language** **(** :ref:`String<class_String>` value **)**
  876. - :ref:`String<class_String>` **get_language** **(** **)**
  877. Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
  878. .. rst-class:: classref-item-separator
  879. ----
  880. .. _class_TextEdit_property_middle_mouse_paste_enabled:
  881. .. rst-class:: classref-property
  882. :ref:`bool<class_bool>` **middle_mouse_paste_enabled** = ``true``
  883. .. rst-class:: classref-property-setget
  884. - void **set_middle_mouse_paste_enabled** **(** :ref:`bool<class_bool>` value **)**
  885. - :ref:`bool<class_bool>` **is_middle_mouse_paste_enabled** **(** **)**
  886. If ``false``, using middle mouse button to paste clipboard will be disabled.
  887. \ **Note:** This method is only implemented on Linux.
  888. .. rst-class:: classref-item-separator
  889. ----
  890. .. _class_TextEdit_property_minimap_draw:
  891. .. rst-class:: classref-property
  892. :ref:`bool<class_bool>` **minimap_draw** = ``false``
  893. .. rst-class:: classref-property-setget
  894. - void **set_draw_minimap** **(** :ref:`bool<class_bool>` value **)**
  895. - :ref:`bool<class_bool>` **is_drawing_minimap** **(** **)**
  896. If ``true``, a minimap is shown, providing an outline of your source code.
  897. .. rst-class:: classref-item-separator
  898. ----
  899. .. _class_TextEdit_property_minimap_width:
  900. .. rst-class:: classref-property
  901. :ref:`int<class_int>` **minimap_width** = ``80``
  902. .. rst-class:: classref-property-setget
  903. - void **set_minimap_width** **(** :ref:`int<class_int>` value **)**
  904. - :ref:`int<class_int>` **get_minimap_width** **(** **)**
  905. The width, in pixels, of the minimap.
  906. .. rst-class:: classref-item-separator
  907. ----
  908. .. _class_TextEdit_property_placeholder_text:
  909. .. rst-class:: classref-property
  910. :ref:`String<class_String>` **placeholder_text** = ``""``
  911. .. rst-class:: classref-property-setget
  912. - void **set_placeholder** **(** :ref:`String<class_String>` value **)**
  913. - :ref:`String<class_String>` **get_placeholder** **(** **)**
  914. Text shown when the **TextEdit** is empty. It is **not** the **TextEdit**'s default value (see :ref:`text<class_TextEdit_property_text>`).
  915. .. rst-class:: classref-item-separator
  916. ----
  917. .. _class_TextEdit_property_scroll_fit_content_height:
  918. .. rst-class:: classref-property
  919. :ref:`bool<class_bool>` **scroll_fit_content_height** = ``false``
  920. .. rst-class:: classref-property-setget
  921. - void **set_fit_content_height_enabled** **(** :ref:`bool<class_bool>` value **)**
  922. - :ref:`bool<class_bool>` **is_fit_content_height_enabled** **(** **)**
  923. If ``true``, **TextEdit** will disable vertical scroll and fit minimum height to the number of visible lines.
  924. .. rst-class:: classref-item-separator
  925. ----
  926. .. _class_TextEdit_property_scroll_horizontal:
  927. .. rst-class:: classref-property
  928. :ref:`int<class_int>` **scroll_horizontal** = ``0``
  929. .. rst-class:: classref-property-setget
  930. - void **set_h_scroll** **(** :ref:`int<class_int>` value **)**
  931. - :ref:`int<class_int>` **get_h_scroll** **(** **)**
  932. If there is a horizontal scrollbar, this determines the current horizontal scroll value in pixels.
  933. .. rst-class:: classref-item-separator
  934. ----
  935. .. _class_TextEdit_property_scroll_past_end_of_file:
  936. .. rst-class:: classref-property
  937. :ref:`bool<class_bool>` **scroll_past_end_of_file** = ``false``
  938. .. rst-class:: classref-property-setget
  939. - void **set_scroll_past_end_of_file_enabled** **(** :ref:`bool<class_bool>` value **)**
  940. - :ref:`bool<class_bool>` **is_scroll_past_end_of_file_enabled** **(** **)**
  941. Allow scrolling past the last line into "virtual" space.
  942. .. rst-class:: classref-item-separator
  943. ----
  944. .. _class_TextEdit_property_scroll_smooth:
  945. .. rst-class:: classref-property
  946. :ref:`bool<class_bool>` **scroll_smooth** = ``false``
  947. .. rst-class:: classref-property-setget
  948. - void **set_smooth_scroll_enabled** **(** :ref:`bool<class_bool>` value **)**
  949. - :ref:`bool<class_bool>` **is_smooth_scroll_enabled** **(** **)**
  950. Scroll smoothly over the text rather then jumping to the next location.
  951. .. rst-class:: classref-item-separator
  952. ----
  953. .. _class_TextEdit_property_scroll_v_scroll_speed:
  954. .. rst-class:: classref-property
  955. :ref:`float<class_float>` **scroll_v_scroll_speed** = ``80.0``
  956. .. rst-class:: classref-property-setget
  957. - void **set_v_scroll_speed** **(** :ref:`float<class_float>` value **)**
  958. - :ref:`float<class_float>` **get_v_scroll_speed** **(** **)**
  959. Sets the scroll speed with the minimap or when :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` is enabled.
  960. .. rst-class:: classref-item-separator
  961. ----
  962. .. _class_TextEdit_property_scroll_vertical:
  963. .. rst-class:: classref-property
  964. :ref:`float<class_float>` **scroll_vertical** = ``0.0``
  965. .. rst-class:: classref-property-setget
  966. - void **set_v_scroll** **(** :ref:`float<class_float>` value **)**
  967. - :ref:`float<class_float>` **get_v_scroll** **(** **)**
  968. If there is a vertical scrollbar, this determines the current vertical scroll value in line numbers, starting at 0 for the top line.
  969. .. rst-class:: classref-item-separator
  970. ----
  971. .. _class_TextEdit_property_selecting_enabled:
  972. .. rst-class:: classref-property
  973. :ref:`bool<class_bool>` **selecting_enabled** = ``true``
  974. .. rst-class:: classref-property-setget
  975. - void **set_selecting_enabled** **(** :ref:`bool<class_bool>` value **)**
  976. - :ref:`bool<class_bool>` **is_selecting_enabled** **(** **)**
  977. If ``true``, text can be selected.
  978. If ``false``, text can not be selected by the user or by the :ref:`select<class_TextEdit_method_select>` or :ref:`select_all<class_TextEdit_method_select_all>` methods.
  979. .. rst-class:: classref-item-separator
  980. ----
  981. .. _class_TextEdit_property_shortcut_keys_enabled:
  982. .. rst-class:: classref-property
  983. :ref:`bool<class_bool>` **shortcut_keys_enabled** = ``true``
  984. .. rst-class:: classref-property-setget
  985. - void **set_shortcut_keys_enabled** **(** :ref:`bool<class_bool>` value **)**
  986. - :ref:`bool<class_bool>` **is_shortcut_keys_enabled** **(** **)**
  987. If ``true``, shortcut keys for context menu items are enabled, even if the context menu is disabled.
  988. .. rst-class:: classref-item-separator
  989. ----
  990. .. _class_TextEdit_property_structured_text_bidi_override:
  991. .. rst-class:: classref-property
  992. :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0``
  993. .. rst-class:: classref-property-setget
  994. - void **set_structured_text_bidi_override** **(** :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` value **)**
  995. - :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override** **(** **)**
  996. Set BiDi algorithm override for the structured text.
  997. .. rst-class:: classref-item-separator
  998. ----
  999. .. _class_TextEdit_property_structured_text_bidi_override_options:
  1000. .. rst-class:: classref-property
  1001. :ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]``
  1002. .. rst-class:: classref-property-setget
  1003. - void **set_structured_text_bidi_override_options** **(** :ref:`Array<class_Array>` value **)**
  1004. - :ref:`Array<class_Array>` **get_structured_text_bidi_override_options** **(** **)**
  1005. Set additional options for BiDi override.
  1006. .. rst-class:: classref-item-separator
  1007. ----
  1008. .. _class_TextEdit_property_syntax_highlighter:
  1009. .. rst-class:: classref-property
  1010. :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **syntax_highlighter**
  1011. .. rst-class:: classref-property-setget
  1012. - void **set_syntax_highlighter** **(** :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` value **)**
  1013. - :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **get_syntax_highlighter** **(** **)**
  1014. Sets the :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` to use.
  1015. .. rst-class:: classref-item-separator
  1016. ----
  1017. .. _class_TextEdit_property_text:
  1018. .. rst-class:: classref-property
  1019. :ref:`String<class_String>` **text** = ``""``
  1020. .. rst-class:: classref-property-setget
  1021. - void **set_text** **(** :ref:`String<class_String>` value **)**
  1022. - :ref:`String<class_String>` **get_text** **(** **)**
  1023. String value of the **TextEdit**.
  1024. .. rst-class:: classref-item-separator
  1025. ----
  1026. .. _class_TextEdit_property_text_direction:
  1027. .. rst-class:: classref-property
  1028. :ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0``
  1029. .. rst-class:: classref-property-setget
  1030. - void **set_text_direction** **(** :ref:`TextDirection<enum_Control_TextDirection>` value **)**
  1031. - :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction** **(** **)**
  1032. Base text writing direction.
  1033. .. rst-class:: classref-item-separator
  1034. ----
  1035. .. _class_TextEdit_property_virtual_keyboard_enabled:
  1036. .. rst-class:: classref-property
  1037. :ref:`bool<class_bool>` **virtual_keyboard_enabled** = ``true``
  1038. .. rst-class:: classref-property-setget
  1039. - void **set_virtual_keyboard_enabled** **(** :ref:`bool<class_bool>` value **)**
  1040. - :ref:`bool<class_bool>` **is_virtual_keyboard_enabled** **(** **)**
  1041. If ``true``, the native virtual keyboard is shown when focused on platforms that support it.
  1042. .. rst-class:: classref-item-separator
  1043. ----
  1044. .. _class_TextEdit_property_wrap_mode:
  1045. .. rst-class:: classref-property
  1046. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **wrap_mode** = ``0``
  1047. .. rst-class:: classref-property-setget
  1048. - void **set_line_wrapping_mode** **(** :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` value **)**
  1049. - :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **get_line_wrapping_mode** **(** **)**
  1050. Sets the line wrapping mode to use.
  1051. .. rst-class:: classref-section-separator
  1052. ----
  1053. .. rst-class:: classref-descriptions-group
  1054. Method Descriptions
  1055. -------------------
  1056. .. _class_TextEdit_method__backspace:
  1057. .. rst-class:: classref-method
  1058. void **_backspace** **(** :ref:`int<class_int>` caret_index **)** |virtual|
  1059. Override this method to define what happens when the user presses the backspace key.
  1060. .. rst-class:: classref-item-separator
  1061. ----
  1062. .. _class_TextEdit_method__copy:
  1063. .. rst-class:: classref-method
  1064. void **_copy** **(** :ref:`int<class_int>` caret_index **)** |virtual|
  1065. Override this method to define what happens when the user performs a copy operation.
  1066. .. rst-class:: classref-item-separator
  1067. ----
  1068. .. _class_TextEdit_method__cut:
  1069. .. rst-class:: classref-method
  1070. void **_cut** **(** :ref:`int<class_int>` caret_index **)** |virtual|
  1071. Override this method to define what happens when the user performs a cut operation.
  1072. .. rst-class:: classref-item-separator
  1073. ----
  1074. .. _class_TextEdit_method__handle_unicode_input:
  1075. .. rst-class:: classref-method
  1076. void **_handle_unicode_input** **(** :ref:`int<class_int>` unicode_char, :ref:`int<class_int>` caret_index **)** |virtual|
  1077. Override this method to define what happens when the user types in the provided key ``unicode_char``.
  1078. .. rst-class:: classref-item-separator
  1079. ----
  1080. .. _class_TextEdit_method__paste:
  1081. .. rst-class:: classref-method
  1082. void **_paste** **(** :ref:`int<class_int>` caret_index **)** |virtual|
  1083. Override this method to define what happens when the user performs a paste operation.
  1084. .. rst-class:: classref-item-separator
  1085. ----
  1086. .. _class_TextEdit_method__paste_primary_clipboard:
  1087. .. rst-class:: classref-method
  1088. void **_paste_primary_clipboard** **(** :ref:`int<class_int>` caret_index **)** |virtual|
  1089. Override this method to define what happens when the user performs a paste operation with middle mouse button.
  1090. \ **Note:** This method is only implemented on Linux.
  1091. .. rst-class:: classref-item-separator
  1092. ----
  1093. .. _class_TextEdit_method_add_caret:
  1094. .. rst-class:: classref-method
  1095. :ref:`int<class_int>` **add_caret** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` col **)**
  1096. Adds a new caret at the given location. Returns the index of the new caret, or ``-1`` if the location is invalid.
  1097. .. rst-class:: classref-item-separator
  1098. ----
  1099. .. _class_TextEdit_method_add_caret_at_carets:
  1100. .. rst-class:: classref-method
  1101. void **add_caret_at_carets** **(** :ref:`bool<class_bool>` below **)**
  1102. Adds an additional caret above or below every caret. If ``below`` is true the new caret will be added below and above otherwise.
  1103. .. rst-class:: classref-item-separator
  1104. ----
  1105. .. _class_TextEdit_method_add_gutter:
  1106. .. rst-class:: classref-method
  1107. void **add_gutter** **(** :ref:`int<class_int>` at=-1 **)**
  1108. Register a new gutter to this **TextEdit**. Use ``at`` to have a specific gutter order. A value of ``-1`` appends the gutter to the right.
  1109. .. rst-class:: classref-item-separator
  1110. ----
  1111. .. _class_TextEdit_method_add_selection_for_next_occurrence:
  1112. .. rst-class:: classref-method
  1113. void **add_selection_for_next_occurrence** **(** **)**
  1114. Adds a selection and a caret for the next occurrence of the current selection. If there is no active selection, selects word under caret.
  1115. .. rst-class:: classref-item-separator
  1116. ----
  1117. .. _class_TextEdit_method_adjust_carets_after_edit:
  1118. .. rst-class:: classref-method
  1119. void **adjust_carets_after_edit** **(** :ref:`int<class_int>` caret, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_col, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_col **)**
  1120. Reposition the carets affected by the edit. This assumes edits are applied in edit order, see :ref:`get_caret_index_edit_order<class_TextEdit_method_get_caret_index_edit_order>`.
  1121. .. rst-class:: classref-item-separator
  1122. ----
  1123. .. _class_TextEdit_method_adjust_viewport_to_caret:
  1124. .. rst-class:: classref-method
  1125. void **adjust_viewport_to_caret** **(** :ref:`int<class_int>` caret_index=0 **)**
  1126. Adjust the viewport so the caret is visible.
  1127. .. rst-class:: classref-item-separator
  1128. ----
  1129. .. _class_TextEdit_method_backspace:
  1130. .. rst-class:: classref-method
  1131. void **backspace** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1132. Called when the user presses the backspace key. Can be overridden with :ref:`_backspace<class_TextEdit_method__backspace>`.
  1133. .. rst-class:: classref-item-separator
  1134. ----
  1135. .. _class_TextEdit_method_begin_complex_operation:
  1136. .. rst-class:: classref-method
  1137. void **begin_complex_operation** **(** **)**
  1138. Starts a multipart edit. All edits will be treated as one action until :ref:`end_complex_operation<class_TextEdit_method_end_complex_operation>` is called.
  1139. .. rst-class:: classref-item-separator
  1140. ----
  1141. .. _class_TextEdit_method_center_viewport_to_caret:
  1142. .. rst-class:: classref-method
  1143. void **center_viewport_to_caret** **(** :ref:`int<class_int>` caret_index=0 **)**
  1144. Centers the viewport on the line the editing caret is at. This also resets the :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` value to ``0``.
  1145. .. rst-class:: classref-item-separator
  1146. ----
  1147. .. _class_TextEdit_method_clear:
  1148. .. rst-class:: classref-method
  1149. void **clear** **(** **)**
  1150. Performs a full reset of **TextEdit**, including undo history.
  1151. .. rst-class:: classref-item-separator
  1152. ----
  1153. .. _class_TextEdit_method_clear_undo_history:
  1154. .. rst-class:: classref-method
  1155. void **clear_undo_history** **(** **)**
  1156. Clears the undo history.
  1157. .. rst-class:: classref-item-separator
  1158. ----
  1159. .. _class_TextEdit_method_copy:
  1160. .. rst-class:: classref-method
  1161. void **copy** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1162. Copies the current text selection. Can be overridden with :ref:`_copy<class_TextEdit_method__copy>`.
  1163. .. rst-class:: classref-item-separator
  1164. ----
  1165. .. _class_TextEdit_method_cut:
  1166. .. rst-class:: classref-method
  1167. void **cut** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1168. Cut's the current selection. Can be overridden with :ref:`_cut<class_TextEdit_method__cut>`.
  1169. .. rst-class:: classref-item-separator
  1170. ----
  1171. .. _class_TextEdit_method_delete_selection:
  1172. .. rst-class:: classref-method
  1173. void **delete_selection** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1174. Deletes the selected text.
  1175. .. rst-class:: classref-item-separator
  1176. ----
  1177. .. _class_TextEdit_method_deselect:
  1178. .. rst-class:: classref-method
  1179. void **deselect** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1180. Deselects the current selection.
  1181. .. rst-class:: classref-item-separator
  1182. ----
  1183. .. _class_TextEdit_method_end_action:
  1184. .. rst-class:: classref-method
  1185. void **end_action** **(** **)**
  1186. Marks the end of steps in the current action started with :ref:`start_action<class_TextEdit_method_start_action>`.
  1187. .. rst-class:: classref-item-separator
  1188. ----
  1189. .. _class_TextEdit_method_end_complex_operation:
  1190. .. rst-class:: classref-method
  1191. void **end_complex_operation** **(** **)**
  1192. Ends a multipart edit, started with :ref:`begin_complex_operation<class_TextEdit_method_begin_complex_operation>`. If called outside a complex operation, the current operation is pushed onto the undo/redo stack.
  1193. .. rst-class:: classref-item-separator
  1194. ----
  1195. .. _class_TextEdit_method_get_caret_column:
  1196. .. rst-class:: classref-method
  1197. :ref:`int<class_int>` **get_caret_column** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1198. Returns the column the editing caret is at.
  1199. .. rst-class:: classref-item-separator
  1200. ----
  1201. .. _class_TextEdit_method_get_caret_count:
  1202. .. rst-class:: classref-method
  1203. :ref:`int<class_int>` **get_caret_count** **(** **)** |const|
  1204. Returns the number of carets in this **TextEdit**.
  1205. .. rst-class:: classref-item-separator
  1206. ----
  1207. .. _class_TextEdit_method_get_caret_draw_pos:
  1208. .. rst-class:: classref-method
  1209. :ref:`Vector2<class_Vector2>` **get_caret_draw_pos** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1210. Returns the caret pixel draw position.
  1211. .. rst-class:: classref-item-separator
  1212. ----
  1213. .. _class_TextEdit_method_get_caret_index_edit_order:
  1214. .. rst-class:: classref-method
  1215. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_caret_index_edit_order** **(** **)**
  1216. Returns a list of caret indexes in their edit order, this done from bottom to top. Edit order refers to the way actions such as :ref:`insert_text_at_caret<class_TextEdit_method_insert_text_at_caret>` are applied.
  1217. .. rst-class:: classref-item-separator
  1218. ----
  1219. .. _class_TextEdit_method_get_caret_line:
  1220. .. rst-class:: classref-method
  1221. :ref:`int<class_int>` **get_caret_line** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1222. Returns the line the editing caret is on.
  1223. .. rst-class:: classref-item-separator
  1224. ----
  1225. .. _class_TextEdit_method_get_caret_wrap_index:
  1226. .. rst-class:: classref-method
  1227. :ref:`int<class_int>` **get_caret_wrap_index** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1228. Returns the wrap index the editing caret is on.
  1229. .. rst-class:: classref-item-separator
  1230. ----
  1231. .. _class_TextEdit_method_get_first_non_whitespace_column:
  1232. .. rst-class:: classref-method
  1233. :ref:`int<class_int>` **get_first_non_whitespace_column** **(** :ref:`int<class_int>` line **)** |const|
  1234. Returns the first column containing a non-whitespace character.
  1235. .. rst-class:: classref-item-separator
  1236. ----
  1237. .. _class_TextEdit_method_get_first_visible_line:
  1238. .. rst-class:: classref-method
  1239. :ref:`int<class_int>` **get_first_visible_line** **(** **)** |const|
  1240. Returns the first visible line.
  1241. .. rst-class:: classref-item-separator
  1242. ----
  1243. .. _class_TextEdit_method_get_gutter_count:
  1244. .. rst-class:: classref-method
  1245. :ref:`int<class_int>` **get_gutter_count** **(** **)** |const|
  1246. Returns the number of gutters registered.
  1247. .. rst-class:: classref-item-separator
  1248. ----
  1249. .. _class_TextEdit_method_get_gutter_name:
  1250. .. rst-class:: classref-method
  1251. :ref:`String<class_String>` **get_gutter_name** **(** :ref:`int<class_int>` gutter **)** |const|
  1252. Returns the name of the gutter at the given index.
  1253. .. rst-class:: classref-item-separator
  1254. ----
  1255. .. _class_TextEdit_method_get_gutter_type:
  1256. .. rst-class:: classref-method
  1257. :ref:`GutterType<enum_TextEdit_GutterType>` **get_gutter_type** **(** :ref:`int<class_int>` gutter **)** |const|
  1258. Returns the type of the gutter at the given index.
  1259. .. rst-class:: classref-item-separator
  1260. ----
  1261. .. _class_TextEdit_method_get_gutter_width:
  1262. .. rst-class:: classref-method
  1263. :ref:`int<class_int>` **get_gutter_width** **(** :ref:`int<class_int>` gutter **)** |const|
  1264. Returns the width of the gutter at the given index.
  1265. .. rst-class:: classref-item-separator
  1266. ----
  1267. .. _class_TextEdit_method_get_h_scroll_bar:
  1268. .. rst-class:: classref-method
  1269. :ref:`HScrollBar<class_HScrollBar>` **get_h_scroll_bar** **(** **)** |const|
  1270. Returns the :ref:`HScrollBar<class_HScrollBar>` used by **TextEdit**.
  1271. .. rst-class:: classref-item-separator
  1272. ----
  1273. .. _class_TextEdit_method_get_indent_level:
  1274. .. rst-class:: classref-method
  1275. :ref:`int<class_int>` **get_indent_level** **(** :ref:`int<class_int>` line **)** |const|
  1276. Returns the number of spaces and ``tab * tab_size`` before the first char.
  1277. .. rst-class:: classref-item-separator
  1278. ----
  1279. .. _class_TextEdit_method_get_last_full_visible_line:
  1280. .. rst-class:: classref-method
  1281. :ref:`int<class_int>` **get_last_full_visible_line** **(** **)** |const|
  1282. Returns the last visible line. Use :ref:`get_last_full_visible_line_wrap_index<class_TextEdit_method_get_last_full_visible_line_wrap_index>` for the wrap index.
  1283. .. rst-class:: classref-item-separator
  1284. ----
  1285. .. _class_TextEdit_method_get_last_full_visible_line_wrap_index:
  1286. .. rst-class:: classref-method
  1287. :ref:`int<class_int>` **get_last_full_visible_line_wrap_index** **(** **)** |const|
  1288. Returns the last visible wrap index of the last visible line.
  1289. .. rst-class:: classref-item-separator
  1290. ----
  1291. .. _class_TextEdit_method_get_last_unhidden_line:
  1292. .. rst-class:: classref-method
  1293. :ref:`int<class_int>` **get_last_unhidden_line** **(** **)** |const|
  1294. Returns the last unhidden line in the entire **TextEdit**.
  1295. .. rst-class:: classref-item-separator
  1296. ----
  1297. .. _class_TextEdit_method_get_line:
  1298. .. rst-class:: classref-method
  1299. :ref:`String<class_String>` **get_line** **(** :ref:`int<class_int>` line **)** |const|
  1300. Returns the text of a specific line.
  1301. .. rst-class:: classref-item-separator
  1302. ----
  1303. .. _class_TextEdit_method_get_line_background_color:
  1304. .. rst-class:: classref-method
  1305. :ref:`Color<class_Color>` **get_line_background_color** **(** :ref:`int<class_int>` line **)** |const|
  1306. Returns the current background color of the line. ``Color(0, 0, 0, 0)`` is returned if no color is set.
  1307. .. rst-class:: classref-item-separator
  1308. ----
  1309. .. _class_TextEdit_method_get_line_column_at_pos:
  1310. .. rst-class:: classref-method
  1311. :ref:`Vector2i<class_Vector2i>` **get_line_column_at_pos** **(** :ref:`Vector2i<class_Vector2i>` position, :ref:`bool<class_bool>` allow_out_of_bounds=true **)** |const|
  1312. Returns the line and column at the given position. In the returned vector, ``x`` is the column, ``y`` is the line. If ``allow_out_of_bounds`` is ``false`` and the position is not over the text, both vector values will be set to ``-1``.
  1313. .. rst-class:: classref-item-separator
  1314. ----
  1315. .. _class_TextEdit_method_get_line_count:
  1316. .. rst-class:: classref-method
  1317. :ref:`int<class_int>` **get_line_count** **(** **)** |const|
  1318. Returns the number of lines in the text.
  1319. .. rst-class:: classref-item-separator
  1320. ----
  1321. .. _class_TextEdit_method_get_line_gutter_icon:
  1322. .. rst-class:: classref-method
  1323. :ref:`Texture2D<class_Texture2D>` **get_line_gutter_icon** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const|
  1324. Returns the icon currently in ``gutter`` at ``line``.
  1325. .. rst-class:: classref-item-separator
  1326. ----
  1327. .. _class_TextEdit_method_get_line_gutter_item_color:
  1328. .. rst-class:: classref-method
  1329. :ref:`Color<class_Color>` **get_line_gutter_item_color** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const|
  1330. Returns the color currently in ``gutter`` at ``line``.
  1331. .. rst-class:: classref-item-separator
  1332. ----
  1333. .. _class_TextEdit_method_get_line_gutter_metadata:
  1334. .. rst-class:: classref-method
  1335. :ref:`Variant<class_Variant>` **get_line_gutter_metadata** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const|
  1336. Returns the metadata currently in ``gutter`` at ``line``.
  1337. .. rst-class:: classref-item-separator
  1338. ----
  1339. .. _class_TextEdit_method_get_line_gutter_text:
  1340. .. rst-class:: classref-method
  1341. :ref:`String<class_String>` **get_line_gutter_text** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const|
  1342. Returns the text currently in ``gutter`` at ``line``.
  1343. .. rst-class:: classref-item-separator
  1344. ----
  1345. .. _class_TextEdit_method_get_line_height:
  1346. .. rst-class:: classref-method
  1347. :ref:`int<class_int>` **get_line_height** **(** **)** |const|
  1348. Returns the maximum value of the line height among all lines.
  1349. \ **Note:** The return value is influenced by :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>` and :ref:`font_size<class_TextEdit_theme_font_size_font_size>`. And it will not be less than ``1``.
  1350. .. rst-class:: classref-item-separator
  1351. ----
  1352. .. _class_TextEdit_method_get_line_width:
  1353. .. rst-class:: classref-method
  1354. :ref:`int<class_int>` **get_line_width** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=-1 **)** |const|
  1355. Returns the width in pixels of the ``wrap_index`` on ``line``.
  1356. .. rst-class:: classref-item-separator
  1357. ----
  1358. .. _class_TextEdit_method_get_line_wrap_count:
  1359. .. rst-class:: classref-method
  1360. :ref:`int<class_int>` **get_line_wrap_count** **(** :ref:`int<class_int>` line **)** |const|
  1361. Returns the number of times the given line is wrapped.
  1362. .. rst-class:: classref-item-separator
  1363. ----
  1364. .. _class_TextEdit_method_get_line_wrap_index_at_column:
  1365. .. rst-class:: classref-method
  1366. :ref:`int<class_int>` **get_line_wrap_index_at_column** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const|
  1367. Returns the wrap index of the given line column.
  1368. .. rst-class:: classref-item-separator
  1369. ----
  1370. .. _class_TextEdit_method_get_line_wrapped_text:
  1371. .. rst-class:: classref-method
  1372. :ref:`PackedStringArray<class_PackedStringArray>` **get_line_wrapped_text** **(** :ref:`int<class_int>` line **)** |const|
  1373. Returns an array of :ref:`String<class_String>`\ s representing each wrapped index.
  1374. .. rst-class:: classref-item-separator
  1375. ----
  1376. .. _class_TextEdit_method_get_local_mouse_pos:
  1377. .. rst-class:: classref-method
  1378. :ref:`Vector2<class_Vector2>` **get_local_mouse_pos** **(** **)** |const|
  1379. Returns the local mouse position adjusted for the text direction.
  1380. .. rst-class:: classref-item-separator
  1381. ----
  1382. .. _class_TextEdit_method_get_menu:
  1383. .. rst-class:: classref-method
  1384. :ref:`PopupMenu<class_PopupMenu>` **get_menu** **(** **)** |const|
  1385. Returns the :ref:`PopupMenu<class_PopupMenu>` of this **TextEdit**. By default, this menu is displayed when right-clicking on the **TextEdit**.
  1386. You can add custom menu items or remove standard ones. Make sure your IDs don't conflict with the standard ones (see :ref:`MenuItems<enum_TextEdit_MenuItems>`). For example:
  1387. .. tabs::
  1388. .. code-tab:: gdscript
  1389. func _ready():
  1390. var menu = get_menu()
  1391. # Remove all items after "Redo".
  1392. menu.item_count = menu.get_item_index(MENU_REDO) + 1
  1393. # Add custom items.
  1394. menu.add_separator()
  1395. menu.add_item("Insert Date", MENU_MAX + 1)
  1396. # Connect callback.
  1397. menu.id_pressed.connect(_on_item_pressed)
  1398. func _on_item_pressed(id):
  1399. if id == MENU_MAX + 1:
  1400. insert_text_at_caret(Time.get_date_string_from_system())
  1401. .. code-tab:: csharp
  1402. public override void _Ready()
  1403. {
  1404. var menu = GetMenu();
  1405. // Remove all items after "Redo".
  1406. menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;
  1407. // Add custom items.
  1408. menu.AddSeparator();
  1409. menu.AddItem("Insert Date", TextEdit.MenuItems.Max + 1);
  1410. // Add event handler.
  1411. menu.IdPressed += OnItemPressed;
  1412. }
  1413. public void OnItemPressed(int id)
  1414. {
  1415. if (id == TextEdit.MenuItems.Max + 1)
  1416. {
  1417. InsertTextAtCaret(Time.GetDateStringFromSystem());
  1418. }
  1419. }
  1420. \ **Warning:** This is a required internal node, removing and freeing it may cause a crash. If you wish to hide it or any of its children, use their :ref:`Window.visible<class_Window_property_visible>` property.
  1421. .. rst-class:: classref-item-separator
  1422. ----
  1423. .. _class_TextEdit_method_get_minimap_line_at_pos:
  1424. .. rst-class:: classref-method
  1425. :ref:`int<class_int>` **get_minimap_line_at_pos** **(** :ref:`Vector2i<class_Vector2i>` position **)** |const|
  1426. Returns the equivalent minimap line at ``position``.
  1427. .. rst-class:: classref-item-separator
  1428. ----
  1429. .. _class_TextEdit_method_get_minimap_visible_lines:
  1430. .. rst-class:: classref-method
  1431. :ref:`int<class_int>` **get_minimap_visible_lines** **(** **)** |const|
  1432. Returns the number of lines that may be drawn on the minimap.
  1433. .. rst-class:: classref-item-separator
  1434. ----
  1435. .. _class_TextEdit_method_get_next_visible_line_index_offset_from:
  1436. .. rst-class:: classref-method
  1437. :ref:`Vector2i<class_Vector2i>` **get_next_visible_line_index_offset_from** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index, :ref:`int<class_int>` visible_amount **)** |const|
  1438. Similar to :ref:`get_next_visible_line_offset_from<class_TextEdit_method_get_next_visible_line_offset_from>`, but takes into account the line wrap indexes. In the returned vector, ``x`` is the line, ``y`` is the wrap index.
  1439. .. rst-class:: classref-item-separator
  1440. ----
  1441. .. _class_TextEdit_method_get_next_visible_line_offset_from:
  1442. .. rst-class:: classref-method
  1443. :ref:`int<class_int>` **get_next_visible_line_offset_from** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` visible_amount **)** |const|
  1444. Returns the count to the next visible line from ``line`` to ``line + visible_amount``. Can also count backwards. For example if a **TextEdit** has 5 lines with lines 2 and 3 hidden, calling this with ``line = 1, visible_amount = 1`` would return 3.
  1445. .. rst-class:: classref-item-separator
  1446. ----
  1447. .. _class_TextEdit_method_get_pos_at_line_column:
  1448. .. rst-class:: classref-method
  1449. :ref:`Vector2i<class_Vector2i>` **get_pos_at_line_column** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const|
  1450. Returns the local position for the given ``line`` and ``column``. If ``x`` or ``y`` of the returned vector equal ``-1``, the position is outside of the viewable area of the control.
  1451. \ **Note:** The Y position corresponds to the bottom side of the line. Use :ref:`get_rect_at_line_column<class_TextEdit_method_get_rect_at_line_column>` to get the top side position.
  1452. .. rst-class:: classref-item-separator
  1453. ----
  1454. .. _class_TextEdit_method_get_rect_at_line_column:
  1455. .. rst-class:: classref-method
  1456. :ref:`Rect2i<class_Rect2i>` **get_rect_at_line_column** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` column **)** |const|
  1457. Returns the local position and size for the grapheme at the given ``line`` and ``column``. If ``x`` or ``y`` position of the returned rect equal ``-1``, the position is outside of the viewable area of the control.
  1458. \ **Note:** The Y position of the returned rect corresponds to the top side of the line, unlike :ref:`get_pos_at_line_column<class_TextEdit_method_get_pos_at_line_column>` which returns the bottom side.
  1459. .. rst-class:: classref-item-separator
  1460. ----
  1461. .. _class_TextEdit_method_get_saved_version:
  1462. .. rst-class:: classref-method
  1463. :ref:`int<class_int>` **get_saved_version** **(** **)** |const|
  1464. Returns the last tagged saved version from :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>`.
  1465. .. rst-class:: classref-item-separator
  1466. ----
  1467. .. _class_TextEdit_method_get_scroll_pos_for_line:
  1468. .. rst-class:: classref-method
  1469. :ref:`float<class_float>` **get_scroll_pos_for_line** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)** |const|
  1470. Returns the scroll position for ``wrap_index`` of ``line``.
  1471. .. rst-class:: classref-item-separator
  1472. ----
  1473. .. _class_TextEdit_method_get_selected_text:
  1474. .. rst-class:: classref-method
  1475. :ref:`String<class_String>` **get_selected_text** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1476. Returns the text inside the selection of a caret, or all the carets if ``caret_index`` is its default value ``-1``.
  1477. .. rst-class:: classref-item-separator
  1478. ----
  1479. .. _class_TextEdit_method_get_selection_column:
  1480. .. rst-class:: classref-method
  1481. :ref:`int<class_int>` **get_selection_column** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1482. Returns the original start column of the selection.
  1483. .. rst-class:: classref-item-separator
  1484. ----
  1485. .. _class_TextEdit_method_get_selection_from_column:
  1486. .. rst-class:: classref-method
  1487. :ref:`int<class_int>` **get_selection_from_column** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1488. Returns the selection begin column.
  1489. .. rst-class:: classref-item-separator
  1490. ----
  1491. .. _class_TextEdit_method_get_selection_from_line:
  1492. .. rst-class:: classref-method
  1493. :ref:`int<class_int>` **get_selection_from_line** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1494. Returns the selection begin line.
  1495. .. rst-class:: classref-item-separator
  1496. ----
  1497. .. _class_TextEdit_method_get_selection_line:
  1498. .. rst-class:: classref-method
  1499. :ref:`int<class_int>` **get_selection_line** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1500. Returns the original start line of the selection.
  1501. .. rst-class:: classref-item-separator
  1502. ----
  1503. .. _class_TextEdit_method_get_selection_mode:
  1504. .. rst-class:: classref-method
  1505. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **get_selection_mode** **(** **)** |const|
  1506. Returns the current selection mode.
  1507. .. rst-class:: classref-item-separator
  1508. ----
  1509. .. _class_TextEdit_method_get_selection_to_column:
  1510. .. rst-class:: classref-method
  1511. :ref:`int<class_int>` **get_selection_to_column** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1512. Returns the selection end column.
  1513. .. rst-class:: classref-item-separator
  1514. ----
  1515. .. _class_TextEdit_method_get_selection_to_line:
  1516. .. rst-class:: classref-method
  1517. :ref:`int<class_int>` **get_selection_to_line** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1518. Returns the selection end line.
  1519. .. rst-class:: classref-item-separator
  1520. ----
  1521. .. _class_TextEdit_method_get_tab_size:
  1522. .. rst-class:: classref-method
  1523. :ref:`int<class_int>` **get_tab_size** **(** **)** |const|
  1524. Returns the **TextEdit**'s' tab size.
  1525. .. rst-class:: classref-item-separator
  1526. ----
  1527. .. _class_TextEdit_method_get_total_gutter_width:
  1528. .. rst-class:: classref-method
  1529. :ref:`int<class_int>` **get_total_gutter_width** **(** **)** |const|
  1530. Returns the total width of all gutters and internal padding.
  1531. .. rst-class:: classref-item-separator
  1532. ----
  1533. .. _class_TextEdit_method_get_total_visible_line_count:
  1534. .. rst-class:: classref-method
  1535. :ref:`int<class_int>` **get_total_visible_line_count** **(** **)** |const|
  1536. Returns the number of lines that may be drawn.
  1537. .. rst-class:: classref-item-separator
  1538. ----
  1539. .. _class_TextEdit_method_get_v_scroll_bar:
  1540. .. rst-class:: classref-method
  1541. :ref:`VScrollBar<class_VScrollBar>` **get_v_scroll_bar** **(** **)** |const|
  1542. Returns the :ref:`VScrollBar<class_VScrollBar>` of the **TextEdit**.
  1543. .. rst-class:: classref-item-separator
  1544. ----
  1545. .. _class_TextEdit_method_get_version:
  1546. .. rst-class:: classref-method
  1547. :ref:`int<class_int>` **get_version** **(** **)** |const|
  1548. Returns the current version of the **TextEdit**. The version is a count of recorded operations by the undo/redo history.
  1549. .. rst-class:: classref-item-separator
  1550. ----
  1551. .. _class_TextEdit_method_get_visible_line_count:
  1552. .. rst-class:: classref-method
  1553. :ref:`int<class_int>` **get_visible_line_count** **(** **)** |const|
  1554. Returns the number of visible lines, including wrapped text.
  1555. .. rst-class:: classref-item-separator
  1556. ----
  1557. .. _class_TextEdit_method_get_visible_line_count_in_range:
  1558. .. rst-class:: classref-method
  1559. :ref:`int<class_int>` **get_visible_line_count_in_range** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)** |const|
  1560. Returns the total number of visible + wrapped lines between the two lines.
  1561. .. rst-class:: classref-item-separator
  1562. ----
  1563. .. _class_TextEdit_method_get_word_at_pos:
  1564. .. rst-class:: classref-method
  1565. :ref:`String<class_String>` **get_word_at_pos** **(** :ref:`Vector2<class_Vector2>` position **)** |const|
  1566. Returns the word at ``position``.
  1567. .. rst-class:: classref-item-separator
  1568. ----
  1569. .. _class_TextEdit_method_get_word_under_caret:
  1570. .. rst-class:: classref-method
  1571. :ref:`String<class_String>` **get_word_under_caret** **(** :ref:`int<class_int>` caret_index=-1 **)** |const|
  1572. Returns a :ref:`String<class_String>` text with the word under the caret's location.
  1573. .. rst-class:: classref-item-separator
  1574. ----
  1575. .. _class_TextEdit_method_has_ime_text:
  1576. .. rst-class:: classref-method
  1577. :ref:`bool<class_bool>` **has_ime_text** **(** **)** |const|
  1578. Returns if the user has IME text.
  1579. .. rst-class:: classref-item-separator
  1580. ----
  1581. .. _class_TextEdit_method_has_redo:
  1582. .. rst-class:: classref-method
  1583. :ref:`bool<class_bool>` **has_redo** **(** **)** |const|
  1584. Returns ``true`` if a "redo" action is available.
  1585. .. rst-class:: classref-item-separator
  1586. ----
  1587. .. _class_TextEdit_method_has_selection:
  1588. .. rst-class:: classref-method
  1589. :ref:`bool<class_bool>` **has_selection** **(** :ref:`int<class_int>` caret_index=-1 **)** |const|
  1590. Returns ``true`` if the user has selected text.
  1591. .. rst-class:: classref-item-separator
  1592. ----
  1593. .. _class_TextEdit_method_has_undo:
  1594. .. rst-class:: classref-method
  1595. :ref:`bool<class_bool>` **has_undo** **(** **)** |const|
  1596. Returns ``true`` if an "undo" action is available.
  1597. .. rst-class:: classref-item-separator
  1598. ----
  1599. .. _class_TextEdit_method_insert_line_at:
  1600. .. rst-class:: classref-method
  1601. void **insert_line_at** **(** :ref:`int<class_int>` line, :ref:`String<class_String>` text **)**
  1602. Inserts a new line with ``text`` at ``line``.
  1603. .. rst-class:: classref-item-separator
  1604. ----
  1605. .. _class_TextEdit_method_insert_text_at_caret:
  1606. .. rst-class:: classref-method
  1607. void **insert_text_at_caret** **(** :ref:`String<class_String>` text, :ref:`int<class_int>` caret_index=-1 **)**
  1608. Insert the specified text at the caret position.
  1609. .. rst-class:: classref-item-separator
  1610. ----
  1611. .. _class_TextEdit_method_is_caret_visible:
  1612. .. rst-class:: classref-method
  1613. :ref:`bool<class_bool>` **is_caret_visible** **(** :ref:`int<class_int>` caret_index=0 **)** |const|
  1614. Returns ``true`` if the caret is visible on the screen.
  1615. .. rst-class:: classref-item-separator
  1616. ----
  1617. .. _class_TextEdit_method_is_dragging_cursor:
  1618. .. rst-class:: classref-method
  1619. :ref:`bool<class_bool>` **is_dragging_cursor** **(** **)** |const|
  1620. Returns ``true`` if the user is dragging their mouse for scrolling or selecting.
  1621. .. rst-class:: classref-item-separator
  1622. ----
  1623. .. _class_TextEdit_method_is_gutter_clickable:
  1624. .. rst-class:: classref-method
  1625. :ref:`bool<class_bool>` **is_gutter_clickable** **(** :ref:`int<class_int>` gutter **)** |const|
  1626. Returns whether the gutter is clickable.
  1627. .. rst-class:: classref-item-separator
  1628. ----
  1629. .. _class_TextEdit_method_is_gutter_drawn:
  1630. .. rst-class:: classref-method
  1631. :ref:`bool<class_bool>` **is_gutter_drawn** **(** :ref:`int<class_int>` gutter **)** |const|
  1632. Returns whether the gutter is currently drawn.
  1633. .. rst-class:: classref-item-separator
  1634. ----
  1635. .. _class_TextEdit_method_is_gutter_overwritable:
  1636. .. rst-class:: classref-method
  1637. :ref:`bool<class_bool>` **is_gutter_overwritable** **(** :ref:`int<class_int>` gutter **)** |const|
  1638. Returns whether the gutter is overwritable.
  1639. .. rst-class:: classref-item-separator
  1640. ----
  1641. .. _class_TextEdit_method_is_line_gutter_clickable:
  1642. .. rst-class:: classref-method
  1643. :ref:`bool<class_bool>` **is_line_gutter_clickable** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter **)** |const|
  1644. Returns whether the gutter on the given line is clickable.
  1645. .. rst-class:: classref-item-separator
  1646. ----
  1647. .. _class_TextEdit_method_is_line_wrapped:
  1648. .. rst-class:: classref-method
  1649. :ref:`bool<class_bool>` **is_line_wrapped** **(** :ref:`int<class_int>` line **)** |const|
  1650. Returns if the given line is wrapped.
  1651. .. rst-class:: classref-item-separator
  1652. ----
  1653. .. _class_TextEdit_method_is_menu_visible:
  1654. .. rst-class:: classref-method
  1655. :ref:`bool<class_bool>` **is_menu_visible** **(** **)** |const|
  1656. Returns whether the menu is visible. Use this instead of ``get_menu().visible`` to improve performance (so the creation of the menu is avoided).
  1657. .. rst-class:: classref-item-separator
  1658. ----
  1659. .. _class_TextEdit_method_is_mouse_over_selection:
  1660. .. rst-class:: classref-method
  1661. :ref:`bool<class_bool>` **is_mouse_over_selection** **(** :ref:`bool<class_bool>` edges, :ref:`int<class_int>` caret_index=-1 **)** |const|
  1662. Returns whether the mouse is over selection. If ``edges`` is ``true``, the edges are considered part of the selection.
  1663. .. rst-class:: classref-item-separator
  1664. ----
  1665. .. _class_TextEdit_method_is_overtype_mode_enabled:
  1666. .. rst-class:: classref-method
  1667. :ref:`bool<class_bool>` **is_overtype_mode_enabled** **(** **)** |const|
  1668. Returns whether the user is in overtype mode.
  1669. .. rst-class:: classref-item-separator
  1670. ----
  1671. .. _class_TextEdit_method_menu_option:
  1672. .. rst-class:: classref-method
  1673. void **menu_option** **(** :ref:`int<class_int>` option **)**
  1674. Executes a given action as defined in the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  1675. .. rst-class:: classref-item-separator
  1676. ----
  1677. .. _class_TextEdit_method_merge_gutters:
  1678. .. rst-class:: classref-method
  1679. void **merge_gutters** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)**
  1680. Merge the gutters from ``from_line`` into ``to_line``. Only overwritable gutters will be copied.
  1681. .. rst-class:: classref-item-separator
  1682. ----
  1683. .. _class_TextEdit_method_merge_overlapping_carets:
  1684. .. rst-class:: classref-method
  1685. void **merge_overlapping_carets** **(** **)**
  1686. Merges any overlapping carets. Will favor the newest caret, or the caret with a selection.
  1687. \ **Note:** This is not called when a caret changes position but after certain actions, so it is possible to get into a state where carets overlap.
  1688. .. rst-class:: classref-item-separator
  1689. ----
  1690. .. _class_TextEdit_method_paste:
  1691. .. rst-class:: classref-method
  1692. void **paste** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1693. Paste at the current location. Can be overridden with :ref:`_paste<class_TextEdit_method__paste>`.
  1694. .. rst-class:: classref-item-separator
  1695. ----
  1696. .. _class_TextEdit_method_paste_primary_clipboard:
  1697. .. rst-class:: classref-method
  1698. void **paste_primary_clipboard** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1699. Pastes the primary clipboard.
  1700. .. rst-class:: classref-item-separator
  1701. ----
  1702. .. _class_TextEdit_method_redo:
  1703. .. rst-class:: classref-method
  1704. void **redo** **(** **)**
  1705. Perform redo operation.
  1706. .. rst-class:: classref-item-separator
  1707. ----
  1708. .. _class_TextEdit_method_remove_caret:
  1709. .. rst-class:: classref-method
  1710. void **remove_caret** **(** :ref:`int<class_int>` caret **)**
  1711. Removes the given caret index.
  1712. \ **Note:** This can result in adjustment of all other caret indices.
  1713. .. rst-class:: classref-item-separator
  1714. ----
  1715. .. _class_TextEdit_method_remove_gutter:
  1716. .. rst-class:: classref-method
  1717. void **remove_gutter** **(** :ref:`int<class_int>` gutter **)**
  1718. Removes the gutter from this **TextEdit**.
  1719. .. rst-class:: classref-item-separator
  1720. ----
  1721. .. _class_TextEdit_method_remove_secondary_carets:
  1722. .. rst-class:: classref-method
  1723. void **remove_secondary_carets** **(** **)**
  1724. Removes all additional carets.
  1725. .. rst-class:: classref-item-separator
  1726. ----
  1727. .. _class_TextEdit_method_remove_text:
  1728. .. rst-class:: classref-method
  1729. void **remove_text** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_column, :ref:`int<class_int>` to_line, :ref:`int<class_int>` to_column **)**
  1730. Removes text between the given positions.
  1731. \ **Note:** This does not adjust the caret or selection, which as a result it can end up in an invalid position.
  1732. .. rst-class:: classref-item-separator
  1733. ----
  1734. .. _class_TextEdit_method_search:
  1735. .. rst-class:: classref-method
  1736. :ref:`Vector2i<class_Vector2i>` **search** **(** :ref:`String<class_String>` text, :ref:`int<class_int>` flags, :ref:`int<class_int>` from_line, :ref:`int<class_int>` from_colum **)** |const|
  1737. Perform a search inside the text. Search flags can be specified in the :ref:`SearchFlags<enum_TextEdit_SearchFlags>` enum.
  1738. In the returned vector, ``x`` is the column, ``y`` is the line. If no results are found, both are equal to ``-1``.
  1739. .. tabs::
  1740. .. code-tab:: gdscript
  1741. var result = search("print", SEARCH_WHOLE_WORDS, 0, 0)
  1742. if result.x != -1:
  1743. # Result found.
  1744. var line_number = result.y
  1745. var column_number = result.x
  1746. .. code-tab:: csharp
  1747. Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0);
  1748. if (result.X != -1)
  1749. {
  1750. // Result found.
  1751. int lineNumber = result.Y;
  1752. int columnNumber = result.X;
  1753. }
  1754. .. rst-class:: classref-item-separator
  1755. ----
  1756. .. _class_TextEdit_method_select:
  1757. .. rst-class:: classref-method
  1758. 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, :ref:`int<class_int>` caret_index=0 **)**
  1759. Perform selection, from line/column to line/column.
  1760. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  1761. .. rst-class:: classref-item-separator
  1762. ----
  1763. .. _class_TextEdit_method_select_all:
  1764. .. rst-class:: classref-method
  1765. void **select_all** **(** **)**
  1766. Select all the text.
  1767. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  1768. .. rst-class:: classref-item-separator
  1769. ----
  1770. .. _class_TextEdit_method_select_word_under_caret:
  1771. .. rst-class:: classref-method
  1772. void **select_word_under_caret** **(** :ref:`int<class_int>` caret_index=-1 **)**
  1773. Selects the word under the caret.
  1774. .. rst-class:: classref-item-separator
  1775. ----
  1776. .. _class_TextEdit_method_set_caret_column:
  1777. .. rst-class:: classref-method
  1778. void **set_caret_column** **(** :ref:`int<class_int>` column, :ref:`bool<class_bool>` adjust_viewport=true, :ref:`int<class_int>` caret_index=0 **)**
  1779. Moves the caret to the specified ``column`` index.
  1780. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  1781. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`.
  1782. .. rst-class:: classref-item-separator
  1783. ----
  1784. .. _class_TextEdit_method_set_caret_line:
  1785. .. rst-class:: classref-method
  1786. void **set_caret_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, :ref:`int<class_int>` caret_index=0 **)**
  1787. Moves the caret to the specified ``line`` index.
  1788. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  1789. If ``can_be_hidden`` is ``true``, the specified ``line`` can be hidden.
  1790. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`.
  1791. .. rst-class:: classref-item-separator
  1792. ----
  1793. .. _class_TextEdit_method_set_gutter_clickable:
  1794. .. rst-class:: classref-method
  1795. void **set_gutter_clickable** **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` clickable **)**
  1796. Sets the gutter as clickable. This will change the mouse cursor to a pointing hand when hovering over the gutter.
  1797. .. rst-class:: classref-item-separator
  1798. ----
  1799. .. _class_TextEdit_method_set_gutter_custom_draw:
  1800. .. rst-class:: classref-method
  1801. void **set_gutter_custom_draw** **(** :ref:`int<class_int>` column, :ref:`Callable<class_Callable>` draw_callback **)**
  1802. Set a custom draw method for the gutter. The callback method must take the following args: ``line: int, gutter: int, Area: Rect2``.
  1803. .. rst-class:: classref-item-separator
  1804. ----
  1805. .. _class_TextEdit_method_set_gutter_draw:
  1806. .. rst-class:: classref-method
  1807. void **set_gutter_draw** **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` draw **)**
  1808. Sets whether the gutter should be drawn.
  1809. .. rst-class:: classref-item-separator
  1810. ----
  1811. .. _class_TextEdit_method_set_gutter_name:
  1812. .. rst-class:: classref-method
  1813. void **set_gutter_name** **(** :ref:`int<class_int>` gutter, :ref:`String<class_String>` name **)**
  1814. Sets the name of the gutter.
  1815. .. rst-class:: classref-item-separator
  1816. ----
  1817. .. _class_TextEdit_method_set_gutter_overwritable:
  1818. .. rst-class:: classref-method
  1819. void **set_gutter_overwritable** **(** :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` overwritable **)**
  1820. Sets the gutter to overwritable. See :ref:`merge_gutters<class_TextEdit_method_merge_gutters>`.
  1821. .. rst-class:: classref-item-separator
  1822. ----
  1823. .. _class_TextEdit_method_set_gutter_type:
  1824. .. rst-class:: classref-method
  1825. void **set_gutter_type** **(** :ref:`int<class_int>` gutter, :ref:`GutterType<enum_TextEdit_GutterType>` type **)**
  1826. Sets the type of gutter.
  1827. .. rst-class:: classref-item-separator
  1828. ----
  1829. .. _class_TextEdit_method_set_gutter_width:
  1830. .. rst-class:: classref-method
  1831. void **set_gutter_width** **(** :ref:`int<class_int>` gutter, :ref:`int<class_int>` width **)**
  1832. Set the width of the gutter.
  1833. .. rst-class:: classref-item-separator
  1834. ----
  1835. .. _class_TextEdit_method_set_line:
  1836. .. rst-class:: classref-method
  1837. void **set_line** **(** :ref:`int<class_int>` line, :ref:`String<class_String>` new_text **)**
  1838. Sets the text for a specific line.
  1839. .. rst-class:: classref-item-separator
  1840. ----
  1841. .. _class_TextEdit_method_set_line_as_center_visible:
  1842. .. rst-class:: classref-method
  1843. void **set_line_as_center_visible** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)**
  1844. Positions the ``wrap_index`` of ``line`` at the center of the viewport.
  1845. .. rst-class:: classref-item-separator
  1846. ----
  1847. .. _class_TextEdit_method_set_line_as_first_visible:
  1848. .. rst-class:: classref-method
  1849. void **set_line_as_first_visible** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)**
  1850. Positions the ``wrap_index`` of ``line`` at the top of the viewport.
  1851. .. rst-class:: classref-item-separator
  1852. ----
  1853. .. _class_TextEdit_method_set_line_as_last_visible:
  1854. .. rst-class:: classref-method
  1855. void **set_line_as_last_visible** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` wrap_index=0 **)**
  1856. Positions the ``wrap_index`` of ``line`` at the bottom of the viewport.
  1857. .. rst-class:: classref-item-separator
  1858. ----
  1859. .. _class_TextEdit_method_set_line_background_color:
  1860. .. rst-class:: classref-method
  1861. void **set_line_background_color** **(** :ref:`int<class_int>` line, :ref:`Color<class_Color>` color **)**
  1862. Sets the current background color of the line. Set to ``Color(0, 0, 0, 0)`` for no color.
  1863. .. rst-class:: classref-item-separator
  1864. ----
  1865. .. _class_TextEdit_method_set_line_gutter_clickable:
  1866. .. rst-class:: classref-method
  1867. void **set_line_gutter_clickable** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`bool<class_bool>` clickable **)**
  1868. If ``clickable`` is ``true``, makes the ``gutter`` on ``line`` clickable. See :ref:`gutter_clicked<class_TextEdit_signal_gutter_clicked>`.
  1869. .. rst-class:: classref-item-separator
  1870. ----
  1871. .. _class_TextEdit_method_set_line_gutter_icon:
  1872. .. rst-class:: classref-method
  1873. void **set_line_gutter_icon** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Texture2D<class_Texture2D>` icon **)**
  1874. Sets the icon for ``gutter`` on ``line`` to ``icon``.
  1875. .. rst-class:: classref-item-separator
  1876. ----
  1877. .. _class_TextEdit_method_set_line_gutter_item_color:
  1878. .. rst-class:: classref-method
  1879. void **set_line_gutter_item_color** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Color<class_Color>` color **)**
  1880. Sets the color for ``gutter`` on ``line`` to ``color``.
  1881. .. rst-class:: classref-item-separator
  1882. ----
  1883. .. _class_TextEdit_method_set_line_gutter_metadata:
  1884. .. rst-class:: classref-method
  1885. void **set_line_gutter_metadata** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`Variant<class_Variant>` metadata **)**
  1886. Sets the metadata for ``gutter`` on ``line`` to ``metadata``.
  1887. .. rst-class:: classref-item-separator
  1888. ----
  1889. .. _class_TextEdit_method_set_line_gutter_text:
  1890. .. rst-class:: classref-method
  1891. void **set_line_gutter_text** **(** :ref:`int<class_int>` line, :ref:`int<class_int>` gutter, :ref:`String<class_String>` text **)**
  1892. Sets the text for ``gutter`` on ``line`` to ``text``.
  1893. .. rst-class:: classref-item-separator
  1894. ----
  1895. .. _class_TextEdit_method_set_overtype_mode_enabled:
  1896. .. rst-class:: classref-method
  1897. void **set_overtype_mode_enabled** **(** :ref:`bool<class_bool>` enabled **)**
  1898. If ``true``, sets the user into overtype mode. When the user types in this mode, it will override existing text.
  1899. .. rst-class:: classref-item-separator
  1900. ----
  1901. .. _class_TextEdit_method_set_search_flags:
  1902. .. rst-class:: classref-method
  1903. void **set_search_flags** **(** :ref:`int<class_int>` flags **)**
  1904. Sets the search ``flags``. This is used with :ref:`set_search_text<class_TextEdit_method_set_search_text>` to highlight occurrences of the searched text. Search flags can be specified from the :ref:`SearchFlags<enum_TextEdit_SearchFlags>` enum.
  1905. .. rst-class:: classref-item-separator
  1906. ----
  1907. .. _class_TextEdit_method_set_search_text:
  1908. .. rst-class:: classref-method
  1909. void **set_search_text** **(** :ref:`String<class_String>` search_text **)**
  1910. Sets the search text. See :ref:`set_search_flags<class_TextEdit_method_set_search_flags>`.
  1911. .. rst-class:: classref-item-separator
  1912. ----
  1913. .. _class_TextEdit_method_set_selection_mode:
  1914. .. rst-class:: classref-method
  1915. void **set_selection_mode** **(** :ref:`SelectionMode<enum_TextEdit_SelectionMode>` mode, :ref:`int<class_int>` line=-1, :ref:`int<class_int>` column=-1, :ref:`int<class_int>` caret_index=0 **)**
  1916. Sets the current selection mode.
  1917. .. rst-class:: classref-item-separator
  1918. ----
  1919. .. _class_TextEdit_method_set_tab_size:
  1920. .. rst-class:: classref-method
  1921. void **set_tab_size** **(** :ref:`int<class_int>` size **)**
  1922. Sets the tab size for the **TextEdit** to use.
  1923. .. rst-class:: classref-item-separator
  1924. ----
  1925. .. _class_TextEdit_method_set_tooltip_request_func:
  1926. .. rst-class:: classref-method
  1927. void **set_tooltip_request_func** **(** :ref:`Callable<class_Callable>` callback **)**
  1928. Provide custom tooltip text. The callback method must take the following args: ``hovered_word: String``.
  1929. .. rst-class:: classref-item-separator
  1930. ----
  1931. .. _class_TextEdit_method_start_action:
  1932. .. rst-class:: classref-method
  1933. void **start_action** **(** :ref:`EditAction<enum_TextEdit_EditAction>` action **)**
  1934. Starts an action, will end the current action if ``action`` is different.
  1935. An action will also end after a call to :ref:`end_action<class_TextEdit_method_end_action>`, after :ref:`ProjectSettings.gui/timers/text_edit_idle_detect_sec<class_ProjectSettings_property_gui/timers/text_edit_idle_detect_sec>` is triggered or a new undoable step outside the :ref:`start_action<class_TextEdit_method_start_action>` and :ref:`end_action<class_TextEdit_method_end_action>` calls.
  1936. .. rst-class:: classref-item-separator
  1937. ----
  1938. .. _class_TextEdit_method_swap_lines:
  1939. .. rst-class:: classref-method
  1940. void **swap_lines** **(** :ref:`int<class_int>` from_line, :ref:`int<class_int>` to_line **)**
  1941. Swaps the two lines.
  1942. .. rst-class:: classref-item-separator
  1943. ----
  1944. .. _class_TextEdit_method_tag_saved_version:
  1945. .. rst-class:: classref-method
  1946. void **tag_saved_version** **(** **)**
  1947. Tag the current version as saved.
  1948. .. rst-class:: classref-item-separator
  1949. ----
  1950. .. _class_TextEdit_method_undo:
  1951. .. rst-class:: classref-method
  1952. void **undo** **(** **)**
  1953. Perform undo operation.
  1954. .. rst-class:: classref-section-separator
  1955. ----
  1956. .. rst-class:: classref-descriptions-group
  1957. Theme Property Descriptions
  1958. ---------------------------
  1959. .. _class_TextEdit_theme_color_background_color:
  1960. .. rst-class:: classref-themeproperty
  1961. :ref:`Color<class_Color>` **background_color** = ``Color(0, 0, 0, 0)``
  1962. Sets the background :ref:`Color<class_Color>` of this **TextEdit**.
  1963. .. rst-class:: classref-item-separator
  1964. ----
  1965. .. _class_TextEdit_theme_color_caret_background_color:
  1966. .. rst-class:: classref-themeproperty
  1967. :ref:`Color<class_Color>` **caret_background_color** = ``Color(0, 0, 0, 1)``
  1968. :ref:`Color<class_Color>` of the text behind the caret when using a block caret.
  1969. .. rst-class:: classref-item-separator
  1970. ----
  1971. .. _class_TextEdit_theme_color_caret_color:
  1972. .. rst-class:: classref-themeproperty
  1973. :ref:`Color<class_Color>` **caret_color** = ``Color(0.875, 0.875, 0.875, 1)``
  1974. :ref:`Color<class_Color>` of the caret. This can be set to a fully transparent color to hide the caret entirely.
  1975. .. rst-class:: classref-item-separator
  1976. ----
  1977. .. _class_TextEdit_theme_color_current_line_color:
  1978. .. rst-class:: classref-themeproperty
  1979. :ref:`Color<class_Color>` **current_line_color** = ``Color(0.25, 0.25, 0.26, 0.8)``
  1980. Background :ref:`Color<class_Color>` of the line containing the caret.
  1981. .. rst-class:: classref-item-separator
  1982. ----
  1983. .. _class_TextEdit_theme_color_font_color:
  1984. .. rst-class:: classref-themeproperty
  1985. :ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
  1986. Sets the font :ref:`Color<class_Color>`.
  1987. .. rst-class:: classref-item-separator
  1988. ----
  1989. .. _class_TextEdit_theme_color_font_outline_color:
  1990. .. rst-class:: classref-themeproperty
  1991. :ref:`Color<class_Color>` **font_outline_color** = ``Color(1, 1, 1, 1)``
  1992. The tint of text outline of the **TextEdit**.
  1993. .. rst-class:: classref-item-separator
  1994. ----
  1995. .. _class_TextEdit_theme_color_font_placeholder_color:
  1996. .. rst-class:: classref-themeproperty
  1997. :ref:`Color<class_Color>` **font_placeholder_color** = ``Color(0.875, 0.875, 0.875, 0.6)``
  1998. Font color for :ref:`placeholder_text<class_TextEdit_property_placeholder_text>`.
  1999. .. rst-class:: classref-item-separator
  2000. ----
  2001. .. _class_TextEdit_theme_color_font_readonly_color:
  2002. .. rst-class:: classref-themeproperty
  2003. :ref:`Color<class_Color>` **font_readonly_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
  2004. Sets the font :ref:`Color<class_Color>` when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2005. .. rst-class:: classref-item-separator
  2006. ----
  2007. .. _class_TextEdit_theme_color_font_selected_color:
  2008. .. rst-class:: classref-themeproperty
  2009. :ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)``
  2010. Sets the :ref:`Color<class_Color>` of the selected text. If equal to ``Color(0, 0, 0, 0)``, it will be ignored.
  2011. .. rst-class:: classref-item-separator
  2012. ----
  2013. .. _class_TextEdit_theme_color_search_result_border_color:
  2014. .. rst-class:: classref-themeproperty
  2015. :ref:`Color<class_Color>` **search_result_border_color** = ``Color(0.3, 0.3, 0.3, 0.4)``
  2016. :ref:`Color<class_Color>` of the border around text that matches the search query.
  2017. .. rst-class:: classref-item-separator
  2018. ----
  2019. .. _class_TextEdit_theme_color_search_result_color:
  2020. .. rst-class:: classref-themeproperty
  2021. :ref:`Color<class_Color>` **search_result_color** = ``Color(0.3, 0.3, 0.3, 1)``
  2022. :ref:`Color<class_Color>` behind the text that matches the search query.
  2023. .. rst-class:: classref-item-separator
  2024. ----
  2025. .. _class_TextEdit_theme_color_selection_color:
  2026. .. rst-class:: classref-themeproperty
  2027. :ref:`Color<class_Color>` **selection_color** = ``Color(0.5, 0.5, 0.5, 1)``
  2028. Sets the highlight :ref:`Color<class_Color>` of text selections.
  2029. .. rst-class:: classref-item-separator
  2030. ----
  2031. .. _class_TextEdit_theme_color_word_highlighted_color:
  2032. .. rst-class:: classref-themeproperty
  2033. :ref:`Color<class_Color>` **word_highlighted_color** = ``Color(0.5, 0.5, 0.5, 0.25)``
  2034. Sets the highlight :ref:`Color<class_Color>` of multiple occurrences. :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` has to be enabled.
  2035. .. rst-class:: classref-item-separator
  2036. ----
  2037. .. _class_TextEdit_theme_constant_caret_width:
  2038. .. rst-class:: classref-themeproperty
  2039. :ref:`int<class_int>` **caret_width** = ``1``
  2040. The caret's width in pixels. Greater values can be used to improve accessibility by ensuring the caret is easily visible, or to ensure consistency with a large font size. If set to ``0`` or lower, the caret width is automatically set to 1 pixel and multiplied by the display scaling factor.
  2041. .. rst-class:: classref-item-separator
  2042. ----
  2043. .. _class_TextEdit_theme_constant_line_spacing:
  2044. .. rst-class:: classref-themeproperty
  2045. :ref:`int<class_int>` **line_spacing** = ``4``
  2046. Sets the spacing between the lines.
  2047. .. rst-class:: classref-item-separator
  2048. ----
  2049. .. _class_TextEdit_theme_constant_outline_size:
  2050. .. rst-class:: classref-themeproperty
  2051. :ref:`int<class_int>` **outline_size** = ``0``
  2052. The size of the text outline.
  2053. \ **Note:** If using a font with :ref:`FontFile.multichannel_signed_distance_field<class_FontFile_property_multichannel_signed_distance_field>` enabled, its :ref:`FontFile.msdf_pixel_range<class_FontFile_property_msdf_pixel_range>` must be set to at least *twice* the value of :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` for outline rendering to look correct. Otherwise, the outline may appear to be cut off earlier than intended.
  2054. .. rst-class:: classref-item-separator
  2055. ----
  2056. .. _class_TextEdit_theme_font_font:
  2057. .. rst-class:: classref-themeproperty
  2058. :ref:`Font<class_Font>` **font**
  2059. Sets the default :ref:`Font<class_Font>`.
  2060. .. rst-class:: classref-item-separator
  2061. ----
  2062. .. _class_TextEdit_theme_font_size_font_size:
  2063. .. rst-class:: classref-themeproperty
  2064. :ref:`int<class_int>` **font_size**
  2065. Sets default font size.
  2066. .. rst-class:: classref-item-separator
  2067. ----
  2068. .. _class_TextEdit_theme_icon_space:
  2069. .. rst-class:: classref-themeproperty
  2070. :ref:`Texture2D<class_Texture2D>` **space**
  2071. Sets a custom :ref:`Texture2D<class_Texture2D>` for space text characters.
  2072. .. rst-class:: classref-item-separator
  2073. ----
  2074. .. _class_TextEdit_theme_icon_tab:
  2075. .. rst-class:: classref-themeproperty
  2076. :ref:`Texture2D<class_Texture2D>` **tab**
  2077. Sets a custom :ref:`Texture2D<class_Texture2D>` for tab text characters.
  2078. .. rst-class:: classref-item-separator
  2079. ----
  2080. .. _class_TextEdit_theme_style_focus:
  2081. .. rst-class:: classref-themeproperty
  2082. :ref:`StyleBox<class_StyleBox>` **focus**
  2083. Sets the :ref:`StyleBox<class_StyleBox>` when in focus. The ``focus`` :ref:`StyleBox<class_StyleBox>` is displayed *over* the base :ref:`StyleBox<class_StyleBox>`, so a partially transparent :ref:`StyleBox<class_StyleBox>` should be used to ensure the base :ref:`StyleBox<class_StyleBox>` remains visible. A :ref:`StyleBox<class_StyleBox>` that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a :ref:`StyleBoxEmpty<class_StyleBoxEmpty>` resource. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
  2084. .. rst-class:: classref-item-separator
  2085. ----
  2086. .. _class_TextEdit_theme_style_normal:
  2087. .. rst-class:: classref-themeproperty
  2088. :ref:`StyleBox<class_StyleBox>` **normal**
  2089. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit**.
  2090. .. rst-class:: classref-item-separator
  2091. ----
  2092. .. _class_TextEdit_theme_style_read_only:
  2093. .. rst-class:: classref-themeproperty
  2094. :ref:`StyleBox<class_StyleBox>` **read_only**
  2095. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit** when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2096. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  2097. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  2098. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  2099. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  2100. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  2101. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`