class_textedit.rst 269 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303
  1. :github_url: hide
  2. .. meta::
  3. :keywords: textarea
  4. .. DO NOT EDIT THIS FILE!!!
  5. .. Generated automatically from Godot engine sources.
  6. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  7. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/TextEdit.xml.
  8. .. _class_TextEdit:
  9. TextEdit
  10. ========
  11. **Inherits:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
  12. **Inherited By:** :ref:`CodeEdit<class_CodeEdit>`
  13. A multiline text editor.
  14. .. rst-class:: classref-introduction-group
  15. Description
  16. -----------
  17. A multiline text editor. It also has limited facilities for editing code, such as syntax highlighting support. For more advanced facilities for editing code, see :ref:`CodeEdit<class_CodeEdit>`.
  18. While entering text, it is possible to insert special characters using Unicode, OEM or Windows alt codes:
  19. - To enter Unicode codepoints, hold :kbd:`Alt` and type the codepoint on the numpad. For example, to enter the character ``รก`` (U+00E1), hold :kbd:`Alt` and type :kbd:`+E1` on the numpad (the leading zeroes can be omitted).
  20. - To enter OEM codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``รก`` (OEM 160), hold :kbd:`Alt` and type ``160`` on the numpad.
  21. - To enter Windows codepoints, hold :kbd:`Alt` and type the code on the numpad. For example, to enter the character ``รก`` (Windows 0225), hold :kbd:`Alt` and type :kbd:`0`, :kbd:`2`, :kbd:`2`, :kbd:`5` on the numpad. The leading zero here must **not** be omitted, as this is how Windows codepoints are distinguished from OEM codepoints.
  22. \ **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 in the order they were created.
  23. \ **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.
  24. .. rst-class:: classref-reftable-group
  25. Properties
  26. ----------
  27. .. table::
  28. :widths: auto
  29. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  30. | :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_TextEdit_property_autowrap_mode>` | ``3`` |
  31. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  32. | :ref:`bool<class_bool>` | :ref:`backspace_deletes_composite_character_enabled<class_TextEdit_property_backspace_deletes_composite_character_enabled>` | ``false`` |
  33. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  34. | :ref:`bool<class_bool>` | :ref:`caret_blink<class_TextEdit_property_caret_blink>` | ``false`` |
  35. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  36. | :ref:`float<class_float>` | :ref:`caret_blink_interval<class_TextEdit_property_caret_blink_interval>` | ``0.65`` |
  37. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  38. | :ref:`bool<class_bool>` | :ref:`caret_draw_when_editable_disabled<class_TextEdit_property_caret_draw_when_editable_disabled>` | ``false`` |
  39. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  40. | :ref:`bool<class_bool>` | :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` | ``false`` |
  41. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  42. | :ref:`bool<class_bool>` | :ref:`caret_move_on_right_click<class_TextEdit_property_caret_move_on_right_click>` | ``true`` |
  43. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  44. | :ref:`bool<class_bool>` | :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` | ``true`` |
  45. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  46. | :ref:`CaretType<enum_TextEdit_CaretType>` | :ref:`caret_type<class_TextEdit_property_caret_type>` | ``0`` |
  47. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  48. | :ref:`bool<class_bool>` | clip_contents | ``true`` (overrides :ref:`Control<class_Control_property_clip_contents>`) |
  49. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  50. | :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_TextEdit_property_context_menu_enabled>` | ``true`` |
  51. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  52. | :ref:`String<class_String>` | :ref:`custom_word_separators<class_TextEdit_property_custom_word_separators>` | ``""`` |
  53. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  54. | :ref:`bool<class_bool>` | :ref:`deselect_on_focus_loss_enabled<class_TextEdit_property_deselect_on_focus_loss_enabled>` | ``true`` |
  55. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  56. | :ref:`bool<class_bool>` | :ref:`drag_and_drop_selection_enabled<class_TextEdit_property_drag_and_drop_selection_enabled>` | ``true`` |
  57. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  58. | :ref:`bool<class_bool>` | :ref:`draw_control_chars<class_TextEdit_property_draw_control_chars>` | ``false`` |
  59. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`draw_spaces<class_TextEdit_property_draw_spaces>` | ``false`` |
  61. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  62. | :ref:`bool<class_bool>` | :ref:`draw_tabs<class_TextEdit_property_draw_tabs>` | ``false`` |
  63. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  64. | :ref:`bool<class_bool>` | :ref:`editable<class_TextEdit_property_editable>` | ``true`` |
  65. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  66. | :ref:`bool<class_bool>` | :ref:`emoji_menu_enabled<class_TextEdit_property_emoji_menu_enabled>` | ``true`` |
  67. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  68. | :ref:`bool<class_bool>` | :ref:`empty_selection_clipboard_enabled<class_TextEdit_property_empty_selection_clipboard_enabled>` | ``true`` |
  69. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  70. | :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
  71. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  72. | :ref:`bool<class_bool>` | :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` | ``false`` |
  73. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  74. | :ref:`bool<class_bool>` | :ref:`highlight_current_line<class_TextEdit_property_highlight_current_line>` | ``false`` |
  75. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  76. | :ref:`bool<class_bool>` | :ref:`indent_wrapped_lines<class_TextEdit_property_indent_wrapped_lines>` | ``false`` |
  77. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  78. | :ref:`String<class_String>` | :ref:`language<class_TextEdit_property_language>` | ``""`` |
  79. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  80. | :ref:`bool<class_bool>` | :ref:`middle_mouse_paste_enabled<class_TextEdit_property_middle_mouse_paste_enabled>` | ``true`` |
  81. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  82. | :ref:`bool<class_bool>` | :ref:`minimap_draw<class_TextEdit_property_minimap_draw>` | ``false`` |
  83. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  84. | :ref:`int<class_int>` | :ref:`minimap_width<class_TextEdit_property_minimap_width>` | ``80`` |
  85. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  86. | :ref:`CursorShape<enum_Control_CursorShape>` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control<class_Control_property_mouse_default_cursor_shape>`) |
  87. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  88. | :ref:`String<class_String>` | :ref:`placeholder_text<class_TextEdit_property_placeholder_text>` | ``""`` |
  89. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  90. | :ref:`bool<class_bool>` | :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` | ``false`` |
  91. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  92. | :ref:`bool<class_bool>` | :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` | ``false`` |
  93. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  94. | :ref:`int<class_int>` | :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` | ``0`` |
  95. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  96. | :ref:`bool<class_bool>` | :ref:`scroll_past_end_of_file<class_TextEdit_property_scroll_past_end_of_file>` | ``false`` |
  97. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  98. | :ref:`bool<class_bool>` | :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` | ``false`` |
  99. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  100. | :ref:`float<class_float>` | :ref:`scroll_v_scroll_speed<class_TextEdit_property_scroll_v_scroll_speed>` | ``80.0`` |
  101. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  102. | :ref:`float<class_float>` | :ref:`scroll_vertical<class_TextEdit_property_scroll_vertical>` | ``0.0`` |
  103. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  104. | :ref:`bool<class_bool>` | :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` | ``true`` |
  105. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  106. | :ref:`bool<class_bool>` | :ref:`shortcut_keys_enabled<class_TextEdit_property_shortcut_keys_enabled>` | ``true`` |
  107. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  108. | :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_TextEdit_property_structured_text_bidi_override>` | ``0`` |
  109. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  110. | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_TextEdit_property_structured_text_bidi_override_options>` | ``[]`` |
  111. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  112. | :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` | :ref:`syntax_highlighter<class_TextEdit_property_syntax_highlighter>` | |
  113. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  114. | :ref:`bool<class_bool>` | :ref:`tab_input_mode<class_TextEdit_property_tab_input_mode>` | ``true`` |
  115. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  116. | :ref:`String<class_String>` | :ref:`text<class_TextEdit_property_text>` | ``""`` |
  117. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  118. | :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_TextEdit_property_text_direction>` | ``0`` |
  119. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  120. | :ref:`bool<class_bool>` | :ref:`use_custom_word_separators<class_TextEdit_property_use_custom_word_separators>` | ``false`` |
  121. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  122. | :ref:`bool<class_bool>` | :ref:`use_default_word_separators<class_TextEdit_property_use_default_word_separators>` | ``true`` |
  123. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  124. | :ref:`bool<class_bool>` | :ref:`virtual_keyboard_enabled<class_TextEdit_property_virtual_keyboard_enabled>` | ``true`` |
  125. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  126. | :ref:`bool<class_bool>` | :ref:`virtual_keyboard_show_on_focus<class_TextEdit_property_virtual_keyboard_show_on_focus>` | ``true`` |
  127. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  128. | :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` | :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` | ``0`` |
  129. +-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  130. .. rst-class:: classref-reftable-group
  131. Methods
  132. -------
  133. .. table::
  134. :widths: auto
  135. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | |void| | :ref:`_backspace<class_TextEdit_private_method__backspace>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  137. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | |void| | :ref:`_copy<class_TextEdit_private_method__copy>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  139. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | |void| | :ref:`_cut<class_TextEdit_private_method__cut>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  141. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. | |void| | :ref:`_handle_unicode_input<class_TextEdit_private_method__handle_unicode_input>`\ (\ unicode_char\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  143. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  144. | |void| | :ref:`_paste<class_TextEdit_private_method__paste>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  145. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  146. | |void| | :ref:`_paste_primary_clipboard<class_TextEdit_private_method__paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  147. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  148. | :ref:`int<class_int>` | :ref:`add_caret<class_TextEdit_method_add_caret>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |
  149. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  150. | |void| | :ref:`add_caret_at_carets<class_TextEdit_method_add_caret_at_carets>`\ (\ below\: :ref:`bool<class_bool>`\ ) |
  151. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  152. | |void| | :ref:`add_gutter<class_TextEdit_method_add_gutter>`\ (\ at\: :ref:`int<class_int>` = -1\ ) |
  153. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  154. | |void| | :ref:`add_selection_for_next_occurrence<class_TextEdit_method_add_selection_for_next_occurrence>`\ (\ ) |
  155. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  156. | |void| | :ref:`adjust_carets_after_edit<class_TextEdit_method_adjust_carets_after_edit>`\ (\ 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\: :ref:`int<class_int>`\ ) |
  157. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  158. | |void| | :ref:`adjust_viewport_to_caret<class_TextEdit_method_adjust_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
  159. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  160. | |void| | :ref:`apply_ime<class_TextEdit_method_apply_ime>`\ (\ ) |
  161. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  162. | |void| | :ref:`backspace<class_TextEdit_method_backspace>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  163. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  164. | |void| | :ref:`begin_complex_operation<class_TextEdit_method_begin_complex_operation>`\ (\ ) |
  165. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  166. | |void| | :ref:`begin_multicaret_edit<class_TextEdit_method_begin_multicaret_edit>`\ (\ ) |
  167. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  168. | |void| | :ref:`cancel_ime<class_TextEdit_method_cancel_ime>`\ (\ ) |
  169. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  170. | |void| | :ref:`center_viewport_to_caret<class_TextEdit_method_center_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
  171. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  172. | |void| | :ref:`clear<class_TextEdit_method_clear>`\ (\ ) |
  173. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  174. | |void| | :ref:`clear_undo_history<class_TextEdit_method_clear_undo_history>`\ (\ ) |
  175. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  176. | |void| | :ref:`collapse_carets<class_TextEdit_method_collapse_carets>`\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`, inclusive\: :ref:`bool<class_bool>` = false\ ) |
  177. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  178. | |void| | :ref:`copy<class_TextEdit_method_copy>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  179. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  180. | |void| | :ref:`cut<class_TextEdit_method_cut>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  181. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  182. | |void| | :ref:`delete_selection<class_TextEdit_method_delete_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  183. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  184. | |void| | :ref:`deselect<class_TextEdit_method_deselect>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  185. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  186. | |void| | :ref:`end_action<class_TextEdit_method_end_action>`\ (\ ) |
  187. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  188. | |void| | :ref:`end_complex_operation<class_TextEdit_method_end_complex_operation>`\ (\ ) |
  189. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  190. | |void| | :ref:`end_multicaret_edit<class_TextEdit_method_end_multicaret_edit>`\ (\ ) |
  191. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  192. | :ref:`int<class_int>` | :ref:`get_caret_column<class_TextEdit_method_get_caret_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  193. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  194. | :ref:`int<class_int>` | :ref:`get_caret_count<class_TextEdit_method_get_caret_count>`\ (\ ) |const| |
  195. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  196. | :ref:`Vector2<class_Vector2>` | :ref:`get_caret_draw_pos<class_TextEdit_method_get_caret_draw_pos>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  197. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  198. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_caret_index_edit_order<class_TextEdit_method_get_caret_index_edit_order>`\ (\ ) |
  199. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  200. | :ref:`int<class_int>` | :ref:`get_caret_line<class_TextEdit_method_get_caret_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  201. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  202. | :ref:`int<class_int>` | :ref:`get_caret_wrap_index<class_TextEdit_method_get_caret_wrap_index>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  203. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  204. | :ref:`int<class_int>` | :ref:`get_first_non_whitespace_column<class_TextEdit_method_get_first_non_whitespace_column>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  205. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  206. | :ref:`int<class_int>` | :ref:`get_first_visible_line<class_TextEdit_method_get_first_visible_line>`\ (\ ) |const| |
  207. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  208. | :ref:`int<class_int>` | :ref:`get_gutter_count<class_TextEdit_method_get_gutter_count>`\ (\ ) |const| |
  209. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  210. | :ref:`String<class_String>` | :ref:`get_gutter_name<class_TextEdit_method_get_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  211. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  212. | :ref:`GutterType<enum_TextEdit_GutterType>` | :ref:`get_gutter_type<class_TextEdit_method_get_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  213. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  214. | :ref:`int<class_int>` | :ref:`get_gutter_width<class_TextEdit_method_get_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  215. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  216. | :ref:`HScrollBar<class_HScrollBar>` | :ref:`get_h_scroll_bar<class_TextEdit_method_get_h_scroll_bar>`\ (\ ) |const| |
  217. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  218. | :ref:`int<class_int>` | :ref:`get_indent_level<class_TextEdit_method_get_indent_level>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  219. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  220. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line<class_TextEdit_method_get_last_full_visible_line>`\ (\ ) |const| |
  221. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  222. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line_wrap_index<class_TextEdit_method_get_last_full_visible_line_wrap_index>`\ (\ ) |const| |
  223. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  224. | :ref:`int<class_int>` | :ref:`get_last_unhidden_line<class_TextEdit_method_get_last_unhidden_line>`\ (\ ) |const| |
  225. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  226. | :ref:`String<class_String>` | :ref:`get_line<class_TextEdit_method_get_line>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  227. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  228. | :ref:`Color<class_Color>` | :ref:`get_line_background_color<class_TextEdit_method_get_line_background_color>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  229. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  230. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_line_column_at_pos<class_TextEdit_method_get_line_column_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`, clamp_line\: :ref:`bool<class_bool>` = true, clamp_column\: :ref:`bool<class_bool>` = true\ ) |const| |
  231. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  232. | :ref:`int<class_int>` | :ref:`get_line_count<class_TextEdit_method_get_line_count>`\ (\ ) |const| |
  233. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  234. | :ref:`Texture2D<class_Texture2D>` | :ref:`get_line_gutter_icon<class_TextEdit_method_get_line_gutter_icon>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
  235. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  236. | :ref:`Color<class_Color>` | :ref:`get_line_gutter_item_color<class_TextEdit_method_get_line_gutter_item_color>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
  237. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  238. | :ref:`Variant<class_Variant>` | :ref:`get_line_gutter_metadata<class_TextEdit_method_get_line_gutter_metadata>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
  239. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  240. | :ref:`String<class_String>` | :ref:`get_line_gutter_text<class_TextEdit_method_get_line_gutter_text>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
  241. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  242. | :ref:`int<class_int>` | :ref:`get_line_height<class_TextEdit_method_get_line_height>`\ (\ ) |const| |
  243. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  244. | :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] | :ref:`get_line_ranges_from_carets<class_TextEdit_method_get_line_ranges_from_carets>`\ (\ only_selections\: :ref:`bool<class_bool>` = false, merge_adjacent\: :ref:`bool<class_bool>` = true\ ) |const| |
  245. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  246. | :ref:`int<class_int>` | :ref:`get_line_width<class_TextEdit_method_get_line_width>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = -1\ ) |const| |
  247. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  248. | :ref:`String<class_String>` | :ref:`get_line_with_ime<class_TextEdit_method_get_line_with_ime>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  249. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  250. | :ref:`int<class_int>` | :ref:`get_line_wrap_count<class_TextEdit_method_get_line_wrap_count>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  251. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  252. | :ref:`int<class_int>` | :ref:`get_line_wrap_index_at_column<class_TextEdit_method_get_line_wrap_index_at_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
  253. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  254. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_line_wrapped_text<class_TextEdit_method_get_line_wrapped_text>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  255. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  256. | :ref:`Vector2<class_Vector2>` | :ref:`get_local_mouse_pos<class_TextEdit_method_get_local_mouse_pos>`\ (\ ) |const| |
  257. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  258. | :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_TextEdit_method_get_menu>`\ (\ ) |const| |
  259. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  260. | :ref:`int<class_int>` | :ref:`get_minimap_line_at_pos<class_TextEdit_method_get_minimap_line_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
  261. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  262. | :ref:`int<class_int>` | :ref:`get_minimap_visible_lines<class_TextEdit_method_get_minimap_visible_lines>`\ (\ ) |const| |
  263. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  264. | :ref:`int<class_int>` | :ref:`get_next_composite_character_column<class_TextEdit_method_get_next_composite_character_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
  265. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  266. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_next_visible_line_index_offset_from<class_TextEdit_method_get_next_visible_line_index_offset_from>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| |
  267. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  268. | :ref:`int<class_int>` | :ref:`get_next_visible_line_offset_from<class_TextEdit_method_get_next_visible_line_offset_from>`\ (\ line\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| |
  269. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  270. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_pos_at_line_column<class_TextEdit_method_get_pos_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
  271. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  272. | :ref:`int<class_int>` | :ref:`get_previous_composite_character_column<class_TextEdit_method_get_previous_composite_character_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
  273. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  274. | :ref:`Rect2i<class_Rect2i>` | :ref:`get_rect_at_line_column<class_TextEdit_method_get_rect_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| |
  275. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  276. | :ref:`int<class_int>` | :ref:`get_saved_version<class_TextEdit_method_get_saved_version>`\ (\ ) |const| |
  277. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  278. | :ref:`float<class_float>` | :ref:`get_scroll_pos_for_line<class_TextEdit_method_get_scroll_pos_for_line>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |const| |
  279. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  280. | :ref:`String<class_String>` | :ref:`get_selected_text<class_TextEdit_method_get_selected_text>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  281. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  282. | :ref:`int<class_int>` | :ref:`get_selection_at_line_column<class_TextEdit_method_get_selection_at_line_column>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, include_edges\: :ref:`bool<class_bool>` = true, only_selections\: :ref:`bool<class_bool>` = true\ ) |const| |
  283. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  284. | :ref:`int<class_int>` | :ref:`get_selection_column<class_TextEdit_method_get_selection_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  285. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  286. | :ref:`int<class_int>` | :ref:`get_selection_from_column<class_TextEdit_method_get_selection_from_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  287. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  288. | :ref:`int<class_int>` | :ref:`get_selection_from_line<class_TextEdit_method_get_selection_from_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  289. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  290. | :ref:`int<class_int>` | :ref:`get_selection_line<class_TextEdit_method_get_selection_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  291. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  292. | :ref:`SelectionMode<enum_TextEdit_SelectionMode>` | :ref:`get_selection_mode<class_TextEdit_method_get_selection_mode>`\ (\ ) |const| |
  293. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  294. | :ref:`int<class_int>` | :ref:`get_selection_origin_column<class_TextEdit_method_get_selection_origin_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  295. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  296. | :ref:`int<class_int>` | :ref:`get_selection_origin_line<class_TextEdit_method_get_selection_origin_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  297. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  298. | :ref:`int<class_int>` | :ref:`get_selection_to_column<class_TextEdit_method_get_selection_to_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  299. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  300. | :ref:`int<class_int>` | :ref:`get_selection_to_line<class_TextEdit_method_get_selection_to_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  301. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  302. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_sorted_carets<class_TextEdit_method_get_sorted_carets>`\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const| |
  303. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  304. | :ref:`int<class_int>` | :ref:`get_tab_size<class_TextEdit_method_get_tab_size>`\ (\ ) |const| |
  305. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  306. | :ref:`int<class_int>` | :ref:`get_total_gutter_width<class_TextEdit_method_get_total_gutter_width>`\ (\ ) |const| |
  307. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  308. | :ref:`int<class_int>` | :ref:`get_total_visible_line_count<class_TextEdit_method_get_total_visible_line_count>`\ (\ ) |const| |
  309. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  310. | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_TextEdit_method_get_v_scroll_bar>`\ (\ ) |const| |
  311. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  312. | :ref:`int<class_int>` | :ref:`get_version<class_TextEdit_method_get_version>`\ (\ ) |const| |
  313. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  314. | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_TextEdit_method_get_visible_line_count>`\ (\ ) |const| |
  315. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  316. | :ref:`int<class_int>` | :ref:`get_visible_line_count_in_range<class_TextEdit_method_get_visible_line_count_in_range>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |const| |
  317. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  318. | :ref:`String<class_String>` | :ref:`get_word_at_pos<class_TextEdit_method_get_word_at_pos>`\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const| |
  319. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  320. | :ref:`String<class_String>` | :ref:`get_word_under_caret<class_TextEdit_method_get_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
  321. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  322. | :ref:`bool<class_bool>` | :ref:`has_ime_text<class_TextEdit_method_has_ime_text>`\ (\ ) |const| |
  323. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  324. | :ref:`bool<class_bool>` | :ref:`has_redo<class_TextEdit_method_has_redo>`\ (\ ) |const| |
  325. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  326. | :ref:`bool<class_bool>` | :ref:`has_selection<class_TextEdit_method_has_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
  327. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  328. | :ref:`bool<class_bool>` | :ref:`has_undo<class_TextEdit_method_has_undo>`\ (\ ) |const| |
  329. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  330. | |void| | :ref:`insert_line_at<class_TextEdit_method_insert_line_at>`\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
  331. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  332. | |void| | :ref:`insert_text<class_TextEdit_method_insert_text>`\ (\ text\: :ref:`String<class_String>`, line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, before_selection_begin\: :ref:`bool<class_bool>` = true, before_selection_end\: :ref:`bool<class_bool>` = false\ ) |
  333. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  334. | |void| | :ref:`insert_text_at_caret<class_TextEdit_method_insert_text_at_caret>`\ (\ text\: :ref:`String<class_String>`, caret_index\: :ref:`int<class_int>` = -1\ ) |
  335. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  336. | :ref:`bool<class_bool>` | :ref:`is_caret_after_selection_origin<class_TextEdit_method_is_caret_after_selection_origin>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  337. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  338. | :ref:`bool<class_bool>` | :ref:`is_caret_visible<class_TextEdit_method_is_caret_visible>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  339. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  340. | :ref:`bool<class_bool>` | :ref:`is_dragging_cursor<class_TextEdit_method_is_dragging_cursor>`\ (\ ) |const| |
  341. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  342. | :ref:`bool<class_bool>` | :ref:`is_gutter_clickable<class_TextEdit_method_is_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  343. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  344. | :ref:`bool<class_bool>` | :ref:`is_gutter_drawn<class_TextEdit_method_is_gutter_drawn>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  345. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  346. | :ref:`bool<class_bool>` | :ref:`is_gutter_overwritable<class_TextEdit_method_is_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  347. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  348. | :ref:`bool<class_bool>` | :ref:`is_in_mulitcaret_edit<class_TextEdit_method_is_in_mulitcaret_edit>`\ (\ ) |const| |
  349. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  350. | :ref:`bool<class_bool>` | :ref:`is_line_gutter_clickable<class_TextEdit_method_is_line_gutter_clickable>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| |
  351. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  352. | :ref:`bool<class_bool>` | :ref:`is_line_wrapped<class_TextEdit_method_is_line_wrapped>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  353. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  354. | :ref:`bool<class_bool>` | :ref:`is_menu_visible<class_TextEdit_method_is_menu_visible>`\ (\ ) |const| |
  355. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  356. | :ref:`bool<class_bool>` | :ref:`is_mouse_over_selection<class_TextEdit_method_is_mouse_over_selection>`\ (\ edges\: :ref:`bool<class_bool>`, caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
  357. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  358. | :ref:`bool<class_bool>` | :ref:`is_overtype_mode_enabled<class_TextEdit_method_is_overtype_mode_enabled>`\ (\ ) |const| |
  359. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  360. | |void| | :ref:`menu_option<class_TextEdit_method_menu_option>`\ (\ option\: :ref:`int<class_int>`\ ) |
  361. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  362. | |void| | :ref:`merge_gutters<class_TextEdit_method_merge_gutters>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
  363. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  364. | |void| | :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`\ (\ ) |
  365. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  366. | :ref:`bool<class_bool>` | :ref:`multicaret_edit_ignore_caret<class_TextEdit_method_multicaret_edit_ignore_caret>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |const| |
  367. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  368. | |void| | :ref:`paste<class_TextEdit_method_paste>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  369. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  370. | |void| | :ref:`paste_primary_clipboard<class_TextEdit_method_paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  371. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  372. | |void| | :ref:`redo<class_TextEdit_method_redo>`\ (\ ) |
  373. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  374. | |void| | :ref:`remove_caret<class_TextEdit_method_remove_caret>`\ (\ caret\: :ref:`int<class_int>`\ ) |
  375. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  376. | |void| | :ref:`remove_gutter<class_TextEdit_method_remove_gutter>`\ (\ gutter\: :ref:`int<class_int>`\ ) |
  377. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  378. | |void| | :ref:`remove_line_at<class_TextEdit_method_remove_line_at>`\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ ) |
  379. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  380. | |void| | :ref:`remove_secondary_carets<class_TextEdit_method_remove_secondary_carets>`\ (\ ) |
  381. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  382. | |void| | :ref:`remove_text<class_TextEdit_method_remove_text>`\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`\ ) |
  383. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  384. | :ref:`Vector2i<class_Vector2i>` | :ref:`search<class_TextEdit_method_search>`\ (\ text\: :ref:`String<class_String>`, flags\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`\ ) |const| |
  385. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  386. | |void| | :ref:`select<class_TextEdit_method_select>`\ (\ origin_line\: :ref:`int<class_int>`, origin_column\: :ref:`int<class_int>`, caret_line\: :ref:`int<class_int>`, caret_column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) |
  387. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  388. | |void| | :ref:`select_all<class_TextEdit_method_select_all>`\ (\ ) |
  389. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  390. | |void| | :ref:`select_word_under_caret<class_TextEdit_method_select_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  391. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  392. | |void| | :ref:`set_caret_column<class_TextEdit_method_set_caret_column>`\ (\ column\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, caret_index\: :ref:`int<class_int>` = 0\ ) |
  393. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  394. | |void| | :ref:`set_caret_line<class_TextEdit_method_set_caret_line>`\ (\ line\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = 0, caret_index\: :ref:`int<class_int>` = 0\ ) |
  395. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  396. | |void| | :ref:`set_gutter_clickable<class_TextEdit_method_set_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) |
  397. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  398. | |void| | :ref:`set_gutter_custom_draw<class_TextEdit_method_set_gutter_custom_draw>`\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ ) |
  399. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  400. | |void| | :ref:`set_gutter_draw<class_TextEdit_method_set_gutter_draw>`\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ ) |
  401. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  402. | |void| | :ref:`set_gutter_name<class_TextEdit_method_set_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ ) |
  403. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  404. | |void| | :ref:`set_gutter_overwritable<class_TextEdit_method_set_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ ) |
  405. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  406. | |void| | :ref:`set_gutter_type<class_TextEdit_method_set_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ ) |
  407. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  408. | |void| | :ref:`set_gutter_width<class_TextEdit_method_set_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ ) |
  409. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  410. | |void| | :ref:`set_line<class_TextEdit_method_set_line>`\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ ) |
  411. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  412. | |void| | :ref:`set_line_as_center_visible<class_TextEdit_method_set_line_as_center_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
  413. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  414. | |void| | :ref:`set_line_as_first_visible<class_TextEdit_method_set_line_as_first_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
  415. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  416. | |void| | :ref:`set_line_as_last_visible<class_TextEdit_method_set_line_as_last_visible>`\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |
  417. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  418. | |void| | :ref:`set_line_background_color<class_TextEdit_method_set_line_background_color>`\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) |
  419. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  420. | |void| | :ref:`set_line_gutter_clickable<class_TextEdit_method_set_line_gutter_clickable>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) |
  421. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  422. | |void| | :ref:`set_line_gutter_icon<class_TextEdit_method_set_line_gutter_icon>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) |
  423. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  424. | |void| | :ref:`set_line_gutter_item_color<class_TextEdit_method_set_line_gutter_item_color>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) |
  425. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  426. | |void| | :ref:`set_line_gutter_metadata<class_TextEdit_method_set_line_gutter_metadata>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, metadata\: :ref:`Variant<class_Variant>`\ ) |
  427. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  428. | |void| | :ref:`set_line_gutter_text<class_TextEdit_method_set_line_gutter_text>`\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
  429. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  430. | |void| | :ref:`set_overtype_mode_enabled<class_TextEdit_method_set_overtype_mode_enabled>`\ (\ enabled\: :ref:`bool<class_bool>`\ ) |
  431. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  432. | |void| | :ref:`set_search_flags<class_TextEdit_method_set_search_flags>`\ (\ flags\: :ref:`int<class_int>`\ ) |
  433. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  434. | |void| | :ref:`set_search_text<class_TextEdit_method_set_search_text>`\ (\ search_text\: :ref:`String<class_String>`\ ) |
  435. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  436. | |void| | :ref:`set_selection_mode<class_TextEdit_method_set_selection_mode>`\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ ) |
  437. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  438. | |void| | :ref:`set_selection_origin_column<class_TextEdit_method_set_selection_origin_column>`\ (\ column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) |
  439. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  440. | |void| | :ref:`set_selection_origin_line<class_TextEdit_method_set_selection_origin_line>`\ (\ line\: :ref:`int<class_int>`, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = -1, caret_index\: :ref:`int<class_int>` = 0\ ) |
  441. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  442. | |void| | :ref:`set_tab_size<class_TextEdit_method_set_tab_size>`\ (\ size\: :ref:`int<class_int>`\ ) |
  443. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  444. | |void| | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>`\ (\ callback\: :ref:`Callable<class_Callable>`\ ) |
  445. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  446. | |void| | :ref:`skip_selection_for_next_occurrence<class_TextEdit_method_skip_selection_for_next_occurrence>`\ (\ ) |
  447. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  448. | |void| | :ref:`start_action<class_TextEdit_method_start_action>`\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ ) |
  449. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  450. | |void| | :ref:`swap_lines<class_TextEdit_method_swap_lines>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
  451. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  452. | |void| | :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>`\ (\ ) |
  453. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  454. | |void| | :ref:`undo<class_TextEdit_method_undo>`\ (\ ) |
  455. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  456. .. rst-class:: classref-reftable-group
  457. Theme Properties
  458. ----------------
  459. .. table::
  460. :widths: auto
  461. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  462. | :ref:`Color<class_Color>` | :ref:`background_color<class_TextEdit_theme_color_background_color>` | ``Color(0, 0, 0, 0)`` |
  463. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  464. | :ref:`Color<class_Color>` | :ref:`caret_background_color<class_TextEdit_theme_color_caret_background_color>` | ``Color(0, 0, 0, 1)`` |
  465. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  466. | :ref:`Color<class_Color>` | :ref:`caret_color<class_TextEdit_theme_color_caret_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  467. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  468. | :ref:`Color<class_Color>` | :ref:`current_line_color<class_TextEdit_theme_color_current_line_color>` | ``Color(0.25, 0.25, 0.26, 0.8)`` |
  469. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  470. | :ref:`Color<class_Color>` | :ref:`font_color<class_TextEdit_theme_color_font_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  471. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  472. | :ref:`Color<class_Color>` | :ref:`font_outline_color<class_TextEdit_theme_color_font_outline_color>` | ``Color(0, 0, 0, 1)`` |
  473. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  474. | :ref:`Color<class_Color>` | :ref:`font_placeholder_color<class_TextEdit_theme_color_font_placeholder_color>` | ``Color(0.875, 0.875, 0.875, 0.6)`` |
  475. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  476. | :ref:`Color<class_Color>` | :ref:`font_readonly_color<class_TextEdit_theme_color_font_readonly_color>` | ``Color(0.875, 0.875, 0.875, 0.5)`` |
  477. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  478. | :ref:`Color<class_Color>` | :ref:`font_selected_color<class_TextEdit_theme_color_font_selected_color>` | ``Color(0, 0, 0, 0)`` |
  479. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  480. | :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)`` |
  481. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  482. | :ref:`Color<class_Color>` | :ref:`search_result_color<class_TextEdit_theme_color_search_result_color>` | ``Color(0.3, 0.3, 0.3, 1)`` |
  483. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  484. | :ref:`Color<class_Color>` | :ref:`selection_color<class_TextEdit_theme_color_selection_color>` | ``Color(0.5, 0.5, 0.5, 1)`` |
  485. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  486. | :ref:`Color<class_Color>` | :ref:`word_highlighted_color<class_TextEdit_theme_color_word_highlighted_color>` | ``Color(0.5, 0.5, 0.5, 0.25)`` |
  487. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  488. | :ref:`int<class_int>` | :ref:`caret_width<class_TextEdit_theme_constant_caret_width>` | ``1`` |
  489. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  490. | :ref:`int<class_int>` | :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>` | ``4`` |
  491. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  492. | :ref:`int<class_int>` | :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` | ``0`` |
  493. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  494. | :ref:`Font<class_Font>` | :ref:`font<class_TextEdit_theme_font_font>` | |
  495. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  496. | :ref:`int<class_int>` | :ref:`font_size<class_TextEdit_theme_font_size_font_size>` | |
  497. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  498. | :ref:`Texture2D<class_Texture2D>` | :ref:`space<class_TextEdit_theme_icon_space>` | |
  499. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  500. | :ref:`Texture2D<class_Texture2D>` | :ref:`tab<class_TextEdit_theme_icon_tab>` | |
  501. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  502. | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_TextEdit_theme_style_focus>` | |
  503. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  504. | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_TextEdit_theme_style_normal>` | |
  505. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  506. | :ref:`StyleBox<class_StyleBox>` | :ref:`read_only<class_TextEdit_theme_style_read_only>` | |
  507. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  508. .. rst-class:: classref-section-separator
  509. ----
  510. .. rst-class:: classref-descriptions-group
  511. Signals
  512. -------
  513. .. _class_TextEdit_signal_caret_changed:
  514. .. rst-class:: classref-signal
  515. **caret_changed**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_caret_changed>`
  516. Emitted when any caret changes position.
  517. .. rst-class:: classref-item-separator
  518. ----
  519. .. _class_TextEdit_signal_gutter_added:
  520. .. rst-class:: classref-signal
  521. **gutter_added**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_gutter_added>`
  522. Emitted when a gutter is added.
  523. .. rst-class:: classref-item-separator
  524. ----
  525. .. _class_TextEdit_signal_gutter_clicked:
  526. .. rst-class:: classref-signal
  527. **gutter_clicked**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_gutter_clicked>`
  528. Emitted when a gutter is clicked.
  529. .. rst-class:: classref-item-separator
  530. ----
  531. .. _class_TextEdit_signal_gutter_removed:
  532. .. rst-class:: classref-signal
  533. **gutter_removed**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_gutter_removed>`
  534. Emitted when a gutter is removed.
  535. .. rst-class:: classref-item-separator
  536. ----
  537. .. _class_TextEdit_signal_lines_edited_from:
  538. .. rst-class:: classref-signal
  539. **lines_edited_from**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_lines_edited_from>`
  540. Emitted immediately when the text changes.
  541. When text is added ``from_line`` will be less than ``to_line``. On a remove ``to_line`` will be less than ``from_line``.
  542. .. rst-class:: classref-item-separator
  543. ----
  544. .. _class_TextEdit_signal_text_changed:
  545. .. rst-class:: classref-signal
  546. **text_changed**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_text_changed>`
  547. Emitted when the text changes.
  548. .. rst-class:: classref-item-separator
  549. ----
  550. .. _class_TextEdit_signal_text_set:
  551. .. rst-class:: classref-signal
  552. **text_set**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_signal_text_set>`
  553. Emitted when :ref:`clear()<class_TextEdit_method_clear>` is called or :ref:`text<class_TextEdit_property_text>` is set.
  554. .. rst-class:: classref-section-separator
  555. ----
  556. .. rst-class:: classref-descriptions-group
  557. Enumerations
  558. ------------
  559. .. _enum_TextEdit_MenuItems:
  560. .. rst-class:: classref-enumeration
  561. enum **MenuItems**: :ref:`๐Ÿ”—<enum_TextEdit_MenuItems>`
  562. .. _class_TextEdit_constant_MENU_CUT:
  563. .. rst-class:: classref-enumeration-constant
  564. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CUT** = ``0``
  565. Cuts (copies and clears) the selected text.
  566. .. _class_TextEdit_constant_MENU_COPY:
  567. .. rst-class:: classref-enumeration-constant
  568. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_COPY** = ``1``
  569. Copies the selected text.
  570. .. _class_TextEdit_constant_MENU_PASTE:
  571. .. rst-class:: classref-enumeration-constant
  572. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_PASTE** = ``2``
  573. Pastes the clipboard text over the selected text (or at the cursor's position).
  574. .. _class_TextEdit_constant_MENU_CLEAR:
  575. .. rst-class:: classref-enumeration-constant
  576. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CLEAR** = ``3``
  577. Erases the whole **TextEdit** text.
  578. .. _class_TextEdit_constant_MENU_SELECT_ALL:
  579. .. rst-class:: classref-enumeration-constant
  580. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SELECT_ALL** = ``4``
  581. Selects the whole **TextEdit** text.
  582. .. _class_TextEdit_constant_MENU_UNDO:
  583. .. rst-class:: classref-enumeration-constant
  584. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_UNDO** = ``5``
  585. Undoes the previous action.
  586. .. _class_TextEdit_constant_MENU_REDO:
  587. .. rst-class:: classref-enumeration-constant
  588. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_REDO** = ``6``
  589. Redoes the previous action.
  590. .. _class_TextEdit_constant_MENU_SUBMENU_TEXT_DIR:
  591. .. rst-class:: classref-enumeration-constant
  592. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_TEXT_DIR** = ``7``
  593. ID of "Text Writing Direction" submenu.
  594. .. _class_TextEdit_constant_MENU_DIR_INHERITED:
  595. .. rst-class:: classref-enumeration-constant
  596. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_INHERITED** = ``8``
  597. Sets text direction to inherited.
  598. .. _class_TextEdit_constant_MENU_DIR_AUTO:
  599. .. rst-class:: classref-enumeration-constant
  600. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_AUTO** = ``9``
  601. Sets text direction to automatic.
  602. .. _class_TextEdit_constant_MENU_DIR_LTR:
  603. .. rst-class:: classref-enumeration-constant
  604. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_LTR** = ``10``
  605. Sets text direction to left-to-right.
  606. .. _class_TextEdit_constant_MENU_DIR_RTL:
  607. .. rst-class:: classref-enumeration-constant
  608. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_RTL** = ``11``
  609. Sets text direction to right-to-left.
  610. .. _class_TextEdit_constant_MENU_DISPLAY_UCC:
  611. .. rst-class:: classref-enumeration-constant
  612. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DISPLAY_UCC** = ``12``
  613. Toggles control character display.
  614. .. _class_TextEdit_constant_MENU_SUBMENU_INSERT_UCC:
  615. .. rst-class:: classref-enumeration-constant
  616. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_INSERT_UCC** = ``13``
  617. ID of "Insert Control Character" submenu.
  618. .. _class_TextEdit_constant_MENU_INSERT_LRM:
  619. .. rst-class:: classref-enumeration-constant
  620. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRM** = ``14``
  621. Inserts left-to-right mark (LRM) character.
  622. .. _class_TextEdit_constant_MENU_INSERT_RLM:
  623. .. rst-class:: classref-enumeration-constant
  624. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLM** = ``15``
  625. Inserts right-to-left mark (RLM) character.
  626. .. _class_TextEdit_constant_MENU_INSERT_LRE:
  627. .. rst-class:: classref-enumeration-constant
  628. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRE** = ``16``
  629. Inserts start of left-to-right embedding (LRE) character.
  630. .. _class_TextEdit_constant_MENU_INSERT_RLE:
  631. .. rst-class:: classref-enumeration-constant
  632. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLE** = ``17``
  633. Inserts start of right-to-left embedding (RLE) character.
  634. .. _class_TextEdit_constant_MENU_INSERT_LRO:
  635. .. rst-class:: classref-enumeration-constant
  636. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRO** = ``18``
  637. Inserts start of left-to-right override (LRO) character.
  638. .. _class_TextEdit_constant_MENU_INSERT_RLO:
  639. .. rst-class:: classref-enumeration-constant
  640. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLO** = ``19``
  641. Inserts start of right-to-left override (RLO) character.
  642. .. _class_TextEdit_constant_MENU_INSERT_PDF:
  643. .. rst-class:: classref-enumeration-constant
  644. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDF** = ``20``
  645. Inserts pop direction formatting (PDF) character.
  646. .. _class_TextEdit_constant_MENU_INSERT_ALM:
  647. .. rst-class:: classref-enumeration-constant
  648. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ALM** = ``21``
  649. Inserts Arabic letter mark (ALM) character.
  650. .. _class_TextEdit_constant_MENU_INSERT_LRI:
  651. .. rst-class:: classref-enumeration-constant
  652. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRI** = ``22``
  653. Inserts left-to-right isolate (LRI) character.
  654. .. _class_TextEdit_constant_MENU_INSERT_RLI:
  655. .. rst-class:: classref-enumeration-constant
  656. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLI** = ``23``
  657. Inserts right-to-left isolate (RLI) character.
  658. .. _class_TextEdit_constant_MENU_INSERT_FSI:
  659. .. rst-class:: classref-enumeration-constant
  660. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_FSI** = ``24``
  661. Inserts first strong isolate (FSI) character.
  662. .. _class_TextEdit_constant_MENU_INSERT_PDI:
  663. .. rst-class:: classref-enumeration-constant
  664. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDI** = ``25``
  665. Inserts pop direction isolate (PDI) character.
  666. .. _class_TextEdit_constant_MENU_INSERT_ZWJ:
  667. .. rst-class:: classref-enumeration-constant
  668. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWJ** = ``26``
  669. Inserts zero width joiner (ZWJ) character.
  670. .. _class_TextEdit_constant_MENU_INSERT_ZWNJ:
  671. .. rst-class:: classref-enumeration-constant
  672. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWNJ** = ``27``
  673. Inserts zero width non-joiner (ZWNJ) character.
  674. .. _class_TextEdit_constant_MENU_INSERT_WJ:
  675. .. rst-class:: classref-enumeration-constant
  676. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_WJ** = ``28``
  677. Inserts word joiner (WJ) character.
  678. .. _class_TextEdit_constant_MENU_INSERT_SHY:
  679. .. rst-class:: classref-enumeration-constant
  680. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_SHY** = ``29``
  681. Inserts soft hyphen (SHY) character.
  682. .. _class_TextEdit_constant_MENU_EMOJI_AND_SYMBOL:
  683. .. rst-class:: classref-enumeration-constant
  684. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_EMOJI_AND_SYMBOL** = ``30``
  685. Opens system emoji and symbol picker.
  686. .. _class_TextEdit_constant_MENU_MAX:
  687. .. rst-class:: classref-enumeration-constant
  688. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_MAX** = ``31``
  689. Represents the size of the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  690. .. rst-class:: classref-item-separator
  691. ----
  692. .. _enum_TextEdit_EditAction:
  693. .. rst-class:: classref-enumeration
  694. enum **EditAction**: :ref:`๐Ÿ”—<enum_TextEdit_EditAction>`
  695. .. _class_TextEdit_constant_ACTION_NONE:
  696. .. rst-class:: classref-enumeration-constant
  697. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_NONE** = ``0``
  698. No current action.
  699. .. _class_TextEdit_constant_ACTION_TYPING:
  700. .. rst-class:: classref-enumeration-constant
  701. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_TYPING** = ``1``
  702. A typing action.
  703. .. _class_TextEdit_constant_ACTION_BACKSPACE:
  704. .. rst-class:: classref-enumeration-constant
  705. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_BACKSPACE** = ``2``
  706. A backwards delete action.
  707. .. _class_TextEdit_constant_ACTION_DELETE:
  708. .. rst-class:: classref-enumeration-constant
  709. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_DELETE** = ``3``
  710. A forward delete action.
  711. .. rst-class:: classref-item-separator
  712. ----
  713. .. _enum_TextEdit_SearchFlags:
  714. .. rst-class:: classref-enumeration
  715. enum **SearchFlags**: :ref:`๐Ÿ”—<enum_TextEdit_SearchFlags>`
  716. .. _class_TextEdit_constant_SEARCH_MATCH_CASE:
  717. .. rst-class:: classref-enumeration-constant
  718. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_MATCH_CASE** = ``1``
  719. Match case when searching.
  720. .. _class_TextEdit_constant_SEARCH_WHOLE_WORDS:
  721. .. rst-class:: classref-enumeration-constant
  722. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_WHOLE_WORDS** = ``2``
  723. Match whole words when searching.
  724. .. _class_TextEdit_constant_SEARCH_BACKWARDS:
  725. .. rst-class:: classref-enumeration-constant
  726. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_BACKWARDS** = ``4``
  727. Search from end to beginning.
  728. .. rst-class:: classref-item-separator
  729. ----
  730. .. _enum_TextEdit_CaretType:
  731. .. rst-class:: classref-enumeration
  732. enum **CaretType**: :ref:`๐Ÿ”—<enum_TextEdit_CaretType>`
  733. .. _class_TextEdit_constant_CARET_TYPE_LINE:
  734. .. rst-class:: classref-enumeration-constant
  735. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_LINE** = ``0``
  736. Vertical line caret.
  737. .. _class_TextEdit_constant_CARET_TYPE_BLOCK:
  738. .. rst-class:: classref-enumeration-constant
  739. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_BLOCK** = ``1``
  740. Block caret.
  741. .. rst-class:: classref-item-separator
  742. ----
  743. .. _enum_TextEdit_SelectionMode:
  744. .. rst-class:: classref-enumeration
  745. enum **SelectionMode**: :ref:`๐Ÿ”—<enum_TextEdit_SelectionMode>`
  746. .. _class_TextEdit_constant_SELECTION_MODE_NONE:
  747. .. rst-class:: classref-enumeration-constant
  748. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_NONE** = ``0``
  749. Not selecting.
  750. .. _class_TextEdit_constant_SELECTION_MODE_SHIFT:
  751. .. rst-class:: classref-enumeration-constant
  752. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_SHIFT** = ``1``
  753. Select as if ``shift`` is pressed.
  754. .. _class_TextEdit_constant_SELECTION_MODE_POINTER:
  755. .. rst-class:: classref-enumeration-constant
  756. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_POINTER** = ``2``
  757. Select single characters as if the user single clicked.
  758. .. _class_TextEdit_constant_SELECTION_MODE_WORD:
  759. .. rst-class:: classref-enumeration-constant
  760. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_WORD** = ``3``
  761. Select whole words as if the user double clicked.
  762. .. _class_TextEdit_constant_SELECTION_MODE_LINE:
  763. .. rst-class:: classref-enumeration-constant
  764. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_LINE** = ``4``
  765. Select whole lines as if the user triple clicked.
  766. .. rst-class:: classref-item-separator
  767. ----
  768. .. _enum_TextEdit_LineWrappingMode:
  769. .. rst-class:: classref-enumeration
  770. enum **LineWrappingMode**: :ref:`๐Ÿ”—<enum_TextEdit_LineWrappingMode>`
  771. .. _class_TextEdit_constant_LINE_WRAPPING_NONE:
  772. .. rst-class:: classref-enumeration-constant
  773. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_NONE** = ``0``
  774. Line wrapping is disabled.
  775. .. _class_TextEdit_constant_LINE_WRAPPING_BOUNDARY:
  776. .. rst-class:: classref-enumeration-constant
  777. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_BOUNDARY** = ``1``
  778. Line wrapping occurs at the control boundary, beyond what would normally be visible.
  779. .. rst-class:: classref-item-separator
  780. ----
  781. .. _enum_TextEdit_GutterType:
  782. .. rst-class:: classref-enumeration
  783. enum **GutterType**: :ref:`๐Ÿ”—<enum_TextEdit_GutterType>`
  784. .. _class_TextEdit_constant_GUTTER_TYPE_STRING:
  785. .. rst-class:: classref-enumeration-constant
  786. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_STRING** = ``0``
  787. When a gutter is set to string using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain text set via the :ref:`set_line_gutter_text()<class_TextEdit_method_set_line_gutter_text>` method.
  788. .. _class_TextEdit_constant_GUTTER_TYPE_ICON:
  789. .. rst-class:: classref-enumeration-constant
  790. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_ICON** = ``1``
  791. When a gutter is set to icon using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain an icon set via the :ref:`set_line_gutter_icon()<class_TextEdit_method_set_line_gutter_icon>` method.
  792. .. _class_TextEdit_constant_GUTTER_TYPE_CUSTOM:
  793. .. rst-class:: classref-enumeration-constant
  794. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_CUSTOM** = ``2``
  795. When a gutter is set to custom using :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`, it is used to contain custom visuals controlled by a callback method set via the :ref:`set_gutter_custom_draw()<class_TextEdit_method_set_gutter_custom_draw>` method.
  796. .. rst-class:: classref-section-separator
  797. ----
  798. .. rst-class:: classref-descriptions-group
  799. Property Descriptions
  800. ---------------------
  801. .. _class_TextEdit_property_autowrap_mode:
  802. .. rst-class:: classref-property
  803. :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``3`` :ref:`๐Ÿ”—<class_TextEdit_property_autowrap_mode>`
  804. .. rst-class:: classref-property-setget
  805. - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`\ )
  806. - :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode**\ (\ )
  807. If :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` is set to :ref:`LINE_WRAPPING_BOUNDARY<class_TextEdit_constant_LINE_WRAPPING_BOUNDARY>`, sets text wrapping mode.
  808. .. rst-class:: classref-item-separator
  809. ----
  810. .. _class_TextEdit_property_backspace_deletes_composite_character_enabled:
  811. .. rst-class:: classref-property
  812. :ref:`bool<class_bool>` **backspace_deletes_composite_character_enabled** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_backspace_deletes_composite_character_enabled>`
  813. .. rst-class:: classref-property-setget
  814. - |void| **set_backspace_deletes_composite_character_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  815. - :ref:`bool<class_bool>` **is_backspace_deletes_composite_character_enabled**\ (\ )
  816. If ``true`` and :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` is ``false``, backspace deletes an entire composite character such as โค๏ธโ€๐Ÿฉน, instead of deleting part of the composite character.
  817. .. rst-class:: classref-item-separator
  818. ----
  819. .. _class_TextEdit_property_caret_blink:
  820. .. rst-class:: classref-property
  821. :ref:`bool<class_bool>` **caret_blink** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_blink>`
  822. .. rst-class:: classref-property-setget
  823. - |void| **set_caret_blink_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  824. - :ref:`bool<class_bool>` **is_caret_blink_enabled**\ (\ )
  825. If ``true``, makes the caret blink.
  826. .. rst-class:: classref-item-separator
  827. ----
  828. .. _class_TextEdit_property_caret_blink_interval:
  829. .. rst-class:: classref-property
  830. :ref:`float<class_float>` **caret_blink_interval** = ``0.65`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_blink_interval>`
  831. .. rst-class:: classref-property-setget
  832. - |void| **set_caret_blink_interval**\ (\ value\: :ref:`float<class_float>`\ )
  833. - :ref:`float<class_float>` **get_caret_blink_interval**\ (\ )
  834. The interval at which the caret blinks (in seconds).
  835. .. rst-class:: classref-item-separator
  836. ----
  837. .. _class_TextEdit_property_caret_draw_when_editable_disabled:
  838. .. rst-class:: classref-property
  839. :ref:`bool<class_bool>` **caret_draw_when_editable_disabled** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_draw_when_editable_disabled>`
  840. .. rst-class:: classref-property-setget
  841. - |void| **set_draw_caret_when_editable_disabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  842. - :ref:`bool<class_bool>` **is_drawing_caret_when_editable_disabled**\ (\ )
  843. If ``true``, caret will be visible when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  844. .. rst-class:: classref-item-separator
  845. ----
  846. .. _class_TextEdit_property_caret_mid_grapheme:
  847. .. rst-class:: classref-property
  848. :ref:`bool<class_bool>` **caret_mid_grapheme** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_mid_grapheme>`
  849. .. rst-class:: classref-property-setget
  850. - |void| **set_caret_mid_grapheme_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  851. - :ref:`bool<class_bool>` **is_caret_mid_grapheme_enabled**\ (\ )
  852. Allow moving caret, selecting and removing the individual composite character components.
  853. \ **Note:** :kbd:`Backspace` is always removing individual composite character components.
  854. .. rst-class:: classref-item-separator
  855. ----
  856. .. _class_TextEdit_property_caret_move_on_right_click:
  857. .. rst-class:: classref-property
  858. :ref:`bool<class_bool>` **caret_move_on_right_click** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_move_on_right_click>`
  859. .. rst-class:: classref-property-setget
  860. - |void| **set_move_caret_on_right_click_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  861. - :ref:`bool<class_bool>` **is_move_caret_on_right_click_enabled**\ (\ )
  862. If ``true``, a right-click moves the caret at the mouse position before displaying the context menu.
  863. If ``false``, the context menu ignores mouse location.
  864. .. rst-class:: classref-item-separator
  865. ----
  866. .. _class_TextEdit_property_caret_multiple:
  867. .. rst-class:: classref-property
  868. :ref:`bool<class_bool>` **caret_multiple** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_multiple>`
  869. .. rst-class:: classref-property-setget
  870. - |void| **set_multiple_carets_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  871. - :ref:`bool<class_bool>` **is_multiple_carets_enabled**\ (\ )
  872. If ``true``, multiple carets are allowed. Left-clicking with :kbd:`Alt` adds a new caret. See :ref:`add_caret()<class_TextEdit_method_add_caret>` and :ref:`get_caret_count()<class_TextEdit_method_get_caret_count>`.
  873. .. rst-class:: classref-item-separator
  874. ----
  875. .. _class_TextEdit_property_caret_type:
  876. .. rst-class:: classref-property
  877. :ref:`CaretType<enum_TextEdit_CaretType>` **caret_type** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_property_caret_type>`
  878. .. rst-class:: classref-property-setget
  879. - |void| **set_caret_type**\ (\ value\: :ref:`CaretType<enum_TextEdit_CaretType>`\ )
  880. - :ref:`CaretType<enum_TextEdit_CaretType>` **get_caret_type**\ (\ )
  881. Set the type of caret to draw.
  882. .. rst-class:: classref-item-separator
  883. ----
  884. .. _class_TextEdit_property_context_menu_enabled:
  885. .. rst-class:: classref-property
  886. :ref:`bool<class_bool>` **context_menu_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_context_menu_enabled>`
  887. .. rst-class:: classref-property-setget
  888. - |void| **set_context_menu_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  889. - :ref:`bool<class_bool>` **is_context_menu_enabled**\ (\ )
  890. If ``true``, a right-click displays the context menu.
  891. .. rst-class:: classref-item-separator
  892. ----
  893. .. _class_TextEdit_property_custom_word_separators:
  894. .. rst-class:: classref-property
  895. :ref:`String<class_String>` **custom_word_separators** = ``""`` :ref:`๐Ÿ”—<class_TextEdit_property_custom_word_separators>`
  896. .. rst-class:: classref-property-setget
  897. - |void| **set_custom_word_separators**\ (\ value\: :ref:`String<class_String>`\ )
  898. - :ref:`String<class_String>` **get_custom_word_separators**\ (\ )
  899. The characters to consider as word delimiters if :ref:`use_custom_word_separators<class_TextEdit_property_use_custom_word_separators>` is ``true``. The characters should be defined without separation, for example ``#_!``.
  900. .. rst-class:: classref-item-separator
  901. ----
  902. .. _class_TextEdit_property_deselect_on_focus_loss_enabled:
  903. .. rst-class:: classref-property
  904. :ref:`bool<class_bool>` **deselect_on_focus_loss_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_deselect_on_focus_loss_enabled>`
  905. .. rst-class:: classref-property-setget
  906. - |void| **set_deselect_on_focus_loss_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  907. - :ref:`bool<class_bool>` **is_deselect_on_focus_loss_enabled**\ (\ )
  908. If ``true``, the selected text will be deselected when focus is lost.
  909. .. rst-class:: classref-item-separator
  910. ----
  911. .. _class_TextEdit_property_drag_and_drop_selection_enabled:
  912. .. rst-class:: classref-property
  913. :ref:`bool<class_bool>` **drag_and_drop_selection_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_drag_and_drop_selection_enabled>`
  914. .. rst-class:: classref-property-setget
  915. - |void| **set_drag_and_drop_selection_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  916. - :ref:`bool<class_bool>` **is_drag_and_drop_selection_enabled**\ (\ )
  917. If ``true``, allow drag and drop of selected text. Text can still be dropped from other sources.
  918. .. rst-class:: classref-item-separator
  919. ----
  920. .. _class_TextEdit_property_draw_control_chars:
  921. .. rst-class:: classref-property
  922. :ref:`bool<class_bool>` **draw_control_chars** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_draw_control_chars>`
  923. .. rst-class:: classref-property-setget
  924. - |void| **set_draw_control_chars**\ (\ value\: :ref:`bool<class_bool>`\ )
  925. - :ref:`bool<class_bool>` **get_draw_control_chars**\ (\ )
  926. If ``true``, control characters are displayed.
  927. .. rst-class:: classref-item-separator
  928. ----
  929. .. _class_TextEdit_property_draw_spaces:
  930. .. rst-class:: classref-property
  931. :ref:`bool<class_bool>` **draw_spaces** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_draw_spaces>`
  932. .. rst-class:: classref-property-setget
  933. - |void| **set_draw_spaces**\ (\ value\: :ref:`bool<class_bool>`\ )
  934. - :ref:`bool<class_bool>` **is_drawing_spaces**\ (\ )
  935. If ``true``, the "space" character will have a visible representation.
  936. .. rst-class:: classref-item-separator
  937. ----
  938. .. _class_TextEdit_property_draw_tabs:
  939. .. rst-class:: classref-property
  940. :ref:`bool<class_bool>` **draw_tabs** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_draw_tabs>`
  941. .. rst-class:: classref-property-setget
  942. - |void| **set_draw_tabs**\ (\ value\: :ref:`bool<class_bool>`\ )
  943. - :ref:`bool<class_bool>` **is_drawing_tabs**\ (\ )
  944. If ``true``, the "tab" character will have a visible representation.
  945. .. rst-class:: classref-item-separator
  946. ----
  947. .. _class_TextEdit_property_editable:
  948. .. rst-class:: classref-property
  949. :ref:`bool<class_bool>` **editable** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_editable>`
  950. .. rst-class:: classref-property-setget
  951. - |void| **set_editable**\ (\ value\: :ref:`bool<class_bool>`\ )
  952. - :ref:`bool<class_bool>` **is_editable**\ (\ )
  953. If ``false``, existing text cannot be modified and new text cannot be added.
  954. .. rst-class:: classref-item-separator
  955. ----
  956. .. _class_TextEdit_property_emoji_menu_enabled:
  957. .. rst-class:: classref-property
  958. :ref:`bool<class_bool>` **emoji_menu_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_emoji_menu_enabled>`
  959. .. rst-class:: classref-property-setget
  960. - |void| **set_emoji_menu_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  961. - :ref:`bool<class_bool>` **is_emoji_menu_enabled**\ (\ )
  962. If ``true``, "Emoji and Symbols" menu is enabled.
  963. .. rst-class:: classref-item-separator
  964. ----
  965. .. _class_TextEdit_property_empty_selection_clipboard_enabled:
  966. .. rst-class:: classref-property
  967. :ref:`bool<class_bool>` **empty_selection_clipboard_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_empty_selection_clipboard_enabled>`
  968. .. rst-class:: classref-property-setget
  969. - |void| **set_empty_selection_clipboard_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  970. - :ref:`bool<class_bool>` **is_empty_selection_clipboard_enabled**\ (\ )
  971. If ``true``, copying or cutting without a selection is performed on all lines with a caret. Otherwise, copy and cut require a selection.
  972. .. rst-class:: classref-item-separator
  973. ----
  974. .. _class_TextEdit_property_highlight_all_occurrences:
  975. .. rst-class:: classref-property
  976. :ref:`bool<class_bool>` **highlight_all_occurrences** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_highlight_all_occurrences>`
  977. .. rst-class:: classref-property-setget
  978. - |void| **set_highlight_all_occurrences**\ (\ value\: :ref:`bool<class_bool>`\ )
  979. - :ref:`bool<class_bool>` **is_highlight_all_occurrences_enabled**\ (\ )
  980. If ``true``, all occurrences of the selected text will be highlighted.
  981. .. rst-class:: classref-item-separator
  982. ----
  983. .. _class_TextEdit_property_highlight_current_line:
  984. .. rst-class:: classref-property
  985. :ref:`bool<class_bool>` **highlight_current_line** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_highlight_current_line>`
  986. .. rst-class:: classref-property-setget
  987. - |void| **set_highlight_current_line**\ (\ value\: :ref:`bool<class_bool>`\ )
  988. - :ref:`bool<class_bool>` **is_highlight_current_line_enabled**\ (\ )
  989. If ``true``, the line containing the cursor is highlighted.
  990. .. rst-class:: classref-item-separator
  991. ----
  992. .. _class_TextEdit_property_indent_wrapped_lines:
  993. .. rst-class:: classref-property
  994. :ref:`bool<class_bool>` **indent_wrapped_lines** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_indent_wrapped_lines>`
  995. .. rst-class:: classref-property-setget
  996. - |void| **set_indent_wrapped_lines**\ (\ value\: :ref:`bool<class_bool>`\ )
  997. - :ref:`bool<class_bool>` **is_indent_wrapped_lines**\ (\ )
  998. If ``true``, all wrapped lines are indented to the same amount as the unwrapped line.
  999. .. rst-class:: classref-item-separator
  1000. ----
  1001. .. _class_TextEdit_property_language:
  1002. .. rst-class:: classref-property
  1003. :ref:`String<class_String>` **language** = ``""`` :ref:`๐Ÿ”—<class_TextEdit_property_language>`
  1004. .. rst-class:: classref-property-setget
  1005. - |void| **set_language**\ (\ value\: :ref:`String<class_String>`\ )
  1006. - :ref:`String<class_String>` **get_language**\ (\ )
  1007. Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
  1008. .. rst-class:: classref-item-separator
  1009. ----
  1010. .. _class_TextEdit_property_middle_mouse_paste_enabled:
  1011. .. rst-class:: classref-property
  1012. :ref:`bool<class_bool>` **middle_mouse_paste_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_middle_mouse_paste_enabled>`
  1013. .. rst-class:: classref-property-setget
  1014. - |void| **set_middle_mouse_paste_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1015. - :ref:`bool<class_bool>` **is_middle_mouse_paste_enabled**\ (\ )
  1016. If ``false``, using middle mouse button to paste clipboard will be disabled.
  1017. \ **Note:** This method is only implemented on Linux.
  1018. .. rst-class:: classref-item-separator
  1019. ----
  1020. .. _class_TextEdit_property_minimap_draw:
  1021. .. rst-class:: classref-property
  1022. :ref:`bool<class_bool>` **minimap_draw** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_minimap_draw>`
  1023. .. rst-class:: classref-property-setget
  1024. - |void| **set_draw_minimap**\ (\ value\: :ref:`bool<class_bool>`\ )
  1025. - :ref:`bool<class_bool>` **is_drawing_minimap**\ (\ )
  1026. If ``true``, a minimap is shown, providing an outline of your source code. The minimap uses a fixed-width text size.
  1027. .. rst-class:: classref-item-separator
  1028. ----
  1029. .. _class_TextEdit_property_minimap_width:
  1030. .. rst-class:: classref-property
  1031. :ref:`int<class_int>` **minimap_width** = ``80`` :ref:`๐Ÿ”—<class_TextEdit_property_minimap_width>`
  1032. .. rst-class:: classref-property-setget
  1033. - |void| **set_minimap_width**\ (\ value\: :ref:`int<class_int>`\ )
  1034. - :ref:`int<class_int>` **get_minimap_width**\ (\ )
  1035. The width, in pixels, of the minimap.
  1036. .. rst-class:: classref-item-separator
  1037. ----
  1038. .. _class_TextEdit_property_placeholder_text:
  1039. .. rst-class:: classref-property
  1040. :ref:`String<class_String>` **placeholder_text** = ``""`` :ref:`๐Ÿ”—<class_TextEdit_property_placeholder_text>`
  1041. .. rst-class:: classref-property-setget
  1042. - |void| **set_placeholder**\ (\ value\: :ref:`String<class_String>`\ )
  1043. - :ref:`String<class_String>` **get_placeholder**\ (\ )
  1044. Text shown when the **TextEdit** is empty. It is **not** the **TextEdit**'s default value (see :ref:`text<class_TextEdit_property_text>`).
  1045. .. rst-class:: classref-item-separator
  1046. ----
  1047. .. _class_TextEdit_property_scroll_fit_content_height:
  1048. .. rst-class:: classref-property
  1049. :ref:`bool<class_bool>` **scroll_fit_content_height** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_fit_content_height>`
  1050. .. rst-class:: classref-property-setget
  1051. - |void| **set_fit_content_height_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1052. - :ref:`bool<class_bool>` **is_fit_content_height_enabled**\ (\ )
  1053. If ``true``, **TextEdit** will disable vertical scroll and fit minimum height to the number of visible lines. When both this property and :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` are ``true``, no scrollbars will be displayed.
  1054. .. rst-class:: classref-item-separator
  1055. ----
  1056. .. _class_TextEdit_property_scroll_fit_content_width:
  1057. .. rst-class:: classref-property
  1058. :ref:`bool<class_bool>` **scroll_fit_content_width** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_fit_content_width>`
  1059. .. rst-class:: classref-property-setget
  1060. - |void| **set_fit_content_width_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1061. - :ref:`bool<class_bool>` **is_fit_content_width_enabled**\ (\ )
  1062. If ``true``, **TextEdit** will disable horizontal scroll and fit minimum width to the widest line in the text. When both this property and :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` are ``true``, no scrollbars will be displayed.
  1063. .. rst-class:: classref-item-separator
  1064. ----
  1065. .. _class_TextEdit_property_scroll_horizontal:
  1066. .. rst-class:: classref-property
  1067. :ref:`int<class_int>` **scroll_horizontal** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_horizontal>`
  1068. .. rst-class:: classref-property-setget
  1069. - |void| **set_h_scroll**\ (\ value\: :ref:`int<class_int>`\ )
  1070. - :ref:`int<class_int>` **get_h_scroll**\ (\ )
  1071. If there is a horizontal scrollbar, this determines the current horizontal scroll value in pixels.
  1072. .. rst-class:: classref-item-separator
  1073. ----
  1074. .. _class_TextEdit_property_scroll_past_end_of_file:
  1075. .. rst-class:: classref-property
  1076. :ref:`bool<class_bool>` **scroll_past_end_of_file** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_past_end_of_file>`
  1077. .. rst-class:: classref-property-setget
  1078. - |void| **set_scroll_past_end_of_file_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1079. - :ref:`bool<class_bool>` **is_scroll_past_end_of_file_enabled**\ (\ )
  1080. Allow scrolling past the last line into "virtual" space.
  1081. .. rst-class:: classref-item-separator
  1082. ----
  1083. .. _class_TextEdit_property_scroll_smooth:
  1084. .. rst-class:: classref-property
  1085. :ref:`bool<class_bool>` **scroll_smooth** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_smooth>`
  1086. .. rst-class:: classref-property-setget
  1087. - |void| **set_smooth_scroll_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1088. - :ref:`bool<class_bool>` **is_smooth_scroll_enabled**\ (\ )
  1089. Scroll smoothly over the text rather than jumping to the next location.
  1090. .. rst-class:: classref-item-separator
  1091. ----
  1092. .. _class_TextEdit_property_scroll_v_scroll_speed:
  1093. .. rst-class:: classref-property
  1094. :ref:`float<class_float>` **scroll_v_scroll_speed** = ``80.0`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_v_scroll_speed>`
  1095. .. rst-class:: classref-property-setget
  1096. - |void| **set_v_scroll_speed**\ (\ value\: :ref:`float<class_float>`\ )
  1097. - :ref:`float<class_float>` **get_v_scroll_speed**\ (\ )
  1098. Sets the scroll speed with the minimap or when :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` is enabled.
  1099. .. rst-class:: classref-item-separator
  1100. ----
  1101. .. _class_TextEdit_property_scroll_vertical:
  1102. .. rst-class:: classref-property
  1103. :ref:`float<class_float>` **scroll_vertical** = ``0.0`` :ref:`๐Ÿ”—<class_TextEdit_property_scroll_vertical>`
  1104. .. rst-class:: classref-property-setget
  1105. - |void| **set_v_scroll**\ (\ value\: :ref:`float<class_float>`\ )
  1106. - :ref:`float<class_float>` **get_v_scroll**\ (\ )
  1107. If there is a vertical scrollbar, this determines the current vertical scroll value in line numbers, starting at 0 for the top line.
  1108. .. rst-class:: classref-item-separator
  1109. ----
  1110. .. _class_TextEdit_property_selecting_enabled:
  1111. .. rst-class:: classref-property
  1112. :ref:`bool<class_bool>` **selecting_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_selecting_enabled>`
  1113. .. rst-class:: classref-property-setget
  1114. - |void| **set_selecting_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1115. - :ref:`bool<class_bool>` **is_selecting_enabled**\ (\ )
  1116. If ``true``, text can be selected.
  1117. 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.
  1118. .. rst-class:: classref-item-separator
  1119. ----
  1120. .. _class_TextEdit_property_shortcut_keys_enabled:
  1121. .. rst-class:: classref-property
  1122. :ref:`bool<class_bool>` **shortcut_keys_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_shortcut_keys_enabled>`
  1123. .. rst-class:: classref-property-setget
  1124. - |void| **set_shortcut_keys_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1125. - :ref:`bool<class_bool>` **is_shortcut_keys_enabled**\ (\ )
  1126. If ``true``, shortcut keys for context menu items are enabled, even if the context menu is disabled.
  1127. .. rst-class:: classref-item-separator
  1128. ----
  1129. .. _class_TextEdit_property_structured_text_bidi_override:
  1130. .. rst-class:: classref-property
  1131. :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_property_structured_text_bidi_override>`
  1132. .. rst-class:: classref-property-setget
  1133. - |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>`\ )
  1134. - :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override**\ (\ )
  1135. Set BiDi algorithm override for the structured text.
  1136. .. rst-class:: classref-item-separator
  1137. ----
  1138. .. _class_TextEdit_property_structured_text_bidi_override_options:
  1139. .. rst-class:: classref-property
  1140. :ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]`` :ref:`๐Ÿ”—<class_TextEdit_property_structured_text_bidi_override_options>`
  1141. .. rst-class:: classref-property-setget
  1142. - |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array<class_Array>`\ )
  1143. - :ref:`Array<class_Array>` **get_structured_text_bidi_override_options**\ (\ )
  1144. Set additional options for BiDi override.
  1145. .. rst-class:: classref-item-separator
  1146. ----
  1147. .. _class_TextEdit_property_syntax_highlighter:
  1148. .. rst-class:: classref-property
  1149. :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **syntax_highlighter** :ref:`๐Ÿ”—<class_TextEdit_property_syntax_highlighter>`
  1150. .. rst-class:: classref-property-setget
  1151. - |void| **set_syntax_highlighter**\ (\ value\: :ref:`SyntaxHighlighter<class_SyntaxHighlighter>`\ )
  1152. - :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **get_syntax_highlighter**\ (\ )
  1153. The syntax highlighter to use.
  1154. \ **Note:** A :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` instance should not be used across multiple **TextEdit** nodes.
  1155. .. rst-class:: classref-item-separator
  1156. ----
  1157. .. _class_TextEdit_property_tab_input_mode:
  1158. .. rst-class:: classref-property
  1159. :ref:`bool<class_bool>` **tab_input_mode** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_tab_input_mode>`
  1160. .. rst-class:: classref-property-setget
  1161. - |void| **set_tab_input_mode**\ (\ value\: :ref:`bool<class_bool>`\ )
  1162. - :ref:`bool<class_bool>` **get_tab_input_mode**\ (\ )
  1163. If ``true``, :ref:`ProjectSettings.input/ui_text_indent<class_ProjectSettings_property_input/ui_text_indent>` input ``Tab`` character, otherwise it moves keyboard focus to the next :ref:`Control<class_Control>` in the scene.
  1164. .. rst-class:: classref-item-separator
  1165. ----
  1166. .. _class_TextEdit_property_text:
  1167. .. rst-class:: classref-property
  1168. :ref:`String<class_String>` **text** = ``""`` :ref:`๐Ÿ”—<class_TextEdit_property_text>`
  1169. .. rst-class:: classref-property-setget
  1170. - |void| **set_text**\ (\ value\: :ref:`String<class_String>`\ )
  1171. - :ref:`String<class_String>` **get_text**\ (\ )
  1172. String value of the **TextEdit**.
  1173. .. rst-class:: classref-item-separator
  1174. ----
  1175. .. _class_TextEdit_property_text_direction:
  1176. .. rst-class:: classref-property
  1177. :ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_property_text_direction>`
  1178. .. rst-class:: classref-property-setget
  1179. - |void| **set_text_direction**\ (\ value\: :ref:`TextDirection<enum_Control_TextDirection>`\ )
  1180. - :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction**\ (\ )
  1181. Base text writing direction.
  1182. .. rst-class:: classref-item-separator
  1183. ----
  1184. .. _class_TextEdit_property_use_custom_word_separators:
  1185. .. rst-class:: classref-property
  1186. :ref:`bool<class_bool>` **use_custom_word_separators** = ``false`` :ref:`๐Ÿ”—<class_TextEdit_property_use_custom_word_separators>`
  1187. .. rst-class:: classref-property-setget
  1188. - |void| **set_use_custom_word_separators**\ (\ value\: :ref:`bool<class_bool>`\ )
  1189. - :ref:`bool<class_bool>` **is_custom_word_separators_enabled**\ (\ )
  1190. If ``false``, using :kbd:`Ctrl + Left` or :kbd:`Ctrl + Right` (:kbd:`Cmd + Left` or :kbd:`Cmd + Right` on macOS) bindings will use the behavior of :ref:`use_default_word_separators<class_TextEdit_property_use_default_word_separators>`. If ``true``, it will also stop the caret if a character within :ref:`custom_word_separators<class_TextEdit_property_custom_word_separators>` is detected. Useful for subword moving. This behavior also will be applied to the behavior of text selection.
  1191. .. rst-class:: classref-item-separator
  1192. ----
  1193. .. _class_TextEdit_property_use_default_word_separators:
  1194. .. rst-class:: classref-property
  1195. :ref:`bool<class_bool>` **use_default_word_separators** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_use_default_word_separators>`
  1196. .. rst-class:: classref-property-setget
  1197. - |void| **set_use_default_word_separators**\ (\ value\: :ref:`bool<class_bool>`\ )
  1198. - :ref:`bool<class_bool>` **is_default_word_separators_enabled**\ (\ )
  1199. If ``false``, using :kbd:`Ctrl + Left` or :kbd:`Ctrl + Right` (:kbd:`Cmd + Left` or :kbd:`Cmd + Right` on macOS) bindings will stop moving caret only if a space or punctuation is detected. If ``true``, it will also stop the caret if a character is part of ``!"#$%&'()*+,-./:;<=>?@[\]^`{|}~``, the Unicode General Punctuation table, or the Unicode CJK Punctuation table. Useful for subword moving. This behavior also will be applied to the behavior of text selection.
  1200. .. rst-class:: classref-item-separator
  1201. ----
  1202. .. _class_TextEdit_property_virtual_keyboard_enabled:
  1203. .. rst-class:: classref-property
  1204. :ref:`bool<class_bool>` **virtual_keyboard_enabled** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_virtual_keyboard_enabled>`
  1205. .. rst-class:: classref-property-setget
  1206. - |void| **set_virtual_keyboard_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1207. - :ref:`bool<class_bool>` **is_virtual_keyboard_enabled**\ (\ )
  1208. If ``true``, the native virtual keyboard is enabled on platforms that support it.
  1209. .. rst-class:: classref-item-separator
  1210. ----
  1211. .. _class_TextEdit_property_virtual_keyboard_show_on_focus:
  1212. .. rst-class:: classref-property
  1213. :ref:`bool<class_bool>` **virtual_keyboard_show_on_focus** = ``true`` :ref:`๐Ÿ”—<class_TextEdit_property_virtual_keyboard_show_on_focus>`
  1214. .. rst-class:: classref-property-setget
  1215. - |void| **set_virtual_keyboard_show_on_focus**\ (\ value\: :ref:`bool<class_bool>`\ )
  1216. - :ref:`bool<class_bool>` **get_virtual_keyboard_show_on_focus**\ (\ )
  1217. If ``true``, the native virtual keyboard is shown on focus events on platforms that support it.
  1218. .. rst-class:: classref-item-separator
  1219. ----
  1220. .. _class_TextEdit_property_wrap_mode:
  1221. .. rst-class:: classref-property
  1222. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **wrap_mode** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_property_wrap_mode>`
  1223. .. rst-class:: classref-property-setget
  1224. - |void| **set_line_wrapping_mode**\ (\ value\: :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>`\ )
  1225. - :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **get_line_wrapping_mode**\ (\ )
  1226. Sets the line wrapping mode to use.
  1227. .. rst-class:: classref-section-separator
  1228. ----
  1229. .. rst-class:: classref-descriptions-group
  1230. Method Descriptions
  1231. -------------------
  1232. .. _class_TextEdit_private_method__backspace:
  1233. .. rst-class:: classref-method
  1234. |void| **_backspace**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__backspace>`
  1235. Override this method to define what happens when the user presses the backspace key.
  1236. .. rst-class:: classref-item-separator
  1237. ----
  1238. .. _class_TextEdit_private_method__copy:
  1239. .. rst-class:: classref-method
  1240. |void| **_copy**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__copy>`
  1241. Override this method to define what happens when the user performs a copy operation.
  1242. .. rst-class:: classref-item-separator
  1243. ----
  1244. .. _class_TextEdit_private_method__cut:
  1245. .. rst-class:: classref-method
  1246. |void| **_cut**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__cut>`
  1247. Override this method to define what happens when the user performs a cut operation.
  1248. .. rst-class:: classref-item-separator
  1249. ----
  1250. .. _class_TextEdit_private_method__handle_unicode_input:
  1251. .. rst-class:: classref-method
  1252. |void| **_handle_unicode_input**\ (\ unicode_char\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__handle_unicode_input>`
  1253. Override this method to define what happens when the user types in the provided key ``unicode_char``.
  1254. .. rst-class:: classref-item-separator
  1255. ----
  1256. .. _class_TextEdit_private_method__paste:
  1257. .. rst-class:: classref-method
  1258. |void| **_paste**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__paste>`
  1259. Override this method to define what happens when the user performs a paste operation.
  1260. .. rst-class:: classref-item-separator
  1261. ----
  1262. .. _class_TextEdit_private_method__paste_primary_clipboard:
  1263. .. rst-class:: classref-method
  1264. |void| **_paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| :ref:`๐Ÿ”—<class_TextEdit_private_method__paste_primary_clipboard>`
  1265. Override this method to define what happens when the user performs a paste operation with middle mouse button.
  1266. \ **Note:** This method is only implemented on Linux.
  1267. .. rst-class:: classref-item-separator
  1268. ----
  1269. .. _class_TextEdit_method_add_caret:
  1270. .. rst-class:: classref-method
  1271. :ref:`int<class_int>` **add_caret**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_add_caret>`
  1272. Adds a new caret at the given location. Returns the index of the new caret, or ``-1`` if the location is invalid.
  1273. .. rst-class:: classref-item-separator
  1274. ----
  1275. .. _class_TextEdit_method_add_caret_at_carets:
  1276. .. rst-class:: classref-method
  1277. |void| **add_caret_at_carets**\ (\ below\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_add_caret_at_carets>`
  1278. Adds an additional caret above or below every caret. If ``below`` is ``true`` the new caret will be added below and above otherwise.
  1279. .. rst-class:: classref-item-separator
  1280. ----
  1281. .. _class_TextEdit_method_add_gutter:
  1282. .. rst-class:: classref-method
  1283. |void| **add_gutter**\ (\ at\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_add_gutter>`
  1284. 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.
  1285. .. rst-class:: classref-item-separator
  1286. ----
  1287. .. _class_TextEdit_method_add_selection_for_next_occurrence:
  1288. .. rst-class:: classref-method
  1289. |void| **add_selection_for_next_occurrence**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_add_selection_for_next_occurrence>`
  1290. Adds a selection and a caret for the next occurrence of the current selection. If there is no active selection, selects word under caret.
  1291. .. rst-class:: classref-item-separator
  1292. ----
  1293. .. _class_TextEdit_method_adjust_carets_after_edit:
  1294. .. rst-class:: classref-method
  1295. |void| **adjust_carets_after_edit**\ (\ 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\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_adjust_carets_after_edit>`
  1296. **Deprecated:** No longer necessary since methods now adjust carets themselves.
  1297. This method does nothing.
  1298. .. rst-class:: classref-item-separator
  1299. ----
  1300. .. _class_TextEdit_method_adjust_viewport_to_caret:
  1301. .. rst-class:: classref-method
  1302. |void| **adjust_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_adjust_viewport_to_caret>`
  1303. Adjust the viewport so the caret is visible.
  1304. .. rst-class:: classref-item-separator
  1305. ----
  1306. .. _class_TextEdit_method_apply_ime:
  1307. .. rst-class:: classref-method
  1308. |void| **apply_ime**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_apply_ime>`
  1309. Applies text from the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME) to each caret and closes the IME if it is open.
  1310. .. rst-class:: classref-item-separator
  1311. ----
  1312. .. _class_TextEdit_method_backspace:
  1313. .. rst-class:: classref-method
  1314. |void| **backspace**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_backspace>`
  1315. Called when the user presses the backspace key. Can be overridden with :ref:`_backspace()<class_TextEdit_private_method__backspace>`.
  1316. .. rst-class:: classref-item-separator
  1317. ----
  1318. .. _class_TextEdit_method_begin_complex_operation:
  1319. .. rst-class:: classref-method
  1320. |void| **begin_complex_operation**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_begin_complex_operation>`
  1321. 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.
  1322. .. rst-class:: classref-item-separator
  1323. ----
  1324. .. _class_TextEdit_method_begin_multicaret_edit:
  1325. .. rst-class:: classref-method
  1326. |void| **begin_multicaret_edit**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_begin_multicaret_edit>`
  1327. Starts an edit for multiple carets. The edit must be ended with :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`. Multicaret edits can be used to edit text at multiple carets and delay merging the carets until the end, so the caret indexes aren't affected immediately. :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` can be nested, and the merge will happen at the last :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`.
  1328. ::
  1329. begin_complex_operation()
  1330. begin_multicaret_edit()
  1331. for i in range(get_caret_count()):
  1332. if multicaret_edit_ignore_caret(i):
  1333. continue
  1334. # Logic here.
  1335. end_multicaret_edit()
  1336. end_complex_operation()
  1337. .. rst-class:: classref-item-separator
  1338. ----
  1339. .. _class_TextEdit_method_cancel_ime:
  1340. .. rst-class:: classref-method
  1341. |void| **cancel_ime**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_cancel_ime>`
  1342. Closes the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME) if it is open. Any text in the IME will be lost.
  1343. .. rst-class:: classref-item-separator
  1344. ----
  1345. .. _class_TextEdit_method_center_viewport_to_caret:
  1346. .. rst-class:: classref-method
  1347. |void| **center_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_center_viewport_to_caret>`
  1348. 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``.
  1349. .. rst-class:: classref-item-separator
  1350. ----
  1351. .. _class_TextEdit_method_clear:
  1352. .. rst-class:: classref-method
  1353. |void| **clear**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_clear>`
  1354. Performs a full reset of **TextEdit**, including undo history.
  1355. .. rst-class:: classref-item-separator
  1356. ----
  1357. .. _class_TextEdit_method_clear_undo_history:
  1358. .. rst-class:: classref-method
  1359. |void| **clear_undo_history**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_clear_undo_history>`
  1360. Clears the undo history.
  1361. .. rst-class:: classref-item-separator
  1362. ----
  1363. .. _class_TextEdit_method_collapse_carets:
  1364. .. rst-class:: classref-method
  1365. |void| **collapse_carets**\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`, inclusive\: :ref:`bool<class_bool>` = false\ ) :ref:`๐Ÿ”—<class_TextEdit_method_collapse_carets>`
  1366. Collapse all carets in the given range to the ``from_line`` and ``from_column`` position.
  1367. \ ``inclusive`` applies to both ends.
  1368. If :ref:`is_in_mulitcaret_edit()<class_TextEdit_method_is_in_mulitcaret_edit>` is ``true``, carets that are collapsed will be ``true`` for :ref:`multicaret_edit_ignore_caret()<class_TextEdit_method_multicaret_edit_ignore_caret>`.
  1369. \ :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>` will be called if any carets were collapsed.
  1370. .. rst-class:: classref-item-separator
  1371. ----
  1372. .. _class_TextEdit_method_copy:
  1373. .. rst-class:: classref-method
  1374. |void| **copy**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_copy>`
  1375. Copies the current text selection. Can be overridden with :ref:`_copy()<class_TextEdit_private_method__copy>`.
  1376. .. rst-class:: classref-item-separator
  1377. ----
  1378. .. _class_TextEdit_method_cut:
  1379. .. rst-class:: classref-method
  1380. |void| **cut**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_cut>`
  1381. Cut's the current selection. Can be overridden with :ref:`_cut()<class_TextEdit_private_method__cut>`.
  1382. .. rst-class:: classref-item-separator
  1383. ----
  1384. .. _class_TextEdit_method_delete_selection:
  1385. .. rst-class:: classref-method
  1386. |void| **delete_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_delete_selection>`
  1387. Deletes the selected text.
  1388. .. rst-class:: classref-item-separator
  1389. ----
  1390. .. _class_TextEdit_method_deselect:
  1391. .. rst-class:: classref-method
  1392. |void| **deselect**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_deselect>`
  1393. Deselects the current selection.
  1394. .. rst-class:: classref-item-separator
  1395. ----
  1396. .. _class_TextEdit_method_end_action:
  1397. .. rst-class:: classref-method
  1398. |void| **end_action**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_end_action>`
  1399. Marks the end of steps in the current action started with :ref:`start_action()<class_TextEdit_method_start_action>`.
  1400. .. rst-class:: classref-item-separator
  1401. ----
  1402. .. _class_TextEdit_method_end_complex_operation:
  1403. .. rst-class:: classref-method
  1404. |void| **end_complex_operation**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_end_complex_operation>`
  1405. 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.
  1406. .. rst-class:: classref-item-separator
  1407. ----
  1408. .. _class_TextEdit_method_end_multicaret_edit:
  1409. .. rst-class:: classref-method
  1410. |void| **end_multicaret_edit**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_end_multicaret_edit>`
  1411. Ends an edit for multiple carets, that was started with :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>`. If this was the last :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` and :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>` was called, carets will be merged.
  1412. .. rst-class:: classref-item-separator
  1413. ----
  1414. .. _class_TextEdit_method_get_caret_column:
  1415. .. rst-class:: classref-method
  1416. :ref:`int<class_int>` **get_caret_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_column>`
  1417. Returns the column the editing caret is at.
  1418. .. rst-class:: classref-item-separator
  1419. ----
  1420. .. _class_TextEdit_method_get_caret_count:
  1421. .. rst-class:: classref-method
  1422. :ref:`int<class_int>` **get_caret_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_count>`
  1423. Returns the number of carets in this **TextEdit**.
  1424. .. rst-class:: classref-item-separator
  1425. ----
  1426. .. _class_TextEdit_method_get_caret_draw_pos:
  1427. .. rst-class:: classref-method
  1428. :ref:`Vector2<class_Vector2>` **get_caret_draw_pos**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_draw_pos>`
  1429. Returns the caret pixel draw position.
  1430. .. rst-class:: classref-item-separator
  1431. ----
  1432. .. _class_TextEdit_method_get_caret_index_edit_order:
  1433. .. rst-class:: classref-method
  1434. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_caret_index_edit_order**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_index_edit_order>`
  1435. **Deprecated:** Carets no longer need to be edited in any specific order. If the carets need to be sorted, use :ref:`get_sorted_carets()<class_TextEdit_method_get_sorted_carets>` instead.
  1436. 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.
  1437. .. rst-class:: classref-item-separator
  1438. ----
  1439. .. _class_TextEdit_method_get_caret_line:
  1440. .. rst-class:: classref-method
  1441. :ref:`int<class_int>` **get_caret_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_line>`
  1442. Returns the line the editing caret is on.
  1443. .. rst-class:: classref-item-separator
  1444. ----
  1445. .. _class_TextEdit_method_get_caret_wrap_index:
  1446. .. rst-class:: classref-method
  1447. :ref:`int<class_int>` **get_caret_wrap_index**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_caret_wrap_index>`
  1448. Returns the wrap index the editing caret is on.
  1449. .. rst-class:: classref-item-separator
  1450. ----
  1451. .. _class_TextEdit_method_get_first_non_whitespace_column:
  1452. .. rst-class:: classref-method
  1453. :ref:`int<class_int>` **get_first_non_whitespace_column**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_first_non_whitespace_column>`
  1454. Returns the first column containing a non-whitespace character on the given line. If there is only whitespace, returns the number of characters.
  1455. .. rst-class:: classref-item-separator
  1456. ----
  1457. .. _class_TextEdit_method_get_first_visible_line:
  1458. .. rst-class:: classref-method
  1459. :ref:`int<class_int>` **get_first_visible_line**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_first_visible_line>`
  1460. Returns the first visible line.
  1461. .. rst-class:: classref-item-separator
  1462. ----
  1463. .. _class_TextEdit_method_get_gutter_count:
  1464. .. rst-class:: classref-method
  1465. :ref:`int<class_int>` **get_gutter_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_gutter_count>`
  1466. Returns the number of gutters registered.
  1467. .. rst-class:: classref-item-separator
  1468. ----
  1469. .. _class_TextEdit_method_get_gutter_name:
  1470. .. rst-class:: classref-method
  1471. :ref:`String<class_String>` **get_gutter_name**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_gutter_name>`
  1472. Returns the name of the gutter at the given index.
  1473. .. rst-class:: classref-item-separator
  1474. ----
  1475. .. _class_TextEdit_method_get_gutter_type:
  1476. .. rst-class:: classref-method
  1477. :ref:`GutterType<enum_TextEdit_GutterType>` **get_gutter_type**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_gutter_type>`
  1478. Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals.
  1479. .. rst-class:: classref-item-separator
  1480. ----
  1481. .. _class_TextEdit_method_get_gutter_width:
  1482. .. rst-class:: classref-method
  1483. :ref:`int<class_int>` **get_gutter_width**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_gutter_width>`
  1484. Returns the width of the gutter at the given index.
  1485. .. rst-class:: classref-item-separator
  1486. ----
  1487. .. _class_TextEdit_method_get_h_scroll_bar:
  1488. .. rst-class:: classref-method
  1489. :ref:`HScrollBar<class_HScrollBar>` **get_h_scroll_bar**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_h_scroll_bar>`
  1490. Returns the :ref:`HScrollBar<class_HScrollBar>` used by **TextEdit**.
  1491. .. rst-class:: classref-item-separator
  1492. ----
  1493. .. _class_TextEdit_method_get_indent_level:
  1494. .. rst-class:: classref-method
  1495. :ref:`int<class_int>` **get_indent_level**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_indent_level>`
  1496. Returns the indent level of the given line. This is the number of spaces and tabs at the beginning of the line, with the tabs taking the tab size into account (see :ref:`get_tab_size()<class_TextEdit_method_get_tab_size>`).
  1497. .. rst-class:: classref-item-separator
  1498. ----
  1499. .. _class_TextEdit_method_get_last_full_visible_line:
  1500. .. rst-class:: classref-method
  1501. :ref:`int<class_int>` **get_last_full_visible_line**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_last_full_visible_line>`
  1502. 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.
  1503. .. rst-class:: classref-item-separator
  1504. ----
  1505. .. _class_TextEdit_method_get_last_full_visible_line_wrap_index:
  1506. .. rst-class:: classref-method
  1507. :ref:`int<class_int>` **get_last_full_visible_line_wrap_index**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_last_full_visible_line_wrap_index>`
  1508. Returns the last visible wrap index of the last visible line.
  1509. .. rst-class:: classref-item-separator
  1510. ----
  1511. .. _class_TextEdit_method_get_last_unhidden_line:
  1512. .. rst-class:: classref-method
  1513. :ref:`int<class_int>` **get_last_unhidden_line**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_last_unhidden_line>`
  1514. Returns the last unhidden line in the entire **TextEdit**.
  1515. .. rst-class:: classref-item-separator
  1516. ----
  1517. .. _class_TextEdit_method_get_line:
  1518. .. rst-class:: classref-method
  1519. :ref:`String<class_String>` **get_line**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line>`
  1520. Returns the text of a specific line.
  1521. .. rst-class:: classref-item-separator
  1522. ----
  1523. .. _class_TextEdit_method_get_line_background_color:
  1524. .. rst-class:: classref-method
  1525. :ref:`Color<class_Color>` **get_line_background_color**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_background_color>`
  1526. Returns the custom background color of the given line. If no color is set, returns ``Color(0, 0, 0, 0)``.
  1527. .. rst-class:: classref-item-separator
  1528. ----
  1529. .. _class_TextEdit_method_get_line_column_at_pos:
  1530. .. rst-class:: classref-method
  1531. :ref:`Vector2i<class_Vector2i>` **get_line_column_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`, clamp_line\: :ref:`bool<class_bool>` = true, clamp_column\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_column_at_pos>`
  1532. Returns the line and column at the given position. In the returned vector, ``x`` is the column and ``y`` is the line.
  1533. If ``clamp_line`` is ``false`` and ``position`` is below the last line, ``Vector2i(-1, -1)`` is returned.
  1534. If ``clamp_column`` is ``false`` and ``position`` is outside the column range of the line, ``Vector2i(-1, -1)`` is returned.
  1535. .. rst-class:: classref-item-separator
  1536. ----
  1537. .. _class_TextEdit_method_get_line_count:
  1538. .. rst-class:: classref-method
  1539. :ref:`int<class_int>` **get_line_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_count>`
  1540. Returns the number of lines in the text.
  1541. .. rst-class:: classref-item-separator
  1542. ----
  1543. .. _class_TextEdit_method_get_line_gutter_icon:
  1544. .. rst-class:: classref-method
  1545. :ref:`Texture2D<class_Texture2D>` **get_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_gutter_icon>`
  1546. Returns the icon currently in ``gutter`` at ``line``. This only works when the gutter type is :ref:`GUTTER_TYPE_ICON<class_TextEdit_constant_GUTTER_TYPE_ICON>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
  1547. .. rst-class:: classref-item-separator
  1548. ----
  1549. .. _class_TextEdit_method_get_line_gutter_item_color:
  1550. .. rst-class:: classref-method
  1551. :ref:`Color<class_Color>` **get_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_gutter_item_color>`
  1552. Returns the color currently in ``gutter`` at ``line``.
  1553. .. rst-class:: classref-item-separator
  1554. ----
  1555. .. _class_TextEdit_method_get_line_gutter_metadata:
  1556. .. rst-class:: classref-method
  1557. :ref:`Variant<class_Variant>` **get_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_gutter_metadata>`
  1558. Returns the metadata currently in ``gutter`` at ``line``.
  1559. .. rst-class:: classref-item-separator
  1560. ----
  1561. .. _class_TextEdit_method_get_line_gutter_text:
  1562. .. rst-class:: classref-method
  1563. :ref:`String<class_String>` **get_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_gutter_text>`
  1564. Returns the text currently in ``gutter`` at ``line``. This only works when the gutter type is :ref:`GUTTER_TYPE_STRING<class_TextEdit_constant_GUTTER_TYPE_STRING>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
  1565. .. rst-class:: classref-item-separator
  1566. ----
  1567. .. _class_TextEdit_method_get_line_height:
  1568. .. rst-class:: classref-method
  1569. :ref:`int<class_int>` **get_line_height**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_height>`
  1570. Returns the maximum value of the line height among all lines.
  1571. \ **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``.
  1572. .. rst-class:: classref-item-separator
  1573. ----
  1574. .. _class_TextEdit_method_get_line_ranges_from_carets:
  1575. .. rst-class:: classref-method
  1576. :ref:`Array<class_Array>`\[:ref:`Vector2i<class_Vector2i>`\] **get_line_ranges_from_carets**\ (\ only_selections\: :ref:`bool<class_bool>` = false, merge_adjacent\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_ranges_from_carets>`
  1577. Returns an :ref:`Array<class_Array>` of line ranges where ``x`` is the first line and ``y`` is the last line. All lines within these ranges will have a caret on them or be part of a selection. Each line will only be part of one line range, even if it has multiple carets on it.
  1578. If a selection's end column (:ref:`get_selection_to_column()<class_TextEdit_method_get_selection_to_column>`) is at column ``0``, that line will not be included. If a selection begins on the line after another selection ends and ``merge_adjacent`` is ``true``, or they begin and end on the same line, one line range will include both selections.
  1579. .. rst-class:: classref-item-separator
  1580. ----
  1581. .. _class_TextEdit_method_get_line_width:
  1582. .. rst-class:: classref-method
  1583. :ref:`int<class_int>` **get_line_width**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_width>`
  1584. Returns the width in pixels of the ``wrap_index`` on ``line``.
  1585. .. rst-class:: classref-item-separator
  1586. ----
  1587. .. _class_TextEdit_method_get_line_with_ime:
  1588. .. rst-class:: classref-method
  1589. :ref:`String<class_String>` **get_line_with_ime**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_with_ime>`
  1590. Returns line text as it is currently displayed, including IME composition string.
  1591. .. rst-class:: classref-item-separator
  1592. ----
  1593. .. _class_TextEdit_method_get_line_wrap_count:
  1594. .. rst-class:: classref-method
  1595. :ref:`int<class_int>` **get_line_wrap_count**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_wrap_count>`
  1596. Returns the number of times the given line is wrapped.
  1597. .. rst-class:: classref-item-separator
  1598. ----
  1599. .. _class_TextEdit_method_get_line_wrap_index_at_column:
  1600. .. rst-class:: classref-method
  1601. :ref:`int<class_int>` **get_line_wrap_index_at_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_wrap_index_at_column>`
  1602. Returns the wrap index of the given column on the given line. This ranges from ``0`` to :ref:`get_line_wrap_count()<class_TextEdit_method_get_line_wrap_count>`.
  1603. .. rst-class:: classref-item-separator
  1604. ----
  1605. .. _class_TextEdit_method_get_line_wrapped_text:
  1606. .. rst-class:: classref-method
  1607. :ref:`PackedStringArray<class_PackedStringArray>` **get_line_wrapped_text**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_line_wrapped_text>`
  1608. Returns an array of :ref:`String<class_String>`\ s representing each wrapped index.
  1609. .. rst-class:: classref-item-separator
  1610. ----
  1611. .. _class_TextEdit_method_get_local_mouse_pos:
  1612. .. rst-class:: classref-method
  1613. :ref:`Vector2<class_Vector2>` **get_local_mouse_pos**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_local_mouse_pos>`
  1614. Returns the local mouse position adjusted for the text direction.
  1615. .. rst-class:: classref-item-separator
  1616. ----
  1617. .. _class_TextEdit_method_get_menu:
  1618. .. rst-class:: classref-method
  1619. :ref:`PopupMenu<class_PopupMenu>` **get_menu**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_menu>`
  1620. Returns the :ref:`PopupMenu<class_PopupMenu>` of this **TextEdit**. By default, this menu is displayed when right-clicking on the **TextEdit**.
  1621. 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:
  1622. .. tabs::
  1623. .. code-tab:: gdscript
  1624. func _ready():
  1625. var menu = get_menu()
  1626. # Remove all items after "Redo".
  1627. menu.item_count = menu.get_item_index(MENU_REDO) + 1
  1628. # Add custom items.
  1629. menu.add_separator()
  1630. menu.add_item("Insert Date", MENU_MAX + 1)
  1631. # Connect callback.
  1632. menu.id_pressed.connect(_on_item_pressed)
  1633. func _on_item_pressed(id):
  1634. if id == MENU_MAX + 1:
  1635. insert_text_at_caret(Time.get_date_string_from_system())
  1636. .. code-tab:: csharp
  1637. public override void _Ready()
  1638. {
  1639. var menu = GetMenu();
  1640. // Remove all items after "Redo".
  1641. menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;
  1642. // Add custom items.
  1643. menu.AddSeparator();
  1644. menu.AddItem("Insert Date", TextEdit.MenuItems.Max + 1);
  1645. // Add event handler.
  1646. menu.IdPressed += OnItemPressed;
  1647. }
  1648. public void OnItemPressed(int id)
  1649. {
  1650. if (id == TextEdit.MenuItems.Max + 1)
  1651. {
  1652. InsertTextAtCaret(Time.GetDateStringFromSystem());
  1653. }
  1654. }
  1655. \ **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.
  1656. .. rst-class:: classref-item-separator
  1657. ----
  1658. .. _class_TextEdit_method_get_minimap_line_at_pos:
  1659. .. rst-class:: classref-method
  1660. :ref:`int<class_int>` **get_minimap_line_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_minimap_line_at_pos>`
  1661. Returns the equivalent minimap line at ``position``.
  1662. .. rst-class:: classref-item-separator
  1663. ----
  1664. .. _class_TextEdit_method_get_minimap_visible_lines:
  1665. .. rst-class:: classref-method
  1666. :ref:`int<class_int>` **get_minimap_visible_lines**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_minimap_visible_lines>`
  1667. Returns the number of lines that may be drawn on the minimap.
  1668. .. rst-class:: classref-item-separator
  1669. ----
  1670. .. _class_TextEdit_method_get_next_composite_character_column:
  1671. .. rst-class:: classref-method
  1672. :ref:`int<class_int>` **get_next_composite_character_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_next_composite_character_column>`
  1673. Returns the correct column at the end of a composite character like โค๏ธโ€๐Ÿฉน (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the start of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters.
  1674. \ **Note:** To check at caret location use ``get_next_composite_character_column(get_caret_line(), get_caret_column())``
  1675. .. rst-class:: classref-item-separator
  1676. ----
  1677. .. _class_TextEdit_method_get_next_visible_line_index_offset_from:
  1678. .. rst-class:: classref-method
  1679. :ref:`Vector2i<class_Vector2i>` **get_next_visible_line_index_offset_from**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_next_visible_line_index_offset_from>`
  1680. 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.
  1681. .. rst-class:: classref-item-separator
  1682. ----
  1683. .. _class_TextEdit_method_get_next_visible_line_offset_from:
  1684. .. rst-class:: classref-method
  1685. :ref:`int<class_int>` **get_next_visible_line_offset_from**\ (\ line\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_next_visible_line_offset_from>`
  1686. 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.
  1687. .. rst-class:: classref-item-separator
  1688. ----
  1689. .. _class_TextEdit_method_get_pos_at_line_column:
  1690. .. rst-class:: classref-method
  1691. :ref:`Vector2i<class_Vector2i>` **get_pos_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_pos_at_line_column>`
  1692. 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.
  1693. \ **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.
  1694. .. rst-class:: classref-item-separator
  1695. ----
  1696. .. _class_TextEdit_method_get_previous_composite_character_column:
  1697. .. rst-class:: classref-method
  1698. :ref:`int<class_int>` **get_previous_composite_character_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_previous_composite_character_column>`
  1699. Returns the correct column at the start of a composite character like โค๏ธโ€๐Ÿฉน (mending heart; Unicode: ``U+2764 U+FE0F U+200D U+1FA79``) which is comprised of more than one Unicode code point, if the caret is at the end of the composite character. Also returns the correct column with the caret at mid grapheme and for non-composite characters.
  1700. \ **Note:** To check at caret location use ``get_previous_composite_character_column(get_caret_line(), get_caret_column())``
  1701. .. rst-class:: classref-item-separator
  1702. ----
  1703. .. _class_TextEdit_method_get_rect_at_line_column:
  1704. .. rst-class:: classref-method
  1705. :ref:`Rect2i<class_Rect2i>` **get_rect_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_rect_at_line_column>`
  1706. 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.
  1707. \ **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.
  1708. .. rst-class:: classref-item-separator
  1709. ----
  1710. .. _class_TextEdit_method_get_saved_version:
  1711. .. rst-class:: classref-method
  1712. :ref:`int<class_int>` **get_saved_version**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_saved_version>`
  1713. Returns the last tagged saved version from :ref:`tag_saved_version()<class_TextEdit_method_tag_saved_version>`.
  1714. .. rst-class:: classref-item-separator
  1715. ----
  1716. .. _class_TextEdit_method_get_scroll_pos_for_line:
  1717. .. rst-class:: classref-method
  1718. :ref:`float<class_float>` **get_scroll_pos_for_line**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_scroll_pos_for_line>`
  1719. Returns the scroll position for ``wrap_index`` of ``line``.
  1720. .. rst-class:: classref-item-separator
  1721. ----
  1722. .. _class_TextEdit_method_get_selected_text:
  1723. .. rst-class:: classref-method
  1724. :ref:`String<class_String>` **get_selected_text**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_get_selected_text>`
  1725. Returns the text inside the selection of a caret, or all the carets if ``caret_index`` is its default value ``-1``.
  1726. .. rst-class:: classref-item-separator
  1727. ----
  1728. .. _class_TextEdit_method_get_selection_at_line_column:
  1729. .. rst-class:: classref-method
  1730. :ref:`int<class_int>` **get_selection_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, include_edges\: :ref:`bool<class_bool>` = true, only_selections\: :ref:`bool<class_bool>` = true\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_at_line_column>`
  1731. Returns the caret index of the selection at the given ``line`` and ``column``, or ``-1`` if there is none.
  1732. If ``include_edges`` is ``false``, the position must be inside the selection and not at either end. If ``only_selections`` is ``false``, carets without a selection will also be considered.
  1733. .. rst-class:: classref-item-separator
  1734. ----
  1735. .. _class_TextEdit_method_get_selection_column:
  1736. .. rst-class:: classref-method
  1737. :ref:`int<class_int>` **get_selection_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_column>`
  1738. **Deprecated:** Use :ref:`get_selection_origin_column()<class_TextEdit_method_get_selection_origin_column>` instead.
  1739. Returns the original start column of the selection.
  1740. .. rst-class:: classref-item-separator
  1741. ----
  1742. .. _class_TextEdit_method_get_selection_from_column:
  1743. .. rst-class:: classref-method
  1744. :ref:`int<class_int>` **get_selection_from_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_from_column>`
  1745. Returns the selection begin column. Returns the caret column if there is no selection.
  1746. .. rst-class:: classref-item-separator
  1747. ----
  1748. .. _class_TextEdit_method_get_selection_from_line:
  1749. .. rst-class:: classref-method
  1750. :ref:`int<class_int>` **get_selection_from_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_from_line>`
  1751. Returns the selection begin line. Returns the caret line if there is no selection.
  1752. .. rst-class:: classref-item-separator
  1753. ----
  1754. .. _class_TextEdit_method_get_selection_line:
  1755. .. rst-class:: classref-method
  1756. :ref:`int<class_int>` **get_selection_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_line>`
  1757. **Deprecated:** Use :ref:`get_selection_origin_line()<class_TextEdit_method_get_selection_origin_line>` instead.
  1758. Returns the original start line of the selection.
  1759. .. rst-class:: classref-item-separator
  1760. ----
  1761. .. _class_TextEdit_method_get_selection_mode:
  1762. .. rst-class:: classref-method
  1763. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **get_selection_mode**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_mode>`
  1764. Returns the current selection mode.
  1765. .. rst-class:: classref-item-separator
  1766. ----
  1767. .. _class_TextEdit_method_get_selection_origin_column:
  1768. .. rst-class:: classref-method
  1769. :ref:`int<class_int>` **get_selection_origin_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_origin_column>`
  1770. Returns the origin column of the selection. This is the opposite end from the caret.
  1771. .. rst-class:: classref-item-separator
  1772. ----
  1773. .. _class_TextEdit_method_get_selection_origin_line:
  1774. .. rst-class:: classref-method
  1775. :ref:`int<class_int>` **get_selection_origin_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_origin_line>`
  1776. Returns the origin line of the selection. This is the opposite end from the caret.
  1777. .. rst-class:: classref-item-separator
  1778. ----
  1779. .. _class_TextEdit_method_get_selection_to_column:
  1780. .. rst-class:: classref-method
  1781. :ref:`int<class_int>` **get_selection_to_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_to_column>`
  1782. Returns the selection end column. Returns the caret column if there is no selection.
  1783. .. rst-class:: classref-item-separator
  1784. ----
  1785. .. _class_TextEdit_method_get_selection_to_line:
  1786. .. rst-class:: classref-method
  1787. :ref:`int<class_int>` **get_selection_to_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_selection_to_line>`
  1788. Returns the selection end line. Returns the caret line if there is no selection.
  1789. .. rst-class:: classref-item-separator
  1790. ----
  1791. .. _class_TextEdit_method_get_sorted_carets:
  1792. .. rst-class:: classref-method
  1793. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_sorted_carets**\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_sorted_carets>`
  1794. Returns the carets sorted by selection beginning from lowest line and column to highest (from top to bottom of text).
  1795. If ``include_ignored_carets`` is ``false``, carets from :ref:`multicaret_edit_ignore_caret()<class_TextEdit_method_multicaret_edit_ignore_caret>` will be ignored.
  1796. .. rst-class:: classref-item-separator
  1797. ----
  1798. .. _class_TextEdit_method_get_tab_size:
  1799. .. rst-class:: classref-method
  1800. :ref:`int<class_int>` **get_tab_size**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_tab_size>`
  1801. Returns the **TextEdit**'s' tab size.
  1802. .. rst-class:: classref-item-separator
  1803. ----
  1804. .. _class_TextEdit_method_get_total_gutter_width:
  1805. .. rst-class:: classref-method
  1806. :ref:`int<class_int>` **get_total_gutter_width**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_total_gutter_width>`
  1807. Returns the total width of all gutters and internal padding.
  1808. .. rst-class:: classref-item-separator
  1809. ----
  1810. .. _class_TextEdit_method_get_total_visible_line_count:
  1811. .. rst-class:: classref-method
  1812. :ref:`int<class_int>` **get_total_visible_line_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_total_visible_line_count>`
  1813. Returns the total number of lines in the text. This includes wrapped lines and excludes folded lines. If :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` is set to :ref:`LINE_WRAPPING_NONE<class_TextEdit_constant_LINE_WRAPPING_NONE>` and no lines are folded (see :ref:`CodeEdit.is_line_folded()<class_CodeEdit_method_is_line_folded>`) then this is equivalent to :ref:`get_line_count()<class_TextEdit_method_get_line_count>`. See :ref:`get_visible_line_count_in_range()<class_TextEdit_method_get_visible_line_count_in_range>` for a limited range of lines.
  1814. .. rst-class:: classref-item-separator
  1815. ----
  1816. .. _class_TextEdit_method_get_v_scroll_bar:
  1817. .. rst-class:: classref-method
  1818. :ref:`VScrollBar<class_VScrollBar>` **get_v_scroll_bar**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_v_scroll_bar>`
  1819. Returns the :ref:`VScrollBar<class_VScrollBar>` of the **TextEdit**.
  1820. .. rst-class:: classref-item-separator
  1821. ----
  1822. .. _class_TextEdit_method_get_version:
  1823. .. rst-class:: classref-method
  1824. :ref:`int<class_int>` **get_version**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_version>`
  1825. Returns the current version of the **TextEdit**. The version is a count of recorded operations by the undo/redo history.
  1826. .. rst-class:: classref-item-separator
  1827. ----
  1828. .. _class_TextEdit_method_get_visible_line_count:
  1829. .. rst-class:: classref-method
  1830. :ref:`int<class_int>` **get_visible_line_count**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_visible_line_count>`
  1831. Returns the number of lines that can visually fit, rounded down, based on this control's height.
  1832. .. rst-class:: classref-item-separator
  1833. ----
  1834. .. _class_TextEdit_method_get_visible_line_count_in_range:
  1835. .. rst-class:: classref-method
  1836. :ref:`int<class_int>` **get_visible_line_count_in_range**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_visible_line_count_in_range>`
  1837. Returns the total number of lines between ``from_line`` and ``to_line`` (inclusive) in the text. This includes wrapped lines and excludes folded lines. If the range covers all lines it is equivalent to :ref:`get_total_visible_line_count()<class_TextEdit_method_get_total_visible_line_count>`.
  1838. .. rst-class:: classref-item-separator
  1839. ----
  1840. .. _class_TextEdit_method_get_word_at_pos:
  1841. .. rst-class:: classref-method
  1842. :ref:`String<class_String>` **get_word_at_pos**\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_word_at_pos>`
  1843. Returns the word at ``position``.
  1844. .. rst-class:: classref-item-separator
  1845. ----
  1846. .. _class_TextEdit_method_get_word_under_caret:
  1847. .. rst-class:: classref-method
  1848. :ref:`String<class_String>` **get_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_get_word_under_caret>`
  1849. Returns a :ref:`String<class_String>` text with the word under the caret's location.
  1850. .. rst-class:: classref-item-separator
  1851. ----
  1852. .. _class_TextEdit_method_has_ime_text:
  1853. .. rst-class:: classref-method
  1854. :ref:`bool<class_bool>` **has_ime_text**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_has_ime_text>`
  1855. Returns ``true`` if the user has text in the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME).
  1856. .. rst-class:: classref-item-separator
  1857. ----
  1858. .. _class_TextEdit_method_has_redo:
  1859. .. rst-class:: classref-method
  1860. :ref:`bool<class_bool>` **has_redo**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_has_redo>`
  1861. Returns ``true`` if a "redo" action is available.
  1862. .. rst-class:: classref-item-separator
  1863. ----
  1864. .. _class_TextEdit_method_has_selection:
  1865. .. rst-class:: classref-method
  1866. :ref:`bool<class_bool>` **has_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_has_selection>`
  1867. Returns ``true`` if the user has selected text.
  1868. .. rst-class:: classref-item-separator
  1869. ----
  1870. .. _class_TextEdit_method_has_undo:
  1871. .. rst-class:: classref-method
  1872. :ref:`bool<class_bool>` **has_undo**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_has_undo>`
  1873. Returns ``true`` if an "undo" action is available.
  1874. .. rst-class:: classref-item-separator
  1875. ----
  1876. .. _class_TextEdit_method_insert_line_at:
  1877. .. rst-class:: classref-method
  1878. |void| **insert_line_at**\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_insert_line_at>`
  1879. Inserts a new line with ``text`` at ``line``.
  1880. .. rst-class:: classref-item-separator
  1881. ----
  1882. .. _class_TextEdit_method_insert_text:
  1883. .. rst-class:: classref-method
  1884. |void| **insert_text**\ (\ text\: :ref:`String<class_String>`, line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`, before_selection_begin\: :ref:`bool<class_bool>` = true, before_selection_end\: :ref:`bool<class_bool>` = false\ ) :ref:`๐Ÿ”—<class_TextEdit_method_insert_text>`
  1885. Inserts the ``text`` at ``line`` and ``column``.
  1886. If ``before_selection_begin`` is ``true``, carets and selections that begin at ``line`` and ``column`` will moved to the end of the inserted text, along with all carets after it.
  1887. If ``before_selection_end`` is ``true``, selections that end at ``line`` and ``column`` will be extended to the end of the inserted text. These parameters can be used to insert text inside of or outside of selections.
  1888. .. rst-class:: classref-item-separator
  1889. ----
  1890. .. _class_TextEdit_method_insert_text_at_caret:
  1891. .. rst-class:: classref-method
  1892. |void| **insert_text_at_caret**\ (\ text\: :ref:`String<class_String>`, caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_insert_text_at_caret>`
  1893. Insert the specified text at the caret position.
  1894. .. rst-class:: classref-item-separator
  1895. ----
  1896. .. _class_TextEdit_method_is_caret_after_selection_origin:
  1897. .. rst-class:: classref-method
  1898. :ref:`bool<class_bool>` **is_caret_after_selection_origin**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_caret_after_selection_origin>`
  1899. Returns ``true`` if the caret of the selection is after the selection origin. This can be used to determine the direction of the selection.
  1900. .. rst-class:: classref-item-separator
  1901. ----
  1902. .. _class_TextEdit_method_is_caret_visible:
  1903. .. rst-class:: classref-method
  1904. :ref:`bool<class_bool>` **is_caret_visible**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_caret_visible>`
  1905. Returns ``true`` if the caret is visible, ``false`` otherwise. A caret will be considered hidden if it is outside the scrollable area when scrolling is enabled.
  1906. \ **Note:** :ref:`is_caret_visible()<class_TextEdit_method_is_caret_visible>` does not account for a caret being off-screen if it is still within the scrollable area. It will return ``true`` even if the caret is off-screen as long as it meets **TextEdit**'s own conditions for being visible. This includes uses of :ref:`scroll_fit_content_width<class_TextEdit_property_scroll_fit_content_width>` and :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` that cause the **TextEdit** to expand beyond the viewport's bounds.
  1907. .. rst-class:: classref-item-separator
  1908. ----
  1909. .. _class_TextEdit_method_is_dragging_cursor:
  1910. .. rst-class:: classref-method
  1911. :ref:`bool<class_bool>` **is_dragging_cursor**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_dragging_cursor>`
  1912. Returns ``true`` if the user is dragging their mouse for scrolling, selecting, or text dragging.
  1913. .. rst-class:: classref-item-separator
  1914. ----
  1915. .. _class_TextEdit_method_is_gutter_clickable:
  1916. .. rst-class:: classref-method
  1917. :ref:`bool<class_bool>` **is_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_gutter_clickable>`
  1918. Returns ``true`` if the gutter at the given index is clickable. See :ref:`set_gutter_clickable()<class_TextEdit_method_set_gutter_clickable>`.
  1919. .. rst-class:: classref-item-separator
  1920. ----
  1921. .. _class_TextEdit_method_is_gutter_drawn:
  1922. .. rst-class:: classref-method
  1923. :ref:`bool<class_bool>` **is_gutter_drawn**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_gutter_drawn>`
  1924. Returns ``true`` if the gutter at the given index is currently drawn. See :ref:`set_gutter_draw()<class_TextEdit_method_set_gutter_draw>`.
  1925. .. rst-class:: classref-item-separator
  1926. ----
  1927. .. _class_TextEdit_method_is_gutter_overwritable:
  1928. .. rst-class:: classref-method
  1929. :ref:`bool<class_bool>` **is_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_gutter_overwritable>`
  1930. Returns ``true`` if the gutter at the given index is overwritable. See :ref:`set_gutter_overwritable()<class_TextEdit_method_set_gutter_overwritable>`.
  1931. .. rst-class:: classref-item-separator
  1932. ----
  1933. .. _class_TextEdit_method_is_in_mulitcaret_edit:
  1934. .. rst-class:: classref-method
  1935. :ref:`bool<class_bool>` **is_in_mulitcaret_edit**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_in_mulitcaret_edit>`
  1936. Returns ``true`` if a :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` has been called and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>` has not yet been called.
  1937. .. rst-class:: classref-item-separator
  1938. ----
  1939. .. _class_TextEdit_method_is_line_gutter_clickable:
  1940. .. rst-class:: classref-method
  1941. :ref:`bool<class_bool>` **is_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_line_gutter_clickable>`
  1942. Returns ``true`` if the gutter at the given index on the given line is clickable. See :ref:`set_line_gutter_clickable()<class_TextEdit_method_set_line_gutter_clickable>`.
  1943. .. rst-class:: classref-item-separator
  1944. ----
  1945. .. _class_TextEdit_method_is_line_wrapped:
  1946. .. rst-class:: classref-method
  1947. :ref:`bool<class_bool>` **is_line_wrapped**\ (\ line\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_line_wrapped>`
  1948. Returns if the given line is wrapped.
  1949. .. rst-class:: classref-item-separator
  1950. ----
  1951. .. _class_TextEdit_method_is_menu_visible:
  1952. .. rst-class:: classref-method
  1953. :ref:`bool<class_bool>` **is_menu_visible**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_menu_visible>`
  1954. Returns ``true`` if the menu is visible. Use this instead of ``get_menu().visible`` to improve performance (so the creation of the menu is avoided). See :ref:`get_menu()<class_TextEdit_method_get_menu>`.
  1955. .. rst-class:: classref-item-separator
  1956. ----
  1957. .. _class_TextEdit_method_is_mouse_over_selection:
  1958. .. rst-class:: classref-method
  1959. :ref:`bool<class_bool>` **is_mouse_over_selection**\ (\ edges\: :ref:`bool<class_bool>`, caret_index\: :ref:`int<class_int>` = -1\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_mouse_over_selection>`
  1960. Returns ``true`` if the mouse is over a selection. If ``edges`` is ``true``, the edges are considered part of the selection.
  1961. .. rst-class:: classref-item-separator
  1962. ----
  1963. .. _class_TextEdit_method_is_overtype_mode_enabled:
  1964. .. rst-class:: classref-method
  1965. :ref:`bool<class_bool>` **is_overtype_mode_enabled**\ (\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_is_overtype_mode_enabled>`
  1966. Returns ``true`` if overtype mode is enabled. See :ref:`set_overtype_mode_enabled()<class_TextEdit_method_set_overtype_mode_enabled>`.
  1967. .. rst-class:: classref-item-separator
  1968. ----
  1969. .. _class_TextEdit_method_menu_option:
  1970. .. rst-class:: classref-method
  1971. |void| **menu_option**\ (\ option\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_menu_option>`
  1972. Executes a given action as defined in the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  1973. .. rst-class:: classref-item-separator
  1974. ----
  1975. .. _class_TextEdit_method_merge_gutters:
  1976. .. rst-class:: classref-method
  1977. |void| **merge_gutters**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_merge_gutters>`
  1978. Merge the gutters from ``from_line`` into ``to_line``. Only overwritable gutters will be copied. See :ref:`set_gutter_overwritable()<class_TextEdit_method_set_gutter_overwritable>`.
  1979. .. rst-class:: classref-item-separator
  1980. ----
  1981. .. _class_TextEdit_method_merge_overlapping_carets:
  1982. .. rst-class:: classref-method
  1983. |void| **merge_overlapping_carets**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_merge_overlapping_carets>`
  1984. Merges any overlapping carets. Will favor the newest caret, or the caret with a selection.
  1985. If :ref:`is_in_mulitcaret_edit()<class_TextEdit_method_is_in_mulitcaret_edit>` is ``true``, the merge will be queued to happen at the end of the multicaret edit. See :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`.
  1986. \ **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.
  1987. .. rst-class:: classref-item-separator
  1988. ----
  1989. .. _class_TextEdit_method_multicaret_edit_ignore_caret:
  1990. .. rst-class:: classref-method
  1991. :ref:`bool<class_bool>` **multicaret_edit_ignore_caret**\ (\ caret_index\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_multicaret_edit_ignore_caret>`
  1992. Returns ``true`` if the given ``caret_index`` should be ignored as part of a multicaret edit. See :ref:`begin_multicaret_edit()<class_TextEdit_method_begin_multicaret_edit>` and :ref:`end_multicaret_edit()<class_TextEdit_method_end_multicaret_edit>`. Carets that should be ignored are ones that were part of removed text and will likely be merged at the end of the edit, or carets that were added during the edit.
  1993. It is recommended to ``continue`` within a loop iterating on multiple carets if a caret should be ignored.
  1994. .. rst-class:: classref-item-separator
  1995. ----
  1996. .. _class_TextEdit_method_paste:
  1997. .. rst-class:: classref-method
  1998. |void| **paste**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_paste>`
  1999. Paste at the current location. Can be overridden with :ref:`_paste()<class_TextEdit_private_method__paste>`.
  2000. .. rst-class:: classref-item-separator
  2001. ----
  2002. .. _class_TextEdit_method_paste_primary_clipboard:
  2003. .. rst-class:: classref-method
  2004. |void| **paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_paste_primary_clipboard>`
  2005. Pastes the primary clipboard.
  2006. .. rst-class:: classref-item-separator
  2007. ----
  2008. .. _class_TextEdit_method_redo:
  2009. .. rst-class:: classref-method
  2010. |void| **redo**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_redo>`
  2011. Perform redo operation.
  2012. .. rst-class:: classref-item-separator
  2013. ----
  2014. .. _class_TextEdit_method_remove_caret:
  2015. .. rst-class:: classref-method
  2016. |void| **remove_caret**\ (\ caret\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_remove_caret>`
  2017. Removes the given caret index.
  2018. \ **Note:** This can result in adjustment of all other caret indices.
  2019. .. rst-class:: classref-item-separator
  2020. ----
  2021. .. _class_TextEdit_method_remove_gutter:
  2022. .. rst-class:: classref-method
  2023. |void| **remove_gutter**\ (\ gutter\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_remove_gutter>`
  2024. Removes the gutter at the given index.
  2025. .. rst-class:: classref-item-separator
  2026. ----
  2027. .. _class_TextEdit_method_remove_line_at:
  2028. .. rst-class:: classref-method
  2029. |void| **remove_line_at**\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ ) :ref:`๐Ÿ”—<class_TextEdit_method_remove_line_at>`
  2030. Removes the line of text at ``line``. Carets on this line will attempt to match their previous visual x position.
  2031. If ``move_carets_down`` is ``true`` carets will move to the next line down, otherwise carets will move up.
  2032. .. rst-class:: classref-item-separator
  2033. ----
  2034. .. _class_TextEdit_method_remove_secondary_carets:
  2035. .. rst-class:: classref-method
  2036. |void| **remove_secondary_carets**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_remove_secondary_carets>`
  2037. Removes all additional carets.
  2038. .. rst-class:: classref-item-separator
  2039. ----
  2040. .. _class_TextEdit_method_remove_text:
  2041. .. rst-class:: classref-method
  2042. |void| **remove_text**\ (\ from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`, to_column\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_remove_text>`
  2043. Removes text between the given positions.
  2044. .. rst-class:: classref-item-separator
  2045. ----
  2046. .. _class_TextEdit_method_search:
  2047. .. rst-class:: classref-method
  2048. :ref:`Vector2i<class_Vector2i>` **search**\ (\ text\: :ref:`String<class_String>`, flags\: :ref:`int<class_int>`, from_line\: :ref:`int<class_int>`, from_column\: :ref:`int<class_int>`\ ) |const| :ref:`๐Ÿ”—<class_TextEdit_method_search>`
  2049. Perform a search inside the text. Search flags can be specified in the :ref:`SearchFlags<enum_TextEdit_SearchFlags>` enum.
  2050. In the returned vector, ``x`` is the column, ``y`` is the line. If no results are found, both are equal to ``-1``.
  2051. .. tabs::
  2052. .. code-tab:: gdscript
  2053. var result = search("print", SEARCH_WHOLE_WORDS, 0, 0)
  2054. if result.x != -1:
  2055. # Result found.
  2056. var line_number = result.y
  2057. var column_number = result.x
  2058. .. code-tab:: csharp
  2059. Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0);
  2060. if (result.X != -1)
  2061. {
  2062. // Result found.
  2063. int lineNumber = result.Y;
  2064. int columnNumber = result.X;
  2065. }
  2066. .. rst-class:: classref-item-separator
  2067. ----
  2068. .. _class_TextEdit_method_select:
  2069. .. rst-class:: classref-method
  2070. |void| **select**\ (\ origin_line\: :ref:`int<class_int>`, origin_column\: :ref:`int<class_int>`, caret_line\: :ref:`int<class_int>`, caret_column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_select>`
  2071. Selects text from ``origin_line`` and ``origin_column`` to ``caret_line`` and ``caret_column`` for the given ``caret_index``. This moves the selection origin and the caret. If the positions are the same, the selection will be deselected.
  2072. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  2073. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`.
  2074. .. rst-class:: classref-item-separator
  2075. ----
  2076. .. _class_TextEdit_method_select_all:
  2077. .. rst-class:: classref-method
  2078. |void| **select_all**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_select_all>`
  2079. Select all the text.
  2080. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  2081. .. rst-class:: classref-item-separator
  2082. ----
  2083. .. _class_TextEdit_method_select_word_under_caret:
  2084. .. rst-class:: classref-method
  2085. |void| **select_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) :ref:`๐Ÿ”—<class_TextEdit_method_select_word_under_caret>`
  2086. Selects the word under the caret.
  2087. .. rst-class:: classref-item-separator
  2088. ----
  2089. .. _class_TextEdit_method_set_caret_column:
  2090. .. rst-class:: classref-method
  2091. |void| **set_caret_column**\ (\ column\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_caret_column>`
  2092. Moves the caret to the specified ``column`` index.
  2093. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  2094. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`.
  2095. .. rst-class:: classref-item-separator
  2096. ----
  2097. .. _class_TextEdit_method_set_caret_line:
  2098. .. rst-class:: classref-method
  2099. |void| **set_caret_line**\ (\ line\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = 0, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_caret_line>`
  2100. Moves the caret to the specified ``line`` index. The caret column will be moved to the same visual position it was at the last time :ref:`set_caret_column()<class_TextEdit_method_set_caret_column>` was called, or clamped to the end of the line.
  2101. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  2102. If ``can_be_hidden`` is ``true``, the specified ``line`` can be hidden.
  2103. If ``wrap_index`` is ``-1``, the caret column will be clamped to the ``line``'s length. If ``wrap_index`` is greater than ``-1``, the column will be moved to attempt to match the visual x position on the line's ``wrap_index`` to the position from the last time :ref:`set_caret_column()<class_TextEdit_method_set_caret_column>` was called.
  2104. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets()<class_TextEdit_method_merge_overlapping_carets>`.
  2105. .. rst-class:: classref-item-separator
  2106. ----
  2107. .. _class_TextEdit_method_set_gutter_clickable:
  2108. .. rst-class:: classref-method
  2109. |void| **set_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_clickable>`
  2110. If ``true``, the mouse cursor will change to a pointing hand (:ref:`Control.CURSOR_POINTING_HAND<class_Control_constant_CURSOR_POINTING_HAND>`) when hovering over the gutter at the given index. See :ref:`is_gutter_clickable()<class_TextEdit_method_is_gutter_clickable>` and :ref:`set_line_gutter_clickable()<class_TextEdit_method_set_line_gutter_clickable>`.
  2111. .. rst-class:: classref-item-separator
  2112. ----
  2113. .. _class_TextEdit_method_set_gutter_custom_draw:
  2114. .. rst-class:: classref-method
  2115. |void| **set_gutter_custom_draw**\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_custom_draw>`
  2116. Set a custom draw callback for the gutter at the given index. ``draw_callback`` must take the following arguments: A line index :ref:`int<class_int>`, a gutter index :ref:`int<class_int>`, and an area :ref:`Rect2<class_Rect2>`. This callback only works when the gutter type is :ref:`GUTTER_TYPE_CUSTOM<class_TextEdit_constant_GUTTER_TYPE_CUSTOM>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
  2117. .. rst-class:: classref-item-separator
  2118. ----
  2119. .. _class_TextEdit_method_set_gutter_draw:
  2120. .. rst-class:: classref-method
  2121. |void| **set_gutter_draw**\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_draw>`
  2122. If ``true``, the gutter at the given index is drawn. The gutter type (:ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`) determines how it is drawn. See :ref:`is_gutter_drawn()<class_TextEdit_method_is_gutter_drawn>`.
  2123. .. rst-class:: classref-item-separator
  2124. ----
  2125. .. _class_TextEdit_method_set_gutter_name:
  2126. .. rst-class:: classref-method
  2127. |void| **set_gutter_name**\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_name>`
  2128. Sets the name of the gutter at the given index.
  2129. .. rst-class:: classref-item-separator
  2130. ----
  2131. .. _class_TextEdit_method_set_gutter_overwritable:
  2132. .. rst-class:: classref-method
  2133. |void| **set_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_overwritable>`
  2134. If ``true``, the line data of the gutter at the given index can be overridden when using :ref:`merge_gutters()<class_TextEdit_method_merge_gutters>`. See :ref:`is_gutter_overwritable()<class_TextEdit_method_is_gutter_overwritable>`.
  2135. .. rst-class:: classref-item-separator
  2136. ----
  2137. .. _class_TextEdit_method_set_gutter_type:
  2138. .. rst-class:: classref-method
  2139. |void| **set_gutter_type**\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_type>`
  2140. Sets the type of gutter at the given index. Gutters can contain icons, text, or custom visuals.
  2141. .. rst-class:: classref-item-separator
  2142. ----
  2143. .. _class_TextEdit_method_set_gutter_width:
  2144. .. rst-class:: classref-method
  2145. |void| **set_gutter_width**\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_gutter_width>`
  2146. Set the width of the gutter at the given index.
  2147. .. rst-class:: classref-item-separator
  2148. ----
  2149. .. _class_TextEdit_method_set_line:
  2150. .. rst-class:: classref-method
  2151. |void| **set_line**\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line>`
  2152. Sets the text for a specific ``line``.
  2153. Carets on the line will attempt to keep their visual x position.
  2154. .. rst-class:: classref-item-separator
  2155. ----
  2156. .. _class_TextEdit_method_set_line_as_center_visible:
  2157. .. rst-class:: classref-method
  2158. |void| **set_line_as_center_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_as_center_visible>`
  2159. Positions the ``wrap_index`` of ``line`` at the center of the viewport.
  2160. .. rst-class:: classref-item-separator
  2161. ----
  2162. .. _class_TextEdit_method_set_line_as_first_visible:
  2163. .. rst-class:: classref-method
  2164. |void| **set_line_as_first_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_as_first_visible>`
  2165. Positions the ``wrap_index`` of ``line`` at the top of the viewport.
  2166. .. rst-class:: classref-item-separator
  2167. ----
  2168. .. _class_TextEdit_method_set_line_as_last_visible:
  2169. .. rst-class:: classref-method
  2170. |void| **set_line_as_last_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_as_last_visible>`
  2171. Positions the ``wrap_index`` of ``line`` at the bottom of the viewport.
  2172. .. rst-class:: classref-item-separator
  2173. ----
  2174. .. _class_TextEdit_method_set_line_background_color:
  2175. .. rst-class:: classref-method
  2176. |void| **set_line_background_color**\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_background_color>`
  2177. Sets the custom background color of the given line. If transparent, this color is applied on top of the default background color (See :ref:`background_color<class_TextEdit_theme_color_background_color>`). If set to ``Color(0, 0, 0, 0)``, no additional color is applied.
  2178. .. rst-class:: classref-item-separator
  2179. ----
  2180. .. _class_TextEdit_method_set_line_gutter_clickable:
  2181. .. rst-class:: classref-method
  2182. |void| **set_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_gutter_clickable>`
  2183. If ``clickable`` is ``true``, makes the ``gutter`` on the given ``line`` clickable. This is like :ref:`set_gutter_clickable()<class_TextEdit_method_set_gutter_clickable>`, but for a single line. If :ref:`is_gutter_clickable()<class_TextEdit_method_is_gutter_clickable>` is ``true``, this will not have any effect. See :ref:`is_line_gutter_clickable()<class_TextEdit_method_is_line_gutter_clickable>` and :ref:`gutter_clicked<class_TextEdit_signal_gutter_clicked>`.
  2184. .. rst-class:: classref-item-separator
  2185. ----
  2186. .. _class_TextEdit_method_set_line_gutter_icon:
  2187. .. rst-class:: classref-method
  2188. |void| **set_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_gutter_icon>`
  2189. Sets the icon for ``gutter`` on ``line`` to ``icon``. This only works when the gutter type is :ref:`GUTTER_TYPE_ICON<class_TextEdit_constant_GUTTER_TYPE_ICON>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
  2190. .. rst-class:: classref-item-separator
  2191. ----
  2192. .. _class_TextEdit_method_set_line_gutter_item_color:
  2193. .. rst-class:: classref-method
  2194. |void| **set_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_gutter_item_color>`
  2195. Sets the color for ``gutter`` on ``line`` to ``color``.
  2196. .. rst-class:: classref-item-separator
  2197. ----
  2198. .. _class_TextEdit_method_set_line_gutter_metadata:
  2199. .. rst-class:: classref-method
  2200. |void| **set_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, metadata\: :ref:`Variant<class_Variant>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_gutter_metadata>`
  2201. Sets the metadata for ``gutter`` on ``line`` to ``metadata``.
  2202. .. rst-class:: classref-item-separator
  2203. ----
  2204. .. _class_TextEdit_method_set_line_gutter_text:
  2205. .. rst-class:: classref-method
  2206. |void| **set_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_line_gutter_text>`
  2207. Sets the text for ``gutter`` on ``line`` to ``text``. This only works when the gutter type is :ref:`GUTTER_TYPE_STRING<class_TextEdit_constant_GUTTER_TYPE_STRING>` (see :ref:`set_gutter_type()<class_TextEdit_method_set_gutter_type>`).
  2208. .. rst-class:: classref-item-separator
  2209. ----
  2210. .. _class_TextEdit_method_set_overtype_mode_enabled:
  2211. .. rst-class:: classref-method
  2212. |void| **set_overtype_mode_enabled**\ (\ enabled\: :ref:`bool<class_bool>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_overtype_mode_enabled>`
  2213. If ``true``, enables overtype mode. In this mode, typing overrides existing text instead of inserting text. The :ref:`ProjectSettings.input/ui_text_toggle_insert_mode<class_ProjectSettings_property_input/ui_text_toggle_insert_mode>` action toggles overtype mode. See :ref:`is_overtype_mode_enabled()<class_TextEdit_method_is_overtype_mode_enabled>`.
  2214. .. rst-class:: classref-item-separator
  2215. ----
  2216. .. _class_TextEdit_method_set_search_flags:
  2217. .. rst-class:: classref-method
  2218. |void| **set_search_flags**\ (\ flags\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_search_flags>`
  2219. 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.
  2220. .. rst-class:: classref-item-separator
  2221. ----
  2222. .. _class_TextEdit_method_set_search_text:
  2223. .. rst-class:: classref-method
  2224. |void| **set_search_text**\ (\ search_text\: :ref:`String<class_String>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_search_text>`
  2225. Sets the search text. See :ref:`set_search_flags()<class_TextEdit_method_set_search_flags>`.
  2226. .. rst-class:: classref-item-separator
  2227. ----
  2228. .. _class_TextEdit_method_set_selection_mode:
  2229. .. rst-class:: classref-method
  2230. |void| **set_selection_mode**\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_selection_mode>`
  2231. Sets the current selection mode.
  2232. .. rst-class:: classref-item-separator
  2233. ----
  2234. .. _class_TextEdit_method_set_selection_origin_column:
  2235. .. rst-class:: classref-method
  2236. |void| **set_selection_origin_column**\ (\ column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_selection_origin_column>`
  2237. Sets the selection origin column to the ``column`` for the given ``caret_index``. If the selection origin is moved to the caret position, the selection will deselect.
  2238. .. rst-class:: classref-item-separator
  2239. ----
  2240. .. _class_TextEdit_method_set_selection_origin_line:
  2241. .. rst-class:: classref-method
  2242. |void| **set_selection_origin_line**\ (\ line\: :ref:`int<class_int>`, can_be_hidden\: :ref:`bool<class_bool>` = true, wrap_index\: :ref:`int<class_int>` = -1, caret_index\: :ref:`int<class_int>` = 0\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_selection_origin_line>`
  2243. Sets the selection origin line to the ``line`` for the given ``caret_index``. If the selection origin is moved to the caret position, the selection will deselect.
  2244. If ``can_be_hidden`` is ``false``, The line will be set to the nearest unhidden line below or above.
  2245. If ``wrap_index`` is ``-1``, the selection origin column will be clamped to the ``line``'s length. If ``wrap_index`` is greater than ``-1``, the column will be moved to attempt to match the visual x position on the line's ``wrap_index`` to the position from the last time :ref:`set_selection_origin_column()<class_TextEdit_method_set_selection_origin_column>` or :ref:`select()<class_TextEdit_method_select>` was called.
  2246. .. rst-class:: classref-item-separator
  2247. ----
  2248. .. _class_TextEdit_method_set_tab_size:
  2249. .. rst-class:: classref-method
  2250. |void| **set_tab_size**\ (\ size\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_tab_size>`
  2251. Sets the tab size for the **TextEdit** to use.
  2252. .. rst-class:: classref-item-separator
  2253. ----
  2254. .. _class_TextEdit_method_set_tooltip_request_func:
  2255. .. rst-class:: classref-method
  2256. |void| **set_tooltip_request_func**\ (\ callback\: :ref:`Callable<class_Callable>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_set_tooltip_request_func>`
  2257. Provide custom tooltip text. The callback method must take the following args: ``hovered_word: String``.
  2258. .. rst-class:: classref-item-separator
  2259. ----
  2260. .. _class_TextEdit_method_skip_selection_for_next_occurrence:
  2261. .. rst-class:: classref-method
  2262. |void| **skip_selection_for_next_occurrence**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_skip_selection_for_next_occurrence>`
  2263. Moves a selection and a caret for the next occurrence of the current selection. If there is no active selection, moves to the next occurrence of the word under caret.
  2264. .. rst-class:: classref-item-separator
  2265. ----
  2266. .. _class_TextEdit_method_start_action:
  2267. .. rst-class:: classref-method
  2268. |void| **start_action**\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_start_action>`
  2269. Starts an action, will end the current action if ``action`` is different.
  2270. 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.
  2271. .. rst-class:: classref-item-separator
  2272. ----
  2273. .. _class_TextEdit_method_swap_lines:
  2274. .. rst-class:: classref-method
  2275. |void| **swap_lines**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) :ref:`๐Ÿ”—<class_TextEdit_method_swap_lines>`
  2276. Swaps the two lines. Carets will be swapped with the lines.
  2277. .. rst-class:: classref-item-separator
  2278. ----
  2279. .. _class_TextEdit_method_tag_saved_version:
  2280. .. rst-class:: classref-method
  2281. |void| **tag_saved_version**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_tag_saved_version>`
  2282. Tag the current version as saved.
  2283. .. rst-class:: classref-item-separator
  2284. ----
  2285. .. _class_TextEdit_method_undo:
  2286. .. rst-class:: classref-method
  2287. |void| **undo**\ (\ ) :ref:`๐Ÿ”—<class_TextEdit_method_undo>`
  2288. Perform undo operation.
  2289. .. rst-class:: classref-section-separator
  2290. ----
  2291. .. rst-class:: classref-descriptions-group
  2292. Theme Property Descriptions
  2293. ---------------------------
  2294. .. _class_TextEdit_theme_color_background_color:
  2295. .. rst-class:: classref-themeproperty
  2296. :ref:`Color<class_Color>` **background_color** = ``Color(0, 0, 0, 0)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_background_color>`
  2297. Sets the background :ref:`Color<class_Color>` of this **TextEdit**.
  2298. .. rst-class:: classref-item-separator
  2299. ----
  2300. .. _class_TextEdit_theme_color_caret_background_color:
  2301. .. rst-class:: classref-themeproperty
  2302. :ref:`Color<class_Color>` **caret_background_color** = ``Color(0, 0, 0, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_caret_background_color>`
  2303. :ref:`Color<class_Color>` of the text behind the caret when using a block caret.
  2304. .. rst-class:: classref-item-separator
  2305. ----
  2306. .. _class_TextEdit_theme_color_caret_color:
  2307. .. rst-class:: classref-themeproperty
  2308. :ref:`Color<class_Color>` **caret_color** = ``Color(0.875, 0.875, 0.875, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_caret_color>`
  2309. :ref:`Color<class_Color>` of the caret. This can be set to a fully transparent color to hide the caret entirely.
  2310. .. rst-class:: classref-item-separator
  2311. ----
  2312. .. _class_TextEdit_theme_color_current_line_color:
  2313. .. rst-class:: classref-themeproperty
  2314. :ref:`Color<class_Color>` **current_line_color** = ``Color(0.25, 0.25, 0.26, 0.8)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_current_line_color>`
  2315. Background :ref:`Color<class_Color>` of the line containing the caret.
  2316. .. rst-class:: classref-item-separator
  2317. ----
  2318. .. _class_TextEdit_theme_color_font_color:
  2319. .. rst-class:: classref-themeproperty
  2320. :ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_font_color>`
  2321. Sets the font :ref:`Color<class_Color>`.
  2322. .. rst-class:: classref-item-separator
  2323. ----
  2324. .. _class_TextEdit_theme_color_font_outline_color:
  2325. .. rst-class:: classref-themeproperty
  2326. :ref:`Color<class_Color>` **font_outline_color** = ``Color(0, 0, 0, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_font_outline_color>`
  2327. The tint of text outline of the **TextEdit**.
  2328. .. rst-class:: classref-item-separator
  2329. ----
  2330. .. _class_TextEdit_theme_color_font_placeholder_color:
  2331. .. rst-class:: classref-themeproperty
  2332. :ref:`Color<class_Color>` **font_placeholder_color** = ``Color(0.875, 0.875, 0.875, 0.6)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_font_placeholder_color>`
  2333. Font color for :ref:`placeholder_text<class_TextEdit_property_placeholder_text>`.
  2334. .. rst-class:: classref-item-separator
  2335. ----
  2336. .. _class_TextEdit_theme_color_font_readonly_color:
  2337. .. rst-class:: classref-themeproperty
  2338. :ref:`Color<class_Color>` **font_readonly_color** = ``Color(0.875, 0.875, 0.875, 0.5)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_font_readonly_color>`
  2339. Sets the font :ref:`Color<class_Color>` when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2340. .. rst-class:: classref-item-separator
  2341. ----
  2342. .. _class_TextEdit_theme_color_font_selected_color:
  2343. .. rst-class:: classref-themeproperty
  2344. :ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_font_selected_color>`
  2345. Sets the :ref:`Color<class_Color>` of the selected text. If equal to ``Color(0, 0, 0, 0)``, it will be ignored.
  2346. .. rst-class:: classref-item-separator
  2347. ----
  2348. .. _class_TextEdit_theme_color_search_result_border_color:
  2349. .. rst-class:: classref-themeproperty
  2350. :ref:`Color<class_Color>` **search_result_border_color** = ``Color(0.3, 0.3, 0.3, 0.4)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_search_result_border_color>`
  2351. :ref:`Color<class_Color>` of the border around text that matches the search query.
  2352. .. rst-class:: classref-item-separator
  2353. ----
  2354. .. _class_TextEdit_theme_color_search_result_color:
  2355. .. rst-class:: classref-themeproperty
  2356. :ref:`Color<class_Color>` **search_result_color** = ``Color(0.3, 0.3, 0.3, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_search_result_color>`
  2357. :ref:`Color<class_Color>` behind the text that matches the search query.
  2358. .. rst-class:: classref-item-separator
  2359. ----
  2360. .. _class_TextEdit_theme_color_selection_color:
  2361. .. rst-class:: classref-themeproperty
  2362. :ref:`Color<class_Color>` **selection_color** = ``Color(0.5, 0.5, 0.5, 1)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_selection_color>`
  2363. Sets the highlight :ref:`Color<class_Color>` of text selections.
  2364. .. rst-class:: classref-item-separator
  2365. ----
  2366. .. _class_TextEdit_theme_color_word_highlighted_color:
  2367. .. rst-class:: classref-themeproperty
  2368. :ref:`Color<class_Color>` **word_highlighted_color** = ``Color(0.5, 0.5, 0.5, 0.25)`` :ref:`๐Ÿ”—<class_TextEdit_theme_color_word_highlighted_color>`
  2369. Sets the highlight :ref:`Color<class_Color>` of multiple occurrences. :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` has to be enabled.
  2370. .. rst-class:: classref-item-separator
  2371. ----
  2372. .. _class_TextEdit_theme_constant_caret_width:
  2373. .. rst-class:: classref-themeproperty
  2374. :ref:`int<class_int>` **caret_width** = ``1`` :ref:`๐Ÿ”—<class_TextEdit_theme_constant_caret_width>`
  2375. 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.
  2376. .. rst-class:: classref-item-separator
  2377. ----
  2378. .. _class_TextEdit_theme_constant_line_spacing:
  2379. .. rst-class:: classref-themeproperty
  2380. :ref:`int<class_int>` **line_spacing** = ``4`` :ref:`๐Ÿ”—<class_TextEdit_theme_constant_line_spacing>`
  2381. Additional vertical spacing between lines (in pixels), spacing is added to line descent. This value can be negative.
  2382. .. rst-class:: classref-item-separator
  2383. ----
  2384. .. _class_TextEdit_theme_constant_outline_size:
  2385. .. rst-class:: classref-themeproperty
  2386. :ref:`int<class_int>` **outline_size** = ``0`` :ref:`๐Ÿ”—<class_TextEdit_theme_constant_outline_size>`
  2387. The size of the text outline.
  2388. \ **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.
  2389. .. rst-class:: classref-item-separator
  2390. ----
  2391. .. _class_TextEdit_theme_font_font:
  2392. .. rst-class:: classref-themeproperty
  2393. :ref:`Font<class_Font>` **font** :ref:`๐Ÿ”—<class_TextEdit_theme_font_font>`
  2394. Sets the default :ref:`Font<class_Font>`.
  2395. .. rst-class:: classref-item-separator
  2396. ----
  2397. .. _class_TextEdit_theme_font_size_font_size:
  2398. .. rst-class:: classref-themeproperty
  2399. :ref:`int<class_int>` **font_size** :ref:`๐Ÿ”—<class_TextEdit_theme_font_size_font_size>`
  2400. Sets default font size.
  2401. .. rst-class:: classref-item-separator
  2402. ----
  2403. .. _class_TextEdit_theme_icon_space:
  2404. .. rst-class:: classref-themeproperty
  2405. :ref:`Texture2D<class_Texture2D>` **space** :ref:`๐Ÿ”—<class_TextEdit_theme_icon_space>`
  2406. Sets a custom :ref:`Texture2D<class_Texture2D>` for space text characters.
  2407. .. rst-class:: classref-item-separator
  2408. ----
  2409. .. _class_TextEdit_theme_icon_tab:
  2410. .. rst-class:: classref-themeproperty
  2411. :ref:`Texture2D<class_Texture2D>` **tab** :ref:`๐Ÿ”—<class_TextEdit_theme_icon_tab>`
  2412. Sets a custom :ref:`Texture2D<class_Texture2D>` for tab text characters.
  2413. .. rst-class:: classref-item-separator
  2414. ----
  2415. .. _class_TextEdit_theme_style_focus:
  2416. .. rst-class:: classref-themeproperty
  2417. :ref:`StyleBox<class_StyleBox>` **focus** :ref:`๐Ÿ”—<class_TextEdit_theme_style_focus>`
  2418. Sets the :ref:`StyleBox<class_StyleBox>` when in focus. The :ref:`focus<class_TextEdit_theme_style_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.
  2419. .. rst-class:: classref-item-separator
  2420. ----
  2421. .. _class_TextEdit_theme_style_normal:
  2422. .. rst-class:: classref-themeproperty
  2423. :ref:`StyleBox<class_StyleBox>` **normal** :ref:`๐Ÿ”—<class_TextEdit_theme_style_normal>`
  2424. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit**.
  2425. .. rst-class:: classref-item-separator
  2426. ----
  2427. .. _class_TextEdit_theme_style_read_only:
  2428. .. rst-class:: classref-themeproperty
  2429. :ref:`StyleBox<class_StyleBox>` **read_only** :ref:`๐Ÿ”—<class_TextEdit_theme_style_read_only>`
  2430. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit** when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2431. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  2432. .. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
  2433. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  2434. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  2435. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  2436. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  2437. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  2438. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  2439. .. |void| replace:: :abbr:`void (No return value.)`