class_textedit.rst 234 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062
  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. \ **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.
  19. \ **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.
  20. .. rst-class:: classref-reftable-group
  21. Properties
  22. ----------
  23. .. table::
  24. :widths: auto
  25. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  26. | :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` | :ref:`autowrap_mode<class_TextEdit_property_autowrap_mode>` | ``3`` |
  27. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  28. | :ref:`bool<class_bool>` | :ref:`caret_blink<class_TextEdit_property_caret_blink>` | ``false`` |
  29. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  30. | :ref:`float<class_float>` | :ref:`caret_blink_interval<class_TextEdit_property_caret_blink_interval>` | ``0.65`` |
  31. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  32. | :ref:`bool<class_bool>` | :ref:`caret_draw_when_editable_disabled<class_TextEdit_property_caret_draw_when_editable_disabled>` | ``false`` |
  33. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  34. | :ref:`bool<class_bool>` | :ref:`caret_mid_grapheme<class_TextEdit_property_caret_mid_grapheme>` | ``false`` |
  35. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  36. | :ref:`bool<class_bool>` | :ref:`caret_move_on_right_click<class_TextEdit_property_caret_move_on_right_click>` | ``true`` |
  37. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  38. | :ref:`bool<class_bool>` | :ref:`caret_multiple<class_TextEdit_property_caret_multiple>` | ``true`` |
  39. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  40. | :ref:`CaretType<enum_TextEdit_CaretType>` | :ref:`caret_type<class_TextEdit_property_caret_type>` | ``0`` |
  41. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  42. | :ref:`bool<class_bool>` | clip_contents | ``true`` (overrides :ref:`Control<class_Control_property_clip_contents>`) |
  43. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  44. | :ref:`bool<class_bool>` | :ref:`context_menu_enabled<class_TextEdit_property_context_menu_enabled>` | ``true`` |
  45. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  46. | :ref:`bool<class_bool>` | :ref:`deselect_on_focus_loss_enabled<class_TextEdit_property_deselect_on_focus_loss_enabled>` | ``true`` |
  47. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  48. | :ref:`bool<class_bool>` | :ref:`drag_and_drop_selection_enabled<class_TextEdit_property_drag_and_drop_selection_enabled>` | ``true`` |
  49. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  50. | :ref:`bool<class_bool>` | :ref:`draw_control_chars<class_TextEdit_property_draw_control_chars>` | ``false`` |
  51. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  52. | :ref:`bool<class_bool>` | :ref:`draw_spaces<class_TextEdit_property_draw_spaces>` | ``false`` |
  53. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  54. | :ref:`bool<class_bool>` | :ref:`draw_tabs<class_TextEdit_property_draw_tabs>` | ``false`` |
  55. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  56. | :ref:`bool<class_bool>` | :ref:`editable<class_TextEdit_property_editable>` | ``true`` |
  57. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  58. | :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
  59. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  60. | :ref:`bool<class_bool>` | :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` | ``false`` |
  61. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  62. | :ref:`bool<class_bool>` | :ref:`highlight_current_line<class_TextEdit_property_highlight_current_line>` | ``false`` |
  63. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  64. | :ref:`bool<class_bool>` | :ref:`indent_wrapped_lines<class_TextEdit_property_indent_wrapped_lines>` | ``false`` |
  65. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  66. | :ref:`String<class_String>` | :ref:`language<class_TextEdit_property_language>` | ``""`` |
  67. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  68. | :ref:`bool<class_bool>` | :ref:`middle_mouse_paste_enabled<class_TextEdit_property_middle_mouse_paste_enabled>` | ``true`` |
  69. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  70. | :ref:`bool<class_bool>` | :ref:`minimap_draw<class_TextEdit_property_minimap_draw>` | ``false`` |
  71. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  72. | :ref:`int<class_int>` | :ref:`minimap_width<class_TextEdit_property_minimap_width>` | ``80`` |
  73. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  74. | :ref:`CursorShape<enum_Control_CursorShape>` | mouse_default_cursor_shape | ``1`` (overrides :ref:`Control<class_Control_property_mouse_default_cursor_shape>`) |
  75. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  76. | :ref:`String<class_String>` | :ref:`placeholder_text<class_TextEdit_property_placeholder_text>` | ``""`` |
  77. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  78. | :ref:`bool<class_bool>` | :ref:`scroll_fit_content_height<class_TextEdit_property_scroll_fit_content_height>` | ``false`` |
  79. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  80. | :ref:`int<class_int>` | :ref:`scroll_horizontal<class_TextEdit_property_scroll_horizontal>` | ``0`` |
  81. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  82. | :ref:`bool<class_bool>` | :ref:`scroll_past_end_of_file<class_TextEdit_property_scroll_past_end_of_file>` | ``false`` |
  83. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  84. | :ref:`bool<class_bool>` | :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` | ``false`` |
  85. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  86. | :ref:`float<class_float>` | :ref:`scroll_v_scroll_speed<class_TextEdit_property_scroll_v_scroll_speed>` | ``80.0`` |
  87. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  88. | :ref:`float<class_float>` | :ref:`scroll_vertical<class_TextEdit_property_scroll_vertical>` | ``0.0`` |
  89. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  90. | :ref:`bool<class_bool>` | :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` | ``true`` |
  91. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  92. | :ref:`bool<class_bool>` | :ref:`shortcut_keys_enabled<class_TextEdit_property_shortcut_keys_enabled>` | ``true`` |
  93. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  94. | :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` | :ref:`structured_text_bidi_override<class_TextEdit_property_structured_text_bidi_override>` | ``0`` |
  95. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  96. | :ref:`Array<class_Array>` | :ref:`structured_text_bidi_override_options<class_TextEdit_property_structured_text_bidi_override_options>` | ``[]`` |
  97. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  98. | :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` | :ref:`syntax_highlighter<class_TextEdit_property_syntax_highlighter>` | |
  99. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  100. | :ref:`String<class_String>` | :ref:`text<class_TextEdit_property_text>` | ``""`` |
  101. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  102. | :ref:`TextDirection<enum_Control_TextDirection>` | :ref:`text_direction<class_TextEdit_property_text_direction>` | ``0`` |
  103. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  104. | :ref:`bool<class_bool>` | :ref:`virtual_keyboard_enabled<class_TextEdit_property_virtual_keyboard_enabled>` | ``true`` |
  105. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  106. | :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` | :ref:`wrap_mode<class_TextEdit_property_wrap_mode>` | ``0`` |
  107. +-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------+
  108. .. rst-class:: classref-reftable-group
  109. Methods
  110. -------
  111. .. table::
  112. :widths: auto
  113. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  114. | |void| | :ref:`_backspace<class_TextEdit_private_method__backspace>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  115. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  116. | |void| | :ref:`_copy<class_TextEdit_private_method__copy>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  117. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  118. | |void| | :ref:`_cut<class_TextEdit_private_method__cut>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  119. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  120. | |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| |
  121. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  122. | |void| | :ref:`_paste<class_TextEdit_private_method__paste>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  123. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  124. | |void| | :ref:`_paste_primary_clipboard<class_TextEdit_private_method__paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual| |
  125. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  126. | :ref:`int<class_int>` | :ref:`add_caret<class_TextEdit_method_add_caret>`\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |
  127. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  128. | |void| | :ref:`add_caret_at_carets<class_TextEdit_method_add_caret_at_carets>`\ (\ below\: :ref:`bool<class_bool>`\ ) |
  129. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  130. | |void| | :ref:`add_gutter<class_TextEdit_method_add_gutter>`\ (\ at\: :ref:`int<class_int>` = -1\ ) |
  131. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  132. | |void| | :ref:`add_selection_for_next_occurrence<class_TextEdit_method_add_selection_for_next_occurrence>`\ (\ ) |
  133. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  134. | |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>`\ ) |
  135. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  136. | |void| | :ref:`adjust_viewport_to_caret<class_TextEdit_method_adjust_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
  137. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  138. | |void| | :ref:`apply_ime<class_TextEdit_method_apply_ime>`\ (\ ) |
  139. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  140. | |void| | :ref:`backspace<class_TextEdit_method_backspace>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  141. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  142. | |void| | :ref:`begin_complex_operation<class_TextEdit_method_begin_complex_operation>`\ (\ ) |
  143. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  144. | |void| | :ref:`begin_multicaret_edit<class_TextEdit_method_begin_multicaret_edit>`\ (\ ) |
  145. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  146. | |void| | :ref:`cancel_ime<class_TextEdit_method_cancel_ime>`\ (\ ) |
  147. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  148. | |void| | :ref:`center_viewport_to_caret<class_TextEdit_method_center_viewport_to_caret>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |
  149. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  150. | |void| | :ref:`clear<class_TextEdit_method_clear>`\ (\ ) |
  151. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  152. | |void| | :ref:`clear_undo_history<class_TextEdit_method_clear_undo_history>`\ (\ ) |
  153. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  154. | |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\ ) |
  155. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  156. | |void| | :ref:`copy<class_TextEdit_method_copy>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  157. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  158. | |void| | :ref:`cut<class_TextEdit_method_cut>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  159. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  160. | |void| | :ref:`delete_selection<class_TextEdit_method_delete_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  161. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  162. | |void| | :ref:`deselect<class_TextEdit_method_deselect>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  163. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  164. | |void| | :ref:`end_action<class_TextEdit_method_end_action>`\ (\ ) |
  165. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  166. | |void| | :ref:`end_complex_operation<class_TextEdit_method_end_complex_operation>`\ (\ ) |
  167. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  168. | |void| | :ref:`end_multicaret_edit<class_TextEdit_method_end_multicaret_edit>`\ (\ ) |
  169. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  170. | :ref:`int<class_int>` | :ref:`get_caret_column<class_TextEdit_method_get_caret_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  171. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  172. | :ref:`int<class_int>` | :ref:`get_caret_count<class_TextEdit_method_get_caret_count>`\ (\ ) |const| |
  173. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  174. | :ref:`Vector2<class_Vector2>` | :ref:`get_caret_draw_pos<class_TextEdit_method_get_caret_draw_pos>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  175. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  176. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_caret_index_edit_order<class_TextEdit_method_get_caret_index_edit_order>`\ (\ ) |
  177. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  178. | :ref:`int<class_int>` | :ref:`get_caret_line<class_TextEdit_method_get_caret_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  179. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  180. | :ref:`int<class_int>` | :ref:`get_caret_wrap_index<class_TextEdit_method_get_caret_wrap_index>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  181. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  182. | :ref:`int<class_int>` | :ref:`get_first_non_whitespace_column<class_TextEdit_method_get_first_non_whitespace_column>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  183. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  184. | :ref:`int<class_int>` | :ref:`get_first_visible_line<class_TextEdit_method_get_first_visible_line>`\ (\ ) |const| |
  185. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  186. | :ref:`int<class_int>` | :ref:`get_gutter_count<class_TextEdit_method_get_gutter_count>`\ (\ ) |const| |
  187. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  188. | :ref:`String<class_String>` | :ref:`get_gutter_name<class_TextEdit_method_get_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  189. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  190. | :ref:`GutterType<enum_TextEdit_GutterType>` | :ref:`get_gutter_type<class_TextEdit_method_get_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  191. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  192. | :ref:`int<class_int>` | :ref:`get_gutter_width<class_TextEdit_method_get_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  193. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  194. | :ref:`HScrollBar<class_HScrollBar>` | :ref:`get_h_scroll_bar<class_TextEdit_method_get_h_scroll_bar>`\ (\ ) |const| |
  195. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  196. | :ref:`int<class_int>` | :ref:`get_indent_level<class_TextEdit_method_get_indent_level>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  197. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  198. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line<class_TextEdit_method_get_last_full_visible_line>`\ (\ ) |const| |
  199. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  200. | :ref:`int<class_int>` | :ref:`get_last_full_visible_line_wrap_index<class_TextEdit_method_get_last_full_visible_line_wrap_index>`\ (\ ) |const| |
  201. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  202. | :ref:`int<class_int>` | :ref:`get_last_unhidden_line<class_TextEdit_method_get_last_unhidden_line>`\ (\ ) |const| |
  203. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  204. | :ref:`String<class_String>` | :ref:`get_line<class_TextEdit_method_get_line>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  205. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  206. | :ref:`Color<class_Color>` | :ref:`get_line_background_color<class_TextEdit_method_get_line_background_color>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  207. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  208. | :ref:`Vector2i<class_Vector2i>` | :ref:`get_line_column_at_pos<class_TextEdit_method_get_line_column_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`, allow_out_of_bounds\: :ref:`bool<class_bool>` = true\ ) |const| |
  209. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  210. | :ref:`int<class_int>` | :ref:`get_line_count<class_TextEdit_method_get_line_count>`\ (\ ) |const| |
  211. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  212. | :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| |
  213. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  214. | :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| |
  215. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  216. | :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| |
  217. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  218. | :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| |
  219. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  220. | :ref:`int<class_int>` | :ref:`get_line_height<class_TextEdit_method_get_line_height>`\ (\ ) |const| |
  221. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  222. | :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| |
  223. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  224. | :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| |
  225. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  226. | :ref:`int<class_int>` | :ref:`get_line_wrap_count<class_TextEdit_method_get_line_wrap_count>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  227. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  228. | :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| |
  229. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  230. | :ref:`PackedStringArray<class_PackedStringArray>` | :ref:`get_line_wrapped_text<class_TextEdit_method_get_line_wrapped_text>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  231. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  232. | :ref:`Vector2<class_Vector2>` | :ref:`get_local_mouse_pos<class_TextEdit_method_get_local_mouse_pos>`\ (\ ) |const| |
  233. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  234. | :ref:`PopupMenu<class_PopupMenu>` | :ref:`get_menu<class_TextEdit_method_get_menu>`\ (\ ) |const| |
  235. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  236. | :ref:`int<class_int>` | :ref:`get_minimap_line_at_pos<class_TextEdit_method_get_minimap_line_at_pos>`\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const| |
  237. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  238. | :ref:`int<class_int>` | :ref:`get_minimap_visible_lines<class_TextEdit_method_get_minimap_visible_lines>`\ (\ ) |const| |
  239. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  240. | :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| |
  241. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  242. | :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| |
  243. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  244. | :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| |
  245. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  246. | :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| |
  247. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  248. | :ref:`int<class_int>` | :ref:`get_saved_version<class_TextEdit_method_get_saved_version>`\ (\ ) |const| |
  249. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  250. | :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| |
  251. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  252. | :ref:`String<class_String>` | :ref:`get_selected_text<class_TextEdit_method_get_selected_text>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  253. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  254. | :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| |
  255. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  256. | :ref:`int<class_int>` | :ref:`get_selection_column<class_TextEdit_method_get_selection_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  257. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  258. | :ref:`int<class_int>` | :ref:`get_selection_from_column<class_TextEdit_method_get_selection_from_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  259. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  260. | :ref:`int<class_int>` | :ref:`get_selection_from_line<class_TextEdit_method_get_selection_from_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  261. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  262. | :ref:`int<class_int>` | :ref:`get_selection_line<class_TextEdit_method_get_selection_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  263. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  264. | :ref:`SelectionMode<enum_TextEdit_SelectionMode>` | :ref:`get_selection_mode<class_TextEdit_method_get_selection_mode>`\ (\ ) |const| |
  265. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  266. | :ref:`int<class_int>` | :ref:`get_selection_origin_column<class_TextEdit_method_get_selection_origin_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  267. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  268. | :ref:`int<class_int>` | :ref:`get_selection_origin_line<class_TextEdit_method_get_selection_origin_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  269. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  270. | :ref:`int<class_int>` | :ref:`get_selection_to_column<class_TextEdit_method_get_selection_to_column>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  271. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  272. | :ref:`int<class_int>` | :ref:`get_selection_to_line<class_TextEdit_method_get_selection_to_line>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  273. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  274. | :ref:`PackedInt32Array<class_PackedInt32Array>` | :ref:`get_sorted_carets<class_TextEdit_method_get_sorted_carets>`\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const| |
  275. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  276. | :ref:`int<class_int>` | :ref:`get_tab_size<class_TextEdit_method_get_tab_size>`\ (\ ) |const| |
  277. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  278. | :ref:`int<class_int>` | :ref:`get_total_gutter_width<class_TextEdit_method_get_total_gutter_width>`\ (\ ) |const| |
  279. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  280. | :ref:`int<class_int>` | :ref:`get_total_visible_line_count<class_TextEdit_method_get_total_visible_line_count>`\ (\ ) |const| |
  281. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  282. | :ref:`VScrollBar<class_VScrollBar>` | :ref:`get_v_scroll_bar<class_TextEdit_method_get_v_scroll_bar>`\ (\ ) |const| |
  283. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  284. | :ref:`int<class_int>` | :ref:`get_version<class_TextEdit_method_get_version>`\ (\ ) |const| |
  285. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  286. | :ref:`int<class_int>` | :ref:`get_visible_line_count<class_TextEdit_method_get_visible_line_count>`\ (\ ) |const| |
  287. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  288. | :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| |
  289. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  290. | :ref:`String<class_String>` | :ref:`get_word_at_pos<class_TextEdit_method_get_word_at_pos>`\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const| |
  291. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  292. | :ref:`String<class_String>` | :ref:`get_word_under_caret<class_TextEdit_method_get_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
  293. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  294. | :ref:`bool<class_bool>` | :ref:`has_ime_text<class_TextEdit_method_has_ime_text>`\ (\ ) |const| |
  295. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  296. | :ref:`bool<class_bool>` | :ref:`has_redo<class_TextEdit_method_has_redo>`\ (\ ) |const| |
  297. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  298. | :ref:`bool<class_bool>` | :ref:`has_selection<class_TextEdit_method_has_selection>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const| |
  299. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  300. | :ref:`bool<class_bool>` | :ref:`has_undo<class_TextEdit_method_has_undo>`\ (\ ) |const| |
  301. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  302. | |void| | :ref:`insert_line_at<class_TextEdit_method_insert_line_at>`\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ ) |
  303. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  304. | |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\ ) |
  305. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  306. | |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\ ) |
  307. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  308. | :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| |
  309. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  310. | :ref:`bool<class_bool>` | :ref:`is_caret_visible<class_TextEdit_method_is_caret_visible>`\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const| |
  311. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  312. | :ref:`bool<class_bool>` | :ref:`is_dragging_cursor<class_TextEdit_method_is_dragging_cursor>`\ (\ ) |const| |
  313. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  314. | :ref:`bool<class_bool>` | :ref:`is_gutter_clickable<class_TextEdit_method_is_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  315. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  316. | :ref:`bool<class_bool>` | :ref:`is_gutter_drawn<class_TextEdit_method_is_gutter_drawn>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  317. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  318. | :ref:`bool<class_bool>` | :ref:`is_gutter_overwritable<class_TextEdit_method_is_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`\ ) |const| |
  319. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  320. | :ref:`bool<class_bool>` | :ref:`is_in_mulitcaret_edit<class_TextEdit_method_is_in_mulitcaret_edit>`\ (\ ) |const| |
  321. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  322. | :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| |
  323. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  324. | :ref:`bool<class_bool>` | :ref:`is_line_wrapped<class_TextEdit_method_is_line_wrapped>`\ (\ line\: :ref:`int<class_int>`\ ) |const| |
  325. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  326. | :ref:`bool<class_bool>` | :ref:`is_menu_visible<class_TextEdit_method_is_menu_visible>`\ (\ ) |const| |
  327. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  328. | :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| |
  329. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  330. | :ref:`bool<class_bool>` | :ref:`is_overtype_mode_enabled<class_TextEdit_method_is_overtype_mode_enabled>`\ (\ ) |const| |
  331. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  332. | |void| | :ref:`menu_option<class_TextEdit_method_menu_option>`\ (\ option\: :ref:`int<class_int>`\ ) |
  333. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  334. | |void| | :ref:`merge_gutters<class_TextEdit_method_merge_gutters>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
  335. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  336. | |void| | :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`\ (\ ) |
  337. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  338. | :ref:`bool<class_bool>` | :ref:`multicaret_edit_ignore_caret<class_TextEdit_method_multicaret_edit_ignore_caret>`\ (\ caret_index\: :ref:`int<class_int>`\ ) |const| |
  339. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  340. | |void| | :ref:`paste<class_TextEdit_method_paste>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  341. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  342. | |void| | :ref:`paste_primary_clipboard<class_TextEdit_method_paste_primary_clipboard>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  343. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  344. | |void| | :ref:`redo<class_TextEdit_method_redo>`\ (\ ) |
  345. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  346. | |void| | :ref:`remove_caret<class_TextEdit_method_remove_caret>`\ (\ caret\: :ref:`int<class_int>`\ ) |
  347. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  348. | |void| | :ref:`remove_gutter<class_TextEdit_method_remove_gutter>`\ (\ gutter\: :ref:`int<class_int>`\ ) |
  349. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  350. | |void| | :ref:`remove_line_at<class_TextEdit_method_remove_line_at>`\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ ) |
  351. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  352. | |void| | :ref:`remove_secondary_carets<class_TextEdit_method_remove_secondary_carets>`\ (\ ) |
  353. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  354. | |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>`\ ) |
  355. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  356. | :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| |
  357. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  358. | |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\ ) |
  359. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  360. | |void| | :ref:`select_all<class_TextEdit_method_select_all>`\ (\ ) |
  361. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  362. | |void| | :ref:`select_word_under_caret<class_TextEdit_method_select_word_under_caret>`\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |
  363. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  364. | |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\ ) |
  365. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  366. | |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\ ) |
  367. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  368. | |void| | :ref:`set_gutter_clickable<class_TextEdit_method_set_gutter_clickable>`\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ ) |
  369. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  370. | |void| | :ref:`set_gutter_custom_draw<class_TextEdit_method_set_gutter_custom_draw>`\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ ) |
  371. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  372. | |void| | :ref:`set_gutter_draw<class_TextEdit_method_set_gutter_draw>`\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ ) |
  373. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  374. | |void| | :ref:`set_gutter_name<class_TextEdit_method_set_gutter_name>`\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ ) |
  375. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  376. | |void| | :ref:`set_gutter_overwritable<class_TextEdit_method_set_gutter_overwritable>`\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ ) |
  377. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  378. | |void| | :ref:`set_gutter_type<class_TextEdit_method_set_gutter_type>`\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ ) |
  379. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  380. | |void| | :ref:`set_gutter_width<class_TextEdit_method_set_gutter_width>`\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ ) |
  381. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  382. | |void| | :ref:`set_line<class_TextEdit_method_set_line>`\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ ) |
  383. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  384. | |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\ ) |
  385. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  386. | |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\ ) |
  387. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  388. | |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\ ) |
  389. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  390. | |void| | :ref:`set_line_background_color<class_TextEdit_method_set_line_background_color>`\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ ) |
  391. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  392. | |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>`\ ) |
  393. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  394. | |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>`\ ) |
  395. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  396. | |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>`\ ) |
  397. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  398. | |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>`\ ) |
  399. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  400. | |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>`\ ) |
  401. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  402. | |void| | :ref:`set_overtype_mode_enabled<class_TextEdit_method_set_overtype_mode_enabled>`\ (\ enabled\: :ref:`bool<class_bool>`\ ) |
  403. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  404. | |void| | :ref:`set_search_flags<class_TextEdit_method_set_search_flags>`\ (\ flags\: :ref:`int<class_int>`\ ) |
  405. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  406. | |void| | :ref:`set_search_text<class_TextEdit_method_set_search_text>`\ (\ search_text\: :ref:`String<class_String>`\ ) |
  407. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  408. | |void| | :ref:`set_selection_mode<class_TextEdit_method_set_selection_mode>`\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ ) |
  409. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  410. | |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\ ) |
  411. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  412. | |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\ ) |
  413. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  414. | |void| | :ref:`set_tab_size<class_TextEdit_method_set_tab_size>`\ (\ size\: :ref:`int<class_int>`\ ) |
  415. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  416. | |void| | :ref:`set_tooltip_request_func<class_TextEdit_method_set_tooltip_request_func>`\ (\ callback\: :ref:`Callable<class_Callable>`\ ) |
  417. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  418. | |void| | :ref:`skip_selection_for_next_occurrence<class_TextEdit_method_skip_selection_for_next_occurrence>`\ (\ ) |
  419. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  420. | |void| | :ref:`start_action<class_TextEdit_method_start_action>`\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ ) |
  421. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  422. | |void| | :ref:`swap_lines<class_TextEdit_method_swap_lines>`\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |
  423. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  424. | |void| | :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>`\ (\ ) |
  425. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  426. | |void| | :ref:`undo<class_TextEdit_method_undo>`\ (\ ) |
  427. +--------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
  428. .. rst-class:: classref-reftable-group
  429. Theme Properties
  430. ----------------
  431. .. table::
  432. :widths: auto
  433. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  434. | :ref:`Color<class_Color>` | :ref:`background_color<class_TextEdit_theme_color_background_color>` | ``Color(0, 0, 0, 0)`` |
  435. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  436. | :ref:`Color<class_Color>` | :ref:`caret_background_color<class_TextEdit_theme_color_caret_background_color>` | ``Color(0, 0, 0, 1)`` |
  437. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  438. | :ref:`Color<class_Color>` | :ref:`caret_color<class_TextEdit_theme_color_caret_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  439. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  440. | :ref:`Color<class_Color>` | :ref:`current_line_color<class_TextEdit_theme_color_current_line_color>` | ``Color(0.25, 0.25, 0.26, 0.8)`` |
  441. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  442. | :ref:`Color<class_Color>` | :ref:`font_color<class_TextEdit_theme_color_font_color>` | ``Color(0.875, 0.875, 0.875, 1)`` |
  443. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  444. | :ref:`Color<class_Color>` | :ref:`font_outline_color<class_TextEdit_theme_color_font_outline_color>` | ``Color(0, 0, 0, 1)`` |
  445. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  446. | :ref:`Color<class_Color>` | :ref:`font_placeholder_color<class_TextEdit_theme_color_font_placeholder_color>` | ``Color(0.875, 0.875, 0.875, 0.6)`` |
  447. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  448. | :ref:`Color<class_Color>` | :ref:`font_readonly_color<class_TextEdit_theme_color_font_readonly_color>` | ``Color(0.875, 0.875, 0.875, 0.5)`` |
  449. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  450. | :ref:`Color<class_Color>` | :ref:`font_selected_color<class_TextEdit_theme_color_font_selected_color>` | ``Color(0, 0, 0, 0)`` |
  451. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  452. | :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)`` |
  453. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  454. | :ref:`Color<class_Color>` | :ref:`search_result_color<class_TextEdit_theme_color_search_result_color>` | ``Color(0.3, 0.3, 0.3, 1)`` |
  455. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  456. | :ref:`Color<class_Color>` | :ref:`selection_color<class_TextEdit_theme_color_selection_color>` | ``Color(0.5, 0.5, 0.5, 1)`` |
  457. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  458. | :ref:`Color<class_Color>` | :ref:`word_highlighted_color<class_TextEdit_theme_color_word_highlighted_color>` | ``Color(0.5, 0.5, 0.5, 0.25)`` |
  459. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  460. | :ref:`int<class_int>` | :ref:`caret_width<class_TextEdit_theme_constant_caret_width>` | ``1`` |
  461. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  462. | :ref:`int<class_int>` | :ref:`line_spacing<class_TextEdit_theme_constant_line_spacing>` | ``4`` |
  463. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  464. | :ref:`int<class_int>` | :ref:`outline_size<class_TextEdit_theme_constant_outline_size>` | ``0`` |
  465. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  466. | :ref:`Font<class_Font>` | :ref:`font<class_TextEdit_theme_font_font>` | |
  467. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  468. | :ref:`int<class_int>` | :ref:`font_size<class_TextEdit_theme_font_size_font_size>` | |
  469. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  470. | :ref:`Texture2D<class_Texture2D>` | :ref:`space<class_TextEdit_theme_icon_space>` | |
  471. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  472. | :ref:`Texture2D<class_Texture2D>` | :ref:`tab<class_TextEdit_theme_icon_tab>` | |
  473. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  474. | :ref:`StyleBox<class_StyleBox>` | :ref:`focus<class_TextEdit_theme_style_focus>` | |
  475. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  476. | :ref:`StyleBox<class_StyleBox>` | :ref:`normal<class_TextEdit_theme_style_normal>` | |
  477. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  478. | :ref:`StyleBox<class_StyleBox>` | :ref:`read_only<class_TextEdit_theme_style_read_only>` | |
  479. +-----------------------------------+------------------------------------------------------------------------------------------+-------------------------------------+
  480. .. rst-class:: classref-section-separator
  481. ----
  482. .. rst-class:: classref-descriptions-group
  483. Signals
  484. -------
  485. .. _class_TextEdit_signal_caret_changed:
  486. .. rst-class:: classref-signal
  487. **caret_changed**\ (\ )
  488. Emitted when any caret changes position.
  489. .. rst-class:: classref-item-separator
  490. ----
  491. .. _class_TextEdit_signal_gutter_added:
  492. .. rst-class:: classref-signal
  493. **gutter_added**\ (\ )
  494. Emitted when a gutter is added.
  495. .. rst-class:: classref-item-separator
  496. ----
  497. .. _class_TextEdit_signal_gutter_clicked:
  498. .. rst-class:: classref-signal
  499. **gutter_clicked**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ )
  500. Emitted when a gutter is clicked.
  501. .. rst-class:: classref-item-separator
  502. ----
  503. .. _class_TextEdit_signal_gutter_removed:
  504. .. rst-class:: classref-signal
  505. **gutter_removed**\ (\ )
  506. Emitted when a gutter is removed.
  507. .. rst-class:: classref-item-separator
  508. ----
  509. .. _class_TextEdit_signal_lines_edited_from:
  510. .. rst-class:: classref-signal
  511. **lines_edited_from**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ )
  512. Emitted immediately when the text changes.
  513. When text is added ``from_line`` will be less than ``to_line``. On a remove ``to_line`` will be less than ``from_line``.
  514. .. rst-class:: classref-item-separator
  515. ----
  516. .. _class_TextEdit_signal_text_changed:
  517. .. rst-class:: classref-signal
  518. **text_changed**\ (\ )
  519. Emitted when the text changes.
  520. .. rst-class:: classref-item-separator
  521. ----
  522. .. _class_TextEdit_signal_text_set:
  523. .. rst-class:: classref-signal
  524. **text_set**\ (\ )
  525. Emitted when :ref:`clear<class_TextEdit_method_clear>` is called or :ref:`text<class_TextEdit_property_text>` is set.
  526. .. rst-class:: classref-section-separator
  527. ----
  528. .. rst-class:: classref-descriptions-group
  529. Enumerations
  530. ------------
  531. .. _enum_TextEdit_MenuItems:
  532. .. rst-class:: classref-enumeration
  533. enum **MenuItems**:
  534. .. _class_TextEdit_constant_MENU_CUT:
  535. .. rst-class:: classref-enumeration-constant
  536. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CUT** = ``0``
  537. Cuts (copies and clears) the selected text.
  538. .. _class_TextEdit_constant_MENU_COPY:
  539. .. rst-class:: classref-enumeration-constant
  540. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_COPY** = ``1``
  541. Copies the selected text.
  542. .. _class_TextEdit_constant_MENU_PASTE:
  543. .. rst-class:: classref-enumeration-constant
  544. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_PASTE** = ``2``
  545. Pastes the clipboard text over the selected text (or at the cursor's position).
  546. .. _class_TextEdit_constant_MENU_CLEAR:
  547. .. rst-class:: classref-enumeration-constant
  548. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_CLEAR** = ``3``
  549. Erases the whole **TextEdit** text.
  550. .. _class_TextEdit_constant_MENU_SELECT_ALL:
  551. .. rst-class:: classref-enumeration-constant
  552. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SELECT_ALL** = ``4``
  553. Selects the whole **TextEdit** text.
  554. .. _class_TextEdit_constant_MENU_UNDO:
  555. .. rst-class:: classref-enumeration-constant
  556. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_UNDO** = ``5``
  557. Undoes the previous action.
  558. .. _class_TextEdit_constant_MENU_REDO:
  559. .. rst-class:: classref-enumeration-constant
  560. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_REDO** = ``6``
  561. Redoes the previous action.
  562. .. _class_TextEdit_constant_MENU_SUBMENU_TEXT_DIR:
  563. .. rst-class:: classref-enumeration-constant
  564. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_TEXT_DIR** = ``7``
  565. ID of "Text Writing Direction" submenu.
  566. .. _class_TextEdit_constant_MENU_DIR_INHERITED:
  567. .. rst-class:: classref-enumeration-constant
  568. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_INHERITED** = ``8``
  569. Sets text direction to inherited.
  570. .. _class_TextEdit_constant_MENU_DIR_AUTO:
  571. .. rst-class:: classref-enumeration-constant
  572. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_AUTO** = ``9``
  573. Sets text direction to automatic.
  574. .. _class_TextEdit_constant_MENU_DIR_LTR:
  575. .. rst-class:: classref-enumeration-constant
  576. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_LTR** = ``10``
  577. Sets text direction to left-to-right.
  578. .. _class_TextEdit_constant_MENU_DIR_RTL:
  579. .. rst-class:: classref-enumeration-constant
  580. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DIR_RTL** = ``11``
  581. Sets text direction to right-to-left.
  582. .. _class_TextEdit_constant_MENU_DISPLAY_UCC:
  583. .. rst-class:: classref-enumeration-constant
  584. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_DISPLAY_UCC** = ``12``
  585. Toggles control character display.
  586. .. _class_TextEdit_constant_MENU_SUBMENU_INSERT_UCC:
  587. .. rst-class:: classref-enumeration-constant
  588. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_SUBMENU_INSERT_UCC** = ``13``
  589. ID of "Insert Control Character" submenu.
  590. .. _class_TextEdit_constant_MENU_INSERT_LRM:
  591. .. rst-class:: classref-enumeration-constant
  592. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRM** = ``14``
  593. Inserts left-to-right mark (LRM) character.
  594. .. _class_TextEdit_constant_MENU_INSERT_RLM:
  595. .. rst-class:: classref-enumeration-constant
  596. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLM** = ``15``
  597. Inserts right-to-left mark (RLM) character.
  598. .. _class_TextEdit_constant_MENU_INSERT_LRE:
  599. .. rst-class:: classref-enumeration-constant
  600. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRE** = ``16``
  601. Inserts start of left-to-right embedding (LRE) character.
  602. .. _class_TextEdit_constant_MENU_INSERT_RLE:
  603. .. rst-class:: classref-enumeration-constant
  604. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLE** = ``17``
  605. Inserts start of right-to-left embedding (RLE) character.
  606. .. _class_TextEdit_constant_MENU_INSERT_LRO:
  607. .. rst-class:: classref-enumeration-constant
  608. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRO** = ``18``
  609. Inserts start of left-to-right override (LRO) character.
  610. .. _class_TextEdit_constant_MENU_INSERT_RLO:
  611. .. rst-class:: classref-enumeration-constant
  612. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLO** = ``19``
  613. Inserts start of right-to-left override (RLO) character.
  614. .. _class_TextEdit_constant_MENU_INSERT_PDF:
  615. .. rst-class:: classref-enumeration-constant
  616. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDF** = ``20``
  617. Inserts pop direction formatting (PDF) character.
  618. .. _class_TextEdit_constant_MENU_INSERT_ALM:
  619. .. rst-class:: classref-enumeration-constant
  620. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ALM** = ``21``
  621. Inserts Arabic letter mark (ALM) character.
  622. .. _class_TextEdit_constant_MENU_INSERT_LRI:
  623. .. rst-class:: classref-enumeration-constant
  624. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_LRI** = ``22``
  625. Inserts left-to-right isolate (LRI) character.
  626. .. _class_TextEdit_constant_MENU_INSERT_RLI:
  627. .. rst-class:: classref-enumeration-constant
  628. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_RLI** = ``23``
  629. Inserts right-to-left isolate (RLI) character.
  630. .. _class_TextEdit_constant_MENU_INSERT_FSI:
  631. .. rst-class:: classref-enumeration-constant
  632. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_FSI** = ``24``
  633. Inserts first strong isolate (FSI) character.
  634. .. _class_TextEdit_constant_MENU_INSERT_PDI:
  635. .. rst-class:: classref-enumeration-constant
  636. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_PDI** = ``25``
  637. Inserts pop direction isolate (PDI) character.
  638. .. _class_TextEdit_constant_MENU_INSERT_ZWJ:
  639. .. rst-class:: classref-enumeration-constant
  640. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWJ** = ``26``
  641. Inserts zero width joiner (ZWJ) character.
  642. .. _class_TextEdit_constant_MENU_INSERT_ZWNJ:
  643. .. rst-class:: classref-enumeration-constant
  644. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_ZWNJ** = ``27``
  645. Inserts zero width non-joiner (ZWNJ) character.
  646. .. _class_TextEdit_constant_MENU_INSERT_WJ:
  647. .. rst-class:: classref-enumeration-constant
  648. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_WJ** = ``28``
  649. Inserts word joiner (WJ) character.
  650. .. _class_TextEdit_constant_MENU_INSERT_SHY:
  651. .. rst-class:: classref-enumeration-constant
  652. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_INSERT_SHY** = ``29``
  653. Inserts soft hyphen (SHY) character.
  654. .. _class_TextEdit_constant_MENU_MAX:
  655. .. rst-class:: classref-enumeration-constant
  656. :ref:`MenuItems<enum_TextEdit_MenuItems>` **MENU_MAX** = ``30``
  657. Represents the size of the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  658. .. rst-class:: classref-item-separator
  659. ----
  660. .. _enum_TextEdit_EditAction:
  661. .. rst-class:: classref-enumeration
  662. enum **EditAction**:
  663. .. _class_TextEdit_constant_ACTION_NONE:
  664. .. rst-class:: classref-enumeration-constant
  665. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_NONE** = ``0``
  666. No current action.
  667. .. _class_TextEdit_constant_ACTION_TYPING:
  668. .. rst-class:: classref-enumeration-constant
  669. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_TYPING** = ``1``
  670. A typing action.
  671. .. _class_TextEdit_constant_ACTION_BACKSPACE:
  672. .. rst-class:: classref-enumeration-constant
  673. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_BACKSPACE** = ``2``
  674. A backwards delete action.
  675. .. _class_TextEdit_constant_ACTION_DELETE:
  676. .. rst-class:: classref-enumeration-constant
  677. :ref:`EditAction<enum_TextEdit_EditAction>` **ACTION_DELETE** = ``3``
  678. A forward delete action.
  679. .. rst-class:: classref-item-separator
  680. ----
  681. .. _enum_TextEdit_SearchFlags:
  682. .. rst-class:: classref-enumeration
  683. enum **SearchFlags**:
  684. .. _class_TextEdit_constant_SEARCH_MATCH_CASE:
  685. .. rst-class:: classref-enumeration-constant
  686. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_MATCH_CASE** = ``1``
  687. Match case when searching.
  688. .. _class_TextEdit_constant_SEARCH_WHOLE_WORDS:
  689. .. rst-class:: classref-enumeration-constant
  690. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_WHOLE_WORDS** = ``2``
  691. Match whole words when searching.
  692. .. _class_TextEdit_constant_SEARCH_BACKWARDS:
  693. .. rst-class:: classref-enumeration-constant
  694. :ref:`SearchFlags<enum_TextEdit_SearchFlags>` **SEARCH_BACKWARDS** = ``4``
  695. Search from end to beginning.
  696. .. rst-class:: classref-item-separator
  697. ----
  698. .. _enum_TextEdit_CaretType:
  699. .. rst-class:: classref-enumeration
  700. enum **CaretType**:
  701. .. _class_TextEdit_constant_CARET_TYPE_LINE:
  702. .. rst-class:: classref-enumeration-constant
  703. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_LINE** = ``0``
  704. Vertical line caret.
  705. .. _class_TextEdit_constant_CARET_TYPE_BLOCK:
  706. .. rst-class:: classref-enumeration-constant
  707. :ref:`CaretType<enum_TextEdit_CaretType>` **CARET_TYPE_BLOCK** = ``1``
  708. Block caret.
  709. .. rst-class:: classref-item-separator
  710. ----
  711. .. _enum_TextEdit_SelectionMode:
  712. .. rst-class:: classref-enumeration
  713. enum **SelectionMode**:
  714. .. _class_TextEdit_constant_SELECTION_MODE_NONE:
  715. .. rst-class:: classref-enumeration-constant
  716. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_NONE** = ``0``
  717. Not selecting.
  718. .. _class_TextEdit_constant_SELECTION_MODE_SHIFT:
  719. .. rst-class:: classref-enumeration-constant
  720. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_SHIFT** = ``1``
  721. Select as if ``shift`` is pressed.
  722. .. _class_TextEdit_constant_SELECTION_MODE_POINTER:
  723. .. rst-class:: classref-enumeration-constant
  724. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_POINTER** = ``2``
  725. Select single characters as if the user single clicked.
  726. .. _class_TextEdit_constant_SELECTION_MODE_WORD:
  727. .. rst-class:: classref-enumeration-constant
  728. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_WORD** = ``3``
  729. Select whole words as if the user double clicked.
  730. .. _class_TextEdit_constant_SELECTION_MODE_LINE:
  731. .. rst-class:: classref-enumeration-constant
  732. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **SELECTION_MODE_LINE** = ``4``
  733. Select whole lines as if the user triple clicked.
  734. .. rst-class:: classref-item-separator
  735. ----
  736. .. _enum_TextEdit_LineWrappingMode:
  737. .. rst-class:: classref-enumeration
  738. enum **LineWrappingMode**:
  739. .. _class_TextEdit_constant_LINE_WRAPPING_NONE:
  740. .. rst-class:: classref-enumeration-constant
  741. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_NONE** = ``0``
  742. Line wrapping is disabled.
  743. .. _class_TextEdit_constant_LINE_WRAPPING_BOUNDARY:
  744. .. rst-class:: classref-enumeration-constant
  745. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **LINE_WRAPPING_BOUNDARY** = ``1``
  746. Line wrapping occurs at the control boundary, beyond what would normally be visible.
  747. .. rst-class:: classref-item-separator
  748. ----
  749. .. _enum_TextEdit_GutterType:
  750. .. rst-class:: classref-enumeration
  751. enum **GutterType**:
  752. .. _class_TextEdit_constant_GUTTER_TYPE_STRING:
  753. .. rst-class:: classref-enumeration-constant
  754. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_STRING** = ``0``
  755. 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.
  756. .. _class_TextEdit_constant_GUTTER_TYPE_ICON:
  757. .. rst-class:: classref-enumeration-constant
  758. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_ICON** = ``1``
  759. 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.
  760. .. _class_TextEdit_constant_GUTTER_TYPE_CUSTOM:
  761. .. rst-class:: classref-enumeration-constant
  762. :ref:`GutterType<enum_TextEdit_GutterType>` **GUTTER_TYPE_CUSTOM** = ``2``
  763. 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.
  764. .. rst-class:: classref-section-separator
  765. ----
  766. .. rst-class:: classref-descriptions-group
  767. Property Descriptions
  768. ---------------------
  769. .. _class_TextEdit_property_autowrap_mode:
  770. .. rst-class:: classref-property
  771. :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **autowrap_mode** = ``3``
  772. .. rst-class:: classref-property-setget
  773. - |void| **set_autowrap_mode**\ (\ value\: :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`\ )
  774. - :ref:`AutowrapMode<enum_TextServer_AutowrapMode>` **get_autowrap_mode**\ (\ )
  775. 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. To see how each mode behaves, see :ref:`AutowrapMode<enum_TextServer_AutowrapMode>`.
  776. .. rst-class:: classref-item-separator
  777. ----
  778. .. _class_TextEdit_property_caret_blink:
  779. .. rst-class:: classref-property
  780. :ref:`bool<class_bool>` **caret_blink** = ``false``
  781. .. rst-class:: classref-property-setget
  782. - |void| **set_caret_blink_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  783. - :ref:`bool<class_bool>` **is_caret_blink_enabled**\ (\ )
  784. If ``true``, makes the caret blink.
  785. .. rst-class:: classref-item-separator
  786. ----
  787. .. _class_TextEdit_property_caret_blink_interval:
  788. .. rst-class:: classref-property
  789. :ref:`float<class_float>` **caret_blink_interval** = ``0.65``
  790. .. rst-class:: classref-property-setget
  791. - |void| **set_caret_blink_interval**\ (\ value\: :ref:`float<class_float>`\ )
  792. - :ref:`float<class_float>` **get_caret_blink_interval**\ (\ )
  793. The interval at which the caret blinks (in seconds).
  794. .. rst-class:: classref-item-separator
  795. ----
  796. .. _class_TextEdit_property_caret_draw_when_editable_disabled:
  797. .. rst-class:: classref-property
  798. :ref:`bool<class_bool>` **caret_draw_when_editable_disabled** = ``false``
  799. .. rst-class:: classref-property-setget
  800. - |void| **set_draw_caret_when_editable_disabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  801. - :ref:`bool<class_bool>` **is_drawing_caret_when_editable_disabled**\ (\ )
  802. If ``true``, caret will be visible when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  803. .. rst-class:: classref-item-separator
  804. ----
  805. .. _class_TextEdit_property_caret_mid_grapheme:
  806. .. rst-class:: classref-property
  807. :ref:`bool<class_bool>` **caret_mid_grapheme** = ``false``
  808. .. rst-class:: classref-property-setget
  809. - |void| **set_caret_mid_grapheme_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  810. - :ref:`bool<class_bool>` **is_caret_mid_grapheme_enabled**\ (\ )
  811. Allow moving caret, selecting and removing the individual composite character components.
  812. \ **Note:** :kbd:`Backspace` is always removing individual composite character components.
  813. .. rst-class:: classref-item-separator
  814. ----
  815. .. _class_TextEdit_property_caret_move_on_right_click:
  816. .. rst-class:: classref-property
  817. :ref:`bool<class_bool>` **caret_move_on_right_click** = ``true``
  818. .. rst-class:: classref-property-setget
  819. - |void| **set_move_caret_on_right_click_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  820. - :ref:`bool<class_bool>` **is_move_caret_on_right_click_enabled**\ (\ )
  821. If ``true``, a right-click moves the caret at the mouse position before displaying the context menu.
  822. If ``false``, the context menu ignores mouse location.
  823. .. rst-class:: classref-item-separator
  824. ----
  825. .. _class_TextEdit_property_caret_multiple:
  826. .. rst-class:: classref-property
  827. :ref:`bool<class_bool>` **caret_multiple** = ``true``
  828. .. rst-class:: classref-property-setget
  829. - |void| **set_multiple_carets_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  830. - :ref:`bool<class_bool>` **is_multiple_carets_enabled**\ (\ )
  831. Sets if multiple carets are allowed.
  832. .. rst-class:: classref-item-separator
  833. ----
  834. .. _class_TextEdit_property_caret_type:
  835. .. rst-class:: classref-property
  836. :ref:`CaretType<enum_TextEdit_CaretType>` **caret_type** = ``0``
  837. .. rst-class:: classref-property-setget
  838. - |void| **set_caret_type**\ (\ value\: :ref:`CaretType<enum_TextEdit_CaretType>`\ )
  839. - :ref:`CaretType<enum_TextEdit_CaretType>` **get_caret_type**\ (\ )
  840. Set the type of caret to draw.
  841. .. rst-class:: classref-item-separator
  842. ----
  843. .. _class_TextEdit_property_context_menu_enabled:
  844. .. rst-class:: classref-property
  845. :ref:`bool<class_bool>` **context_menu_enabled** = ``true``
  846. .. rst-class:: classref-property-setget
  847. - |void| **set_context_menu_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  848. - :ref:`bool<class_bool>` **is_context_menu_enabled**\ (\ )
  849. If ``true``, a right-click displays the context menu.
  850. .. rst-class:: classref-item-separator
  851. ----
  852. .. _class_TextEdit_property_deselect_on_focus_loss_enabled:
  853. .. rst-class:: classref-property
  854. :ref:`bool<class_bool>` **deselect_on_focus_loss_enabled** = ``true``
  855. .. rst-class:: classref-property-setget
  856. - |void| **set_deselect_on_focus_loss_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  857. - :ref:`bool<class_bool>` **is_deselect_on_focus_loss_enabled**\ (\ )
  858. If ``true``, the selected text will be deselected when focus is lost.
  859. .. rst-class:: classref-item-separator
  860. ----
  861. .. _class_TextEdit_property_drag_and_drop_selection_enabled:
  862. .. rst-class:: classref-property
  863. :ref:`bool<class_bool>` **drag_and_drop_selection_enabled** = ``true``
  864. .. rst-class:: classref-property-setget
  865. - |void| **set_drag_and_drop_selection_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  866. - :ref:`bool<class_bool>` **is_drag_and_drop_selection_enabled**\ (\ )
  867. If ``true``, allow drag and drop of selected text. Text can still be dropped from other sources.
  868. .. rst-class:: classref-item-separator
  869. ----
  870. .. _class_TextEdit_property_draw_control_chars:
  871. .. rst-class:: classref-property
  872. :ref:`bool<class_bool>` **draw_control_chars** = ``false``
  873. .. rst-class:: classref-property-setget
  874. - |void| **set_draw_control_chars**\ (\ value\: :ref:`bool<class_bool>`\ )
  875. - :ref:`bool<class_bool>` **get_draw_control_chars**\ (\ )
  876. If ``true``, control characters are displayed.
  877. .. rst-class:: classref-item-separator
  878. ----
  879. .. _class_TextEdit_property_draw_spaces:
  880. .. rst-class:: classref-property
  881. :ref:`bool<class_bool>` **draw_spaces** = ``false``
  882. .. rst-class:: classref-property-setget
  883. - |void| **set_draw_spaces**\ (\ value\: :ref:`bool<class_bool>`\ )
  884. - :ref:`bool<class_bool>` **is_drawing_spaces**\ (\ )
  885. If ``true``, the "space" character will have a visible representation.
  886. .. rst-class:: classref-item-separator
  887. ----
  888. .. _class_TextEdit_property_draw_tabs:
  889. .. rst-class:: classref-property
  890. :ref:`bool<class_bool>` **draw_tabs** = ``false``
  891. .. rst-class:: classref-property-setget
  892. - |void| **set_draw_tabs**\ (\ value\: :ref:`bool<class_bool>`\ )
  893. - :ref:`bool<class_bool>` **is_drawing_tabs**\ (\ )
  894. If ``true``, the "tab" character will have a visible representation.
  895. .. rst-class:: classref-item-separator
  896. ----
  897. .. _class_TextEdit_property_editable:
  898. .. rst-class:: classref-property
  899. :ref:`bool<class_bool>` **editable** = ``true``
  900. .. rst-class:: classref-property-setget
  901. - |void| **set_editable**\ (\ value\: :ref:`bool<class_bool>`\ )
  902. - :ref:`bool<class_bool>` **is_editable**\ (\ )
  903. If ``false``, existing text cannot be modified and new text cannot be added.
  904. .. rst-class:: classref-item-separator
  905. ----
  906. .. _class_TextEdit_property_highlight_all_occurrences:
  907. .. rst-class:: classref-property
  908. :ref:`bool<class_bool>` **highlight_all_occurrences** = ``false``
  909. .. rst-class:: classref-property-setget
  910. - |void| **set_highlight_all_occurrences**\ (\ value\: :ref:`bool<class_bool>`\ )
  911. - :ref:`bool<class_bool>` **is_highlight_all_occurrences_enabled**\ (\ )
  912. If ``true``, all occurrences of the selected text will be highlighted.
  913. .. rst-class:: classref-item-separator
  914. ----
  915. .. _class_TextEdit_property_highlight_current_line:
  916. .. rst-class:: classref-property
  917. :ref:`bool<class_bool>` **highlight_current_line** = ``false``
  918. .. rst-class:: classref-property-setget
  919. - |void| **set_highlight_current_line**\ (\ value\: :ref:`bool<class_bool>`\ )
  920. - :ref:`bool<class_bool>` **is_highlight_current_line_enabled**\ (\ )
  921. If ``true``, the line containing the cursor is highlighted.
  922. .. rst-class:: classref-item-separator
  923. ----
  924. .. _class_TextEdit_property_indent_wrapped_lines:
  925. .. rst-class:: classref-property
  926. :ref:`bool<class_bool>` **indent_wrapped_lines** = ``false``
  927. .. rst-class:: classref-property-setget
  928. - |void| **set_indent_wrapped_lines**\ (\ value\: :ref:`bool<class_bool>`\ )
  929. - :ref:`bool<class_bool>` **is_indent_wrapped_lines**\ (\ )
  930. If ``true``, all wrapped lines are indented to the same amount as the unwrapped line.
  931. .. rst-class:: classref-item-separator
  932. ----
  933. .. _class_TextEdit_property_language:
  934. .. rst-class:: classref-property
  935. :ref:`String<class_String>` **language** = ``""``
  936. .. rst-class:: classref-property-setget
  937. - |void| **set_language**\ (\ value\: :ref:`String<class_String>`\ )
  938. - :ref:`String<class_String>` **get_language**\ (\ )
  939. Language code used for line-breaking and text shaping algorithms, if left empty current locale is used instead.
  940. .. rst-class:: classref-item-separator
  941. ----
  942. .. _class_TextEdit_property_middle_mouse_paste_enabled:
  943. .. rst-class:: classref-property
  944. :ref:`bool<class_bool>` **middle_mouse_paste_enabled** = ``true``
  945. .. rst-class:: classref-property-setget
  946. - |void| **set_middle_mouse_paste_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  947. - :ref:`bool<class_bool>` **is_middle_mouse_paste_enabled**\ (\ )
  948. If ``false``, using middle mouse button to paste clipboard will be disabled.
  949. \ **Note:** This method is only implemented on Linux.
  950. .. rst-class:: classref-item-separator
  951. ----
  952. .. _class_TextEdit_property_minimap_draw:
  953. .. rst-class:: classref-property
  954. :ref:`bool<class_bool>` **minimap_draw** = ``false``
  955. .. rst-class:: classref-property-setget
  956. - |void| **set_draw_minimap**\ (\ value\: :ref:`bool<class_bool>`\ )
  957. - :ref:`bool<class_bool>` **is_drawing_minimap**\ (\ )
  958. If ``true``, a minimap is shown, providing an outline of your source code.
  959. .. rst-class:: classref-item-separator
  960. ----
  961. .. _class_TextEdit_property_minimap_width:
  962. .. rst-class:: classref-property
  963. :ref:`int<class_int>` **minimap_width** = ``80``
  964. .. rst-class:: classref-property-setget
  965. - |void| **set_minimap_width**\ (\ value\: :ref:`int<class_int>`\ )
  966. - :ref:`int<class_int>` **get_minimap_width**\ (\ )
  967. The width, in pixels, of the minimap.
  968. .. rst-class:: classref-item-separator
  969. ----
  970. .. _class_TextEdit_property_placeholder_text:
  971. .. rst-class:: classref-property
  972. :ref:`String<class_String>` **placeholder_text** = ``""``
  973. .. rst-class:: classref-property-setget
  974. - |void| **set_placeholder**\ (\ value\: :ref:`String<class_String>`\ )
  975. - :ref:`String<class_String>` **get_placeholder**\ (\ )
  976. Text shown when the **TextEdit** is empty. It is **not** the **TextEdit**'s default value (see :ref:`text<class_TextEdit_property_text>`).
  977. .. rst-class:: classref-item-separator
  978. ----
  979. .. _class_TextEdit_property_scroll_fit_content_height:
  980. .. rst-class:: classref-property
  981. :ref:`bool<class_bool>` **scroll_fit_content_height** = ``false``
  982. .. rst-class:: classref-property-setget
  983. - |void| **set_fit_content_height_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  984. - :ref:`bool<class_bool>` **is_fit_content_height_enabled**\ (\ )
  985. If ``true``, **TextEdit** will disable vertical scroll and fit minimum height to the number of visible lines.
  986. .. rst-class:: classref-item-separator
  987. ----
  988. .. _class_TextEdit_property_scroll_horizontal:
  989. .. rst-class:: classref-property
  990. :ref:`int<class_int>` **scroll_horizontal** = ``0``
  991. .. rst-class:: classref-property-setget
  992. - |void| **set_h_scroll**\ (\ value\: :ref:`int<class_int>`\ )
  993. - :ref:`int<class_int>` **get_h_scroll**\ (\ )
  994. If there is a horizontal scrollbar, this determines the current horizontal scroll value in pixels.
  995. .. rst-class:: classref-item-separator
  996. ----
  997. .. _class_TextEdit_property_scroll_past_end_of_file:
  998. .. rst-class:: classref-property
  999. :ref:`bool<class_bool>` **scroll_past_end_of_file** = ``false``
  1000. .. rst-class:: classref-property-setget
  1001. - |void| **set_scroll_past_end_of_file_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1002. - :ref:`bool<class_bool>` **is_scroll_past_end_of_file_enabled**\ (\ )
  1003. Allow scrolling past the last line into "virtual" space.
  1004. .. rst-class:: classref-item-separator
  1005. ----
  1006. .. _class_TextEdit_property_scroll_smooth:
  1007. .. rst-class:: classref-property
  1008. :ref:`bool<class_bool>` **scroll_smooth** = ``false``
  1009. .. rst-class:: classref-property-setget
  1010. - |void| **set_smooth_scroll_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1011. - :ref:`bool<class_bool>` **is_smooth_scroll_enabled**\ (\ )
  1012. Scroll smoothly over the text rather than jumping to the next location.
  1013. .. rst-class:: classref-item-separator
  1014. ----
  1015. .. _class_TextEdit_property_scroll_v_scroll_speed:
  1016. .. rst-class:: classref-property
  1017. :ref:`float<class_float>` **scroll_v_scroll_speed** = ``80.0``
  1018. .. rst-class:: classref-property-setget
  1019. - |void| **set_v_scroll_speed**\ (\ value\: :ref:`float<class_float>`\ )
  1020. - :ref:`float<class_float>` **get_v_scroll_speed**\ (\ )
  1021. Sets the scroll speed with the minimap or when :ref:`scroll_smooth<class_TextEdit_property_scroll_smooth>` is enabled.
  1022. .. rst-class:: classref-item-separator
  1023. ----
  1024. .. _class_TextEdit_property_scroll_vertical:
  1025. .. rst-class:: classref-property
  1026. :ref:`float<class_float>` **scroll_vertical** = ``0.0``
  1027. .. rst-class:: classref-property-setget
  1028. - |void| **set_v_scroll**\ (\ value\: :ref:`float<class_float>`\ )
  1029. - :ref:`float<class_float>` **get_v_scroll**\ (\ )
  1030. If there is a vertical scrollbar, this determines the current vertical scroll value in line numbers, starting at 0 for the top line.
  1031. .. rst-class:: classref-item-separator
  1032. ----
  1033. .. _class_TextEdit_property_selecting_enabled:
  1034. .. rst-class:: classref-property
  1035. :ref:`bool<class_bool>` **selecting_enabled** = ``true``
  1036. .. rst-class:: classref-property-setget
  1037. - |void| **set_selecting_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1038. - :ref:`bool<class_bool>` **is_selecting_enabled**\ (\ )
  1039. If ``true``, text can be selected.
  1040. 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.
  1041. .. rst-class:: classref-item-separator
  1042. ----
  1043. .. _class_TextEdit_property_shortcut_keys_enabled:
  1044. .. rst-class:: classref-property
  1045. :ref:`bool<class_bool>` **shortcut_keys_enabled** = ``true``
  1046. .. rst-class:: classref-property-setget
  1047. - |void| **set_shortcut_keys_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1048. - :ref:`bool<class_bool>` **is_shortcut_keys_enabled**\ (\ )
  1049. If ``true``, shortcut keys for context menu items are enabled, even if the context menu is disabled.
  1050. .. rst-class:: classref-item-separator
  1051. ----
  1052. .. _class_TextEdit_property_structured_text_bidi_override:
  1053. .. rst-class:: classref-property
  1054. :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **structured_text_bidi_override** = ``0``
  1055. .. rst-class:: classref-property-setget
  1056. - |void| **set_structured_text_bidi_override**\ (\ value\: :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>`\ )
  1057. - :ref:`StructuredTextParser<enum_TextServer_StructuredTextParser>` **get_structured_text_bidi_override**\ (\ )
  1058. Set BiDi algorithm override for the structured text.
  1059. .. rst-class:: classref-item-separator
  1060. ----
  1061. .. _class_TextEdit_property_structured_text_bidi_override_options:
  1062. .. rst-class:: classref-property
  1063. :ref:`Array<class_Array>` **structured_text_bidi_override_options** = ``[]``
  1064. .. rst-class:: classref-property-setget
  1065. - |void| **set_structured_text_bidi_override_options**\ (\ value\: :ref:`Array<class_Array>`\ )
  1066. - :ref:`Array<class_Array>` **get_structured_text_bidi_override_options**\ (\ )
  1067. Set additional options for BiDi override.
  1068. .. rst-class:: classref-item-separator
  1069. ----
  1070. .. _class_TextEdit_property_syntax_highlighter:
  1071. .. rst-class:: classref-property
  1072. :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **syntax_highlighter**
  1073. .. rst-class:: classref-property-setget
  1074. - |void| **set_syntax_highlighter**\ (\ value\: :ref:`SyntaxHighlighter<class_SyntaxHighlighter>`\ )
  1075. - :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` **get_syntax_highlighter**\ (\ )
  1076. Sets the :ref:`SyntaxHighlighter<class_SyntaxHighlighter>` to use.
  1077. .. rst-class:: classref-item-separator
  1078. ----
  1079. .. _class_TextEdit_property_text:
  1080. .. rst-class:: classref-property
  1081. :ref:`String<class_String>` **text** = ``""``
  1082. .. rst-class:: classref-property-setget
  1083. - |void| **set_text**\ (\ value\: :ref:`String<class_String>`\ )
  1084. - :ref:`String<class_String>` **get_text**\ (\ )
  1085. String value of the **TextEdit**.
  1086. .. rst-class:: classref-item-separator
  1087. ----
  1088. .. _class_TextEdit_property_text_direction:
  1089. .. rst-class:: classref-property
  1090. :ref:`TextDirection<enum_Control_TextDirection>` **text_direction** = ``0``
  1091. .. rst-class:: classref-property-setget
  1092. - |void| **set_text_direction**\ (\ value\: :ref:`TextDirection<enum_Control_TextDirection>`\ )
  1093. - :ref:`TextDirection<enum_Control_TextDirection>` **get_text_direction**\ (\ )
  1094. Base text writing direction.
  1095. .. rst-class:: classref-item-separator
  1096. ----
  1097. .. _class_TextEdit_property_virtual_keyboard_enabled:
  1098. .. rst-class:: classref-property
  1099. :ref:`bool<class_bool>` **virtual_keyboard_enabled** = ``true``
  1100. .. rst-class:: classref-property-setget
  1101. - |void| **set_virtual_keyboard_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
  1102. - :ref:`bool<class_bool>` **is_virtual_keyboard_enabled**\ (\ )
  1103. If ``true``, the native virtual keyboard is shown when focused on platforms that support it.
  1104. .. rst-class:: classref-item-separator
  1105. ----
  1106. .. _class_TextEdit_property_wrap_mode:
  1107. .. rst-class:: classref-property
  1108. :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **wrap_mode** = ``0``
  1109. .. rst-class:: classref-property-setget
  1110. - |void| **set_line_wrapping_mode**\ (\ value\: :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>`\ )
  1111. - :ref:`LineWrappingMode<enum_TextEdit_LineWrappingMode>` **get_line_wrapping_mode**\ (\ )
  1112. Sets the line wrapping mode to use.
  1113. .. rst-class:: classref-section-separator
  1114. ----
  1115. .. rst-class:: classref-descriptions-group
  1116. Method Descriptions
  1117. -------------------
  1118. .. _class_TextEdit_private_method__backspace:
  1119. .. rst-class:: classref-method
  1120. |void| **_backspace**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1121. Override this method to define what happens when the user presses the backspace key.
  1122. .. rst-class:: classref-item-separator
  1123. ----
  1124. .. _class_TextEdit_private_method__copy:
  1125. .. rst-class:: classref-method
  1126. |void| **_copy**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1127. Override this method to define what happens when the user performs a copy operation.
  1128. .. rst-class:: classref-item-separator
  1129. ----
  1130. .. _class_TextEdit_private_method__cut:
  1131. .. rst-class:: classref-method
  1132. |void| **_cut**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1133. Override this method to define what happens when the user performs a cut operation.
  1134. .. rst-class:: classref-item-separator
  1135. ----
  1136. .. _class_TextEdit_private_method__handle_unicode_input:
  1137. .. rst-class:: classref-method
  1138. |void| **_handle_unicode_input**\ (\ unicode_char\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1139. Override this method to define what happens when the user types in the provided key ``unicode_char``.
  1140. .. rst-class:: classref-item-separator
  1141. ----
  1142. .. _class_TextEdit_private_method__paste:
  1143. .. rst-class:: classref-method
  1144. |void| **_paste**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1145. Override this method to define what happens when the user performs a paste operation.
  1146. .. rst-class:: classref-item-separator
  1147. ----
  1148. .. _class_TextEdit_private_method__paste_primary_clipboard:
  1149. .. rst-class:: classref-method
  1150. |void| **_paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>`\ ) |virtual|
  1151. Override this method to define what happens when the user performs a paste operation with middle mouse button.
  1152. \ **Note:** This method is only implemented on Linux.
  1153. .. rst-class:: classref-item-separator
  1154. ----
  1155. .. _class_TextEdit_method_add_caret:
  1156. .. rst-class:: classref-method
  1157. :ref:`int<class_int>` **add_caret**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ )
  1158. Adds a new caret at the given location. Returns the index of the new caret, or ``-1`` if the location is invalid.
  1159. .. rst-class:: classref-item-separator
  1160. ----
  1161. .. _class_TextEdit_method_add_caret_at_carets:
  1162. .. rst-class:: classref-method
  1163. |void| **add_caret_at_carets**\ (\ below\: :ref:`bool<class_bool>`\ )
  1164. Adds an additional caret above or below every caret. If ``below`` is ``true`` the new caret will be added below and above otherwise.
  1165. .. rst-class:: classref-item-separator
  1166. ----
  1167. .. _class_TextEdit_method_add_gutter:
  1168. .. rst-class:: classref-method
  1169. |void| **add_gutter**\ (\ at\: :ref:`int<class_int>` = -1\ )
  1170. 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.
  1171. .. rst-class:: classref-item-separator
  1172. ----
  1173. .. _class_TextEdit_method_add_selection_for_next_occurrence:
  1174. .. rst-class:: classref-method
  1175. |void| **add_selection_for_next_occurrence**\ (\ )
  1176. Adds a selection and a caret for the next occurrence of the current selection. If there is no active selection, selects word under caret.
  1177. .. rst-class:: classref-item-separator
  1178. ----
  1179. .. _class_TextEdit_method_adjust_carets_after_edit:
  1180. .. rst-class:: classref-method
  1181. |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>`\ )
  1182. **Deprecated:** No longer necessary since methods now adjust carets themselves.
  1183. This method does nothing.
  1184. .. rst-class:: classref-item-separator
  1185. ----
  1186. .. _class_TextEdit_method_adjust_viewport_to_caret:
  1187. .. rst-class:: classref-method
  1188. |void| **adjust_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ )
  1189. Adjust the viewport so the caret is visible.
  1190. .. rst-class:: classref-item-separator
  1191. ----
  1192. .. _class_TextEdit_method_apply_ime:
  1193. .. rst-class:: classref-method
  1194. |void| **apply_ime**\ (\ )
  1195. 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.
  1196. .. rst-class:: classref-item-separator
  1197. ----
  1198. .. _class_TextEdit_method_backspace:
  1199. .. rst-class:: classref-method
  1200. |void| **backspace**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1201. Called when the user presses the backspace key. Can be overridden with :ref:`_backspace<class_TextEdit_private_method__backspace>`.
  1202. .. rst-class:: classref-item-separator
  1203. ----
  1204. .. _class_TextEdit_method_begin_complex_operation:
  1205. .. rst-class:: classref-method
  1206. |void| **begin_complex_operation**\ (\ )
  1207. 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.
  1208. .. rst-class:: classref-item-separator
  1209. ----
  1210. .. _class_TextEdit_method_begin_multicaret_edit:
  1211. .. rst-class:: classref-method
  1212. |void| **begin_multicaret_edit**\ (\ )
  1213. 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>`.
  1214. Example usage:
  1215. ::
  1216. begin_complex_operation()
  1217. begin_multicaret_edit()
  1218. for i in range(get_caret_count()):
  1219. if multicaret_edit_ignore_caret(i):
  1220. continue
  1221. # Logic here.
  1222. end_multicaret_edit()
  1223. end_complex_operation()
  1224. .. rst-class:: classref-item-separator
  1225. ----
  1226. .. _class_TextEdit_method_cancel_ime:
  1227. .. rst-class:: classref-method
  1228. |void| **cancel_ime**\ (\ )
  1229. 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.
  1230. .. rst-class:: classref-item-separator
  1231. ----
  1232. .. _class_TextEdit_method_center_viewport_to_caret:
  1233. .. rst-class:: classref-method
  1234. |void| **center_viewport_to_caret**\ (\ caret_index\: :ref:`int<class_int>` = 0\ )
  1235. 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``.
  1236. .. rst-class:: classref-item-separator
  1237. ----
  1238. .. _class_TextEdit_method_clear:
  1239. .. rst-class:: classref-method
  1240. |void| **clear**\ (\ )
  1241. Performs a full reset of **TextEdit**, including undo history.
  1242. .. rst-class:: classref-item-separator
  1243. ----
  1244. .. _class_TextEdit_method_clear_undo_history:
  1245. .. rst-class:: classref-method
  1246. |void| **clear_undo_history**\ (\ )
  1247. Clears the undo history.
  1248. .. rst-class:: classref-item-separator
  1249. ----
  1250. .. _class_TextEdit_method_collapse_carets:
  1251. .. rst-class:: classref-method
  1252. |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\ )
  1253. Collapse all carets in the given range to the ``from_line`` and ``from_column`` position.
  1254. \ ``inclusive`` applies to both ends.
  1255. 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>`.
  1256. \ :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>` will be called if any carets were collapsed.
  1257. .. rst-class:: classref-item-separator
  1258. ----
  1259. .. _class_TextEdit_method_copy:
  1260. .. rst-class:: classref-method
  1261. |void| **copy**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1262. Copies the current text selection. Can be overridden with :ref:`_copy<class_TextEdit_private_method__copy>`.
  1263. .. rst-class:: classref-item-separator
  1264. ----
  1265. .. _class_TextEdit_method_cut:
  1266. .. rst-class:: classref-method
  1267. |void| **cut**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1268. Cut's the current selection. Can be overridden with :ref:`_cut<class_TextEdit_private_method__cut>`.
  1269. .. rst-class:: classref-item-separator
  1270. ----
  1271. .. _class_TextEdit_method_delete_selection:
  1272. .. rst-class:: classref-method
  1273. |void| **delete_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1274. Deletes the selected text.
  1275. .. rst-class:: classref-item-separator
  1276. ----
  1277. .. _class_TextEdit_method_deselect:
  1278. .. rst-class:: classref-method
  1279. |void| **deselect**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1280. Deselects the current selection.
  1281. .. rst-class:: classref-item-separator
  1282. ----
  1283. .. _class_TextEdit_method_end_action:
  1284. .. rst-class:: classref-method
  1285. |void| **end_action**\ (\ )
  1286. Marks the end of steps in the current action started with :ref:`start_action<class_TextEdit_method_start_action>`.
  1287. .. rst-class:: classref-item-separator
  1288. ----
  1289. .. _class_TextEdit_method_end_complex_operation:
  1290. .. rst-class:: classref-method
  1291. |void| **end_complex_operation**\ (\ )
  1292. 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.
  1293. .. rst-class:: classref-item-separator
  1294. ----
  1295. .. _class_TextEdit_method_end_multicaret_edit:
  1296. .. rst-class:: classref-method
  1297. |void| **end_multicaret_edit**\ (\ )
  1298. 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.
  1299. .. rst-class:: classref-item-separator
  1300. ----
  1301. .. _class_TextEdit_method_get_caret_column:
  1302. .. rst-class:: classref-method
  1303. :ref:`int<class_int>` **get_caret_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1304. Returns the column the editing caret is at.
  1305. .. rst-class:: classref-item-separator
  1306. ----
  1307. .. _class_TextEdit_method_get_caret_count:
  1308. .. rst-class:: classref-method
  1309. :ref:`int<class_int>` **get_caret_count**\ (\ ) |const|
  1310. Returns the number of carets in this **TextEdit**.
  1311. .. rst-class:: classref-item-separator
  1312. ----
  1313. .. _class_TextEdit_method_get_caret_draw_pos:
  1314. .. rst-class:: classref-method
  1315. :ref:`Vector2<class_Vector2>` **get_caret_draw_pos**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1316. Returns the caret pixel draw position.
  1317. .. rst-class:: classref-item-separator
  1318. ----
  1319. .. _class_TextEdit_method_get_caret_index_edit_order:
  1320. .. rst-class:: classref-method
  1321. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_caret_index_edit_order**\ (\ )
  1322. **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.
  1323. 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.
  1324. .. rst-class:: classref-item-separator
  1325. ----
  1326. .. _class_TextEdit_method_get_caret_line:
  1327. .. rst-class:: classref-method
  1328. :ref:`int<class_int>` **get_caret_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1329. Returns the line the editing caret is on.
  1330. .. rst-class:: classref-item-separator
  1331. ----
  1332. .. _class_TextEdit_method_get_caret_wrap_index:
  1333. .. rst-class:: classref-method
  1334. :ref:`int<class_int>` **get_caret_wrap_index**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1335. Returns the wrap index the editing caret is on.
  1336. .. rst-class:: classref-item-separator
  1337. ----
  1338. .. _class_TextEdit_method_get_first_non_whitespace_column:
  1339. .. rst-class:: classref-method
  1340. :ref:`int<class_int>` **get_first_non_whitespace_column**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1341. Returns the first column containing a non-whitespace character.
  1342. .. rst-class:: classref-item-separator
  1343. ----
  1344. .. _class_TextEdit_method_get_first_visible_line:
  1345. .. rst-class:: classref-method
  1346. :ref:`int<class_int>` **get_first_visible_line**\ (\ ) |const|
  1347. Returns the first visible line.
  1348. .. rst-class:: classref-item-separator
  1349. ----
  1350. .. _class_TextEdit_method_get_gutter_count:
  1351. .. rst-class:: classref-method
  1352. :ref:`int<class_int>` **get_gutter_count**\ (\ ) |const|
  1353. Returns the number of gutters registered.
  1354. .. rst-class:: classref-item-separator
  1355. ----
  1356. .. _class_TextEdit_method_get_gutter_name:
  1357. .. rst-class:: classref-method
  1358. :ref:`String<class_String>` **get_gutter_name**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1359. Returns the name of the gutter at the given index.
  1360. .. rst-class:: classref-item-separator
  1361. ----
  1362. .. _class_TextEdit_method_get_gutter_type:
  1363. .. rst-class:: classref-method
  1364. :ref:`GutterType<enum_TextEdit_GutterType>` **get_gutter_type**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1365. Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals. See :ref:`GutterType<enum_TextEdit_GutterType>` for options.
  1366. .. rst-class:: classref-item-separator
  1367. ----
  1368. .. _class_TextEdit_method_get_gutter_width:
  1369. .. rst-class:: classref-method
  1370. :ref:`int<class_int>` **get_gutter_width**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1371. Returns the width of the gutter at the given index.
  1372. .. rst-class:: classref-item-separator
  1373. ----
  1374. .. _class_TextEdit_method_get_h_scroll_bar:
  1375. .. rst-class:: classref-method
  1376. :ref:`HScrollBar<class_HScrollBar>` **get_h_scroll_bar**\ (\ ) |const|
  1377. Returns the :ref:`HScrollBar<class_HScrollBar>` used by **TextEdit**.
  1378. .. rst-class:: classref-item-separator
  1379. ----
  1380. .. _class_TextEdit_method_get_indent_level:
  1381. .. rst-class:: classref-method
  1382. :ref:`int<class_int>` **get_indent_level**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1383. Returns the number of spaces and ``tab * tab_size`` before the first char.
  1384. .. rst-class:: classref-item-separator
  1385. ----
  1386. .. _class_TextEdit_method_get_last_full_visible_line:
  1387. .. rst-class:: classref-method
  1388. :ref:`int<class_int>` **get_last_full_visible_line**\ (\ ) |const|
  1389. 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.
  1390. .. rst-class:: classref-item-separator
  1391. ----
  1392. .. _class_TextEdit_method_get_last_full_visible_line_wrap_index:
  1393. .. rst-class:: classref-method
  1394. :ref:`int<class_int>` **get_last_full_visible_line_wrap_index**\ (\ ) |const|
  1395. Returns the last visible wrap index of the last visible line.
  1396. .. rst-class:: classref-item-separator
  1397. ----
  1398. .. _class_TextEdit_method_get_last_unhidden_line:
  1399. .. rst-class:: classref-method
  1400. :ref:`int<class_int>` **get_last_unhidden_line**\ (\ ) |const|
  1401. Returns the last unhidden line in the entire **TextEdit**.
  1402. .. rst-class:: classref-item-separator
  1403. ----
  1404. .. _class_TextEdit_method_get_line:
  1405. .. rst-class:: classref-method
  1406. :ref:`String<class_String>` **get_line**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1407. Returns the text of a specific line.
  1408. .. rst-class:: classref-item-separator
  1409. ----
  1410. .. _class_TextEdit_method_get_line_background_color:
  1411. .. rst-class:: classref-method
  1412. :ref:`Color<class_Color>` **get_line_background_color**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1413. Returns the current background color of the line. ``Color(0, 0, 0, 0)`` is returned if no color is set.
  1414. .. rst-class:: classref-item-separator
  1415. ----
  1416. .. _class_TextEdit_method_get_line_column_at_pos:
  1417. .. rst-class:: classref-method
  1418. :ref:`Vector2i<class_Vector2i>` **get_line_column_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`, allow_out_of_bounds\: :ref:`bool<class_bool>` = true\ ) |const|
  1419. Returns the line and column at the given position. In the returned vector, ``x`` is the column, ``y`` is the line. If ``allow_out_of_bounds`` is ``false`` and the position is not over the text, both vector values will be set to ``-1``.
  1420. .. rst-class:: classref-item-separator
  1421. ----
  1422. .. _class_TextEdit_method_get_line_count:
  1423. .. rst-class:: classref-method
  1424. :ref:`int<class_int>` **get_line_count**\ (\ ) |const|
  1425. Returns the number of lines in the text.
  1426. .. rst-class:: classref-item-separator
  1427. ----
  1428. .. _class_TextEdit_method_get_line_gutter_icon:
  1429. .. rst-class:: classref-method
  1430. :ref:`Texture2D<class_Texture2D>` **get_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const|
  1431. 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>`).
  1432. .. rst-class:: classref-item-separator
  1433. ----
  1434. .. _class_TextEdit_method_get_line_gutter_item_color:
  1435. .. rst-class:: classref-method
  1436. :ref:`Color<class_Color>` **get_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const|
  1437. Returns the color currently in ``gutter`` at ``line``.
  1438. .. rst-class:: classref-item-separator
  1439. ----
  1440. .. _class_TextEdit_method_get_line_gutter_metadata:
  1441. .. rst-class:: classref-method
  1442. :ref:`Variant<class_Variant>` **get_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const|
  1443. Returns the metadata currently in ``gutter`` at ``line``.
  1444. .. rst-class:: classref-item-separator
  1445. ----
  1446. .. _class_TextEdit_method_get_line_gutter_text:
  1447. .. rst-class:: classref-method
  1448. :ref:`String<class_String>` **get_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const|
  1449. 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>`).
  1450. .. rst-class:: classref-item-separator
  1451. ----
  1452. .. _class_TextEdit_method_get_line_height:
  1453. .. rst-class:: classref-method
  1454. :ref:`int<class_int>` **get_line_height**\ (\ ) |const|
  1455. Returns the maximum value of the line height among all lines.
  1456. \ **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``.
  1457. .. rst-class:: classref-item-separator
  1458. ----
  1459. .. _class_TextEdit_method_get_line_ranges_from_carets:
  1460. .. rst-class:: classref-method
  1461. :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|
  1462. 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.
  1463. 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.
  1464. .. rst-class:: classref-item-separator
  1465. ----
  1466. .. _class_TextEdit_method_get_line_width:
  1467. .. rst-class:: classref-method
  1468. :ref:`int<class_int>` **get_line_width**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = -1\ ) |const|
  1469. Returns the width in pixels of the ``wrap_index`` on ``line``.
  1470. .. rst-class:: classref-item-separator
  1471. ----
  1472. .. _class_TextEdit_method_get_line_wrap_count:
  1473. .. rst-class:: classref-method
  1474. :ref:`int<class_int>` **get_line_wrap_count**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1475. Returns the number of times the given line is wrapped.
  1476. .. rst-class:: classref-item-separator
  1477. ----
  1478. .. _class_TextEdit_method_get_line_wrap_index_at_column:
  1479. .. rst-class:: classref-method
  1480. :ref:`int<class_int>` **get_line_wrap_index_at_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const|
  1481. Returns the wrap index of the given line column.
  1482. .. rst-class:: classref-item-separator
  1483. ----
  1484. .. _class_TextEdit_method_get_line_wrapped_text:
  1485. .. rst-class:: classref-method
  1486. :ref:`PackedStringArray<class_PackedStringArray>` **get_line_wrapped_text**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1487. Returns an array of :ref:`String<class_String>`\ s representing each wrapped index.
  1488. .. rst-class:: classref-item-separator
  1489. ----
  1490. .. _class_TextEdit_method_get_local_mouse_pos:
  1491. .. rst-class:: classref-method
  1492. :ref:`Vector2<class_Vector2>` **get_local_mouse_pos**\ (\ ) |const|
  1493. Returns the local mouse position adjusted for the text direction.
  1494. .. rst-class:: classref-item-separator
  1495. ----
  1496. .. _class_TextEdit_method_get_menu:
  1497. .. rst-class:: classref-method
  1498. :ref:`PopupMenu<class_PopupMenu>` **get_menu**\ (\ ) |const|
  1499. Returns the :ref:`PopupMenu<class_PopupMenu>` of this **TextEdit**. By default, this menu is displayed when right-clicking on the **TextEdit**.
  1500. 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:
  1501. .. tabs::
  1502. .. code-tab:: gdscript
  1503. func _ready():
  1504. var menu = get_menu()
  1505. # Remove all items after "Redo".
  1506. menu.item_count = menu.get_item_index(MENU_REDO) + 1
  1507. # Add custom items.
  1508. menu.add_separator()
  1509. menu.add_item("Insert Date", MENU_MAX + 1)
  1510. # Connect callback.
  1511. menu.id_pressed.connect(_on_item_pressed)
  1512. func _on_item_pressed(id):
  1513. if id == MENU_MAX + 1:
  1514. insert_text_at_caret(Time.get_date_string_from_system())
  1515. .. code-tab:: csharp
  1516. public override void _Ready()
  1517. {
  1518. var menu = GetMenu();
  1519. // Remove all items after "Redo".
  1520. menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;
  1521. // Add custom items.
  1522. menu.AddSeparator();
  1523. menu.AddItem("Insert Date", TextEdit.MenuItems.Max + 1);
  1524. // Add event handler.
  1525. menu.IdPressed += OnItemPressed;
  1526. }
  1527. public void OnItemPressed(int id)
  1528. {
  1529. if (id == TextEdit.MenuItems.Max + 1)
  1530. {
  1531. InsertTextAtCaret(Time.GetDateStringFromSystem());
  1532. }
  1533. }
  1534. \ **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.
  1535. .. rst-class:: classref-item-separator
  1536. ----
  1537. .. _class_TextEdit_method_get_minimap_line_at_pos:
  1538. .. rst-class:: classref-method
  1539. :ref:`int<class_int>` **get_minimap_line_at_pos**\ (\ position\: :ref:`Vector2i<class_Vector2i>`\ ) |const|
  1540. Returns the equivalent minimap line at ``position``.
  1541. .. rst-class:: classref-item-separator
  1542. ----
  1543. .. _class_TextEdit_method_get_minimap_visible_lines:
  1544. .. rst-class:: classref-method
  1545. :ref:`int<class_int>` **get_minimap_visible_lines**\ (\ ) |const|
  1546. Returns the number of lines that may be drawn on the minimap.
  1547. .. rst-class:: classref-item-separator
  1548. ----
  1549. .. _class_TextEdit_method_get_next_visible_line_index_offset_from:
  1550. .. rst-class:: classref-method
  1551. :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|
  1552. 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.
  1553. .. rst-class:: classref-item-separator
  1554. ----
  1555. .. _class_TextEdit_method_get_next_visible_line_offset_from:
  1556. .. rst-class:: classref-method
  1557. :ref:`int<class_int>` **get_next_visible_line_offset_from**\ (\ line\: :ref:`int<class_int>`, visible_amount\: :ref:`int<class_int>`\ ) |const|
  1558. 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.
  1559. .. rst-class:: classref-item-separator
  1560. ----
  1561. .. _class_TextEdit_method_get_pos_at_line_column:
  1562. .. rst-class:: classref-method
  1563. :ref:`Vector2i<class_Vector2i>` **get_pos_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const|
  1564. 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.
  1565. \ **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.
  1566. .. rst-class:: classref-item-separator
  1567. ----
  1568. .. _class_TextEdit_method_get_rect_at_line_column:
  1569. .. rst-class:: classref-method
  1570. :ref:`Rect2i<class_Rect2i>` **get_rect_at_line_column**\ (\ line\: :ref:`int<class_int>`, column\: :ref:`int<class_int>`\ ) |const|
  1571. 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.
  1572. \ **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.
  1573. .. rst-class:: classref-item-separator
  1574. ----
  1575. .. _class_TextEdit_method_get_saved_version:
  1576. .. rst-class:: classref-method
  1577. :ref:`int<class_int>` **get_saved_version**\ (\ ) |const|
  1578. Returns the last tagged saved version from :ref:`tag_saved_version<class_TextEdit_method_tag_saved_version>`.
  1579. .. rst-class:: classref-item-separator
  1580. ----
  1581. .. _class_TextEdit_method_get_scroll_pos_for_line:
  1582. .. rst-class:: classref-method
  1583. :ref:`float<class_float>` **get_scroll_pos_for_line**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ ) |const|
  1584. Returns the scroll position for ``wrap_index`` of ``line``.
  1585. .. rst-class:: classref-item-separator
  1586. ----
  1587. .. _class_TextEdit_method_get_selected_text:
  1588. .. rst-class:: classref-method
  1589. :ref:`String<class_String>` **get_selected_text**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1590. Returns the text inside the selection of a caret, or all the carets if ``caret_index`` is its default value ``-1``.
  1591. .. rst-class:: classref-item-separator
  1592. ----
  1593. .. _class_TextEdit_method_get_selection_at_line_column:
  1594. .. rst-class:: classref-method
  1595. :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|
  1596. Returns the caret index of the selection at the given ``line`` and ``column``, or ``-1`` if there is none.
  1597. 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.
  1598. .. rst-class:: classref-item-separator
  1599. ----
  1600. .. _class_TextEdit_method_get_selection_column:
  1601. .. rst-class:: classref-method
  1602. :ref:`int<class_int>` **get_selection_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1603. **Deprecated:** Use :ref:`get_selection_origin_column<class_TextEdit_method_get_selection_origin_column>` instead.
  1604. Returns the original start column of the selection.
  1605. .. rst-class:: classref-item-separator
  1606. ----
  1607. .. _class_TextEdit_method_get_selection_from_column:
  1608. .. rst-class:: classref-method
  1609. :ref:`int<class_int>` **get_selection_from_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1610. Returns the selection begin column. Returns the caret column if there is no selection.
  1611. .. rst-class:: classref-item-separator
  1612. ----
  1613. .. _class_TextEdit_method_get_selection_from_line:
  1614. .. rst-class:: classref-method
  1615. :ref:`int<class_int>` **get_selection_from_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1616. Returns the selection begin line. Returns the caret line if there is no selection.
  1617. .. rst-class:: classref-item-separator
  1618. ----
  1619. .. _class_TextEdit_method_get_selection_line:
  1620. .. rst-class:: classref-method
  1621. :ref:`int<class_int>` **get_selection_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1622. **Deprecated:** Use :ref:`get_selection_origin_line<class_TextEdit_method_get_selection_origin_line>` instead.
  1623. Returns the original start line of the selection.
  1624. .. rst-class:: classref-item-separator
  1625. ----
  1626. .. _class_TextEdit_method_get_selection_mode:
  1627. .. rst-class:: classref-method
  1628. :ref:`SelectionMode<enum_TextEdit_SelectionMode>` **get_selection_mode**\ (\ ) |const|
  1629. Returns the current selection mode.
  1630. .. rst-class:: classref-item-separator
  1631. ----
  1632. .. _class_TextEdit_method_get_selection_origin_column:
  1633. .. rst-class:: classref-method
  1634. :ref:`int<class_int>` **get_selection_origin_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1635. Returns the origin column of the selection. This is the opposite end from the caret.
  1636. .. rst-class:: classref-item-separator
  1637. ----
  1638. .. _class_TextEdit_method_get_selection_origin_line:
  1639. .. rst-class:: classref-method
  1640. :ref:`int<class_int>` **get_selection_origin_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1641. Returns the origin line of the selection. This is the opposite end from the caret.
  1642. .. rst-class:: classref-item-separator
  1643. ----
  1644. .. _class_TextEdit_method_get_selection_to_column:
  1645. .. rst-class:: classref-method
  1646. :ref:`int<class_int>` **get_selection_to_column**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1647. Returns the selection end column. Returns the caret column if there is no selection.
  1648. .. rst-class:: classref-item-separator
  1649. ----
  1650. .. _class_TextEdit_method_get_selection_to_line:
  1651. .. rst-class:: classref-method
  1652. :ref:`int<class_int>` **get_selection_to_line**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1653. Returns the selection end line. Returns the caret line if there is no selection.
  1654. .. rst-class:: classref-item-separator
  1655. ----
  1656. .. _class_TextEdit_method_get_sorted_carets:
  1657. .. rst-class:: classref-method
  1658. :ref:`PackedInt32Array<class_PackedInt32Array>` **get_sorted_carets**\ (\ include_ignored_carets\: :ref:`bool<class_bool>` = false\ ) |const|
  1659. Returns the carets sorted by selection beginning from lowest line and column to highest (from top to bottom of text).
  1660. If ``include_ignored_carets`` is ``false``, carets from :ref:`multicaret_edit_ignore_caret<class_TextEdit_method_multicaret_edit_ignore_caret>` will be ignored.
  1661. .. rst-class:: classref-item-separator
  1662. ----
  1663. .. _class_TextEdit_method_get_tab_size:
  1664. .. rst-class:: classref-method
  1665. :ref:`int<class_int>` **get_tab_size**\ (\ ) |const|
  1666. Returns the **TextEdit**'s' tab size.
  1667. .. rst-class:: classref-item-separator
  1668. ----
  1669. .. _class_TextEdit_method_get_total_gutter_width:
  1670. .. rst-class:: classref-method
  1671. :ref:`int<class_int>` **get_total_gutter_width**\ (\ ) |const|
  1672. Returns the total width of all gutters and internal padding.
  1673. .. rst-class:: classref-item-separator
  1674. ----
  1675. .. _class_TextEdit_method_get_total_visible_line_count:
  1676. .. rst-class:: classref-method
  1677. :ref:`int<class_int>` **get_total_visible_line_count**\ (\ ) |const|
  1678. Returns the number of lines that may be drawn.
  1679. .. rst-class:: classref-item-separator
  1680. ----
  1681. .. _class_TextEdit_method_get_v_scroll_bar:
  1682. .. rst-class:: classref-method
  1683. :ref:`VScrollBar<class_VScrollBar>` **get_v_scroll_bar**\ (\ ) |const|
  1684. Returns the :ref:`VScrollBar<class_VScrollBar>` of the **TextEdit**.
  1685. .. rst-class:: classref-item-separator
  1686. ----
  1687. .. _class_TextEdit_method_get_version:
  1688. .. rst-class:: classref-method
  1689. :ref:`int<class_int>` **get_version**\ (\ ) |const|
  1690. Returns the current version of the **TextEdit**. The version is a count of recorded operations by the undo/redo history.
  1691. .. rst-class:: classref-item-separator
  1692. ----
  1693. .. _class_TextEdit_method_get_visible_line_count:
  1694. .. rst-class:: classref-method
  1695. :ref:`int<class_int>` **get_visible_line_count**\ (\ ) |const|
  1696. Returns the number of visible lines, including wrapped text.
  1697. .. rst-class:: classref-item-separator
  1698. ----
  1699. .. _class_TextEdit_method_get_visible_line_count_in_range:
  1700. .. rst-class:: classref-method
  1701. :ref:`int<class_int>` **get_visible_line_count_in_range**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ ) |const|
  1702. Returns the total number of visible + wrapped lines between the two lines.
  1703. .. rst-class:: classref-item-separator
  1704. ----
  1705. .. _class_TextEdit_method_get_word_at_pos:
  1706. .. rst-class:: classref-method
  1707. :ref:`String<class_String>` **get_word_at_pos**\ (\ position\: :ref:`Vector2<class_Vector2>`\ ) |const|
  1708. Returns the word at ``position``.
  1709. .. rst-class:: classref-item-separator
  1710. ----
  1711. .. _class_TextEdit_method_get_word_under_caret:
  1712. .. rst-class:: classref-method
  1713. :ref:`String<class_String>` **get_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const|
  1714. Returns a :ref:`String<class_String>` text with the word under the caret's location.
  1715. .. rst-class:: classref-item-separator
  1716. ----
  1717. .. _class_TextEdit_method_has_ime_text:
  1718. .. rst-class:: classref-method
  1719. :ref:`bool<class_bool>` **has_ime_text**\ (\ ) |const|
  1720. Returns ``true`` if the user has text in the `Input Method Editor <https://en.wikipedia.org/wiki/Input_method>`__ (IME).
  1721. .. rst-class:: classref-item-separator
  1722. ----
  1723. .. _class_TextEdit_method_has_redo:
  1724. .. rst-class:: classref-method
  1725. :ref:`bool<class_bool>` **has_redo**\ (\ ) |const|
  1726. Returns ``true`` if a "redo" action is available.
  1727. .. rst-class:: classref-item-separator
  1728. ----
  1729. .. _class_TextEdit_method_has_selection:
  1730. .. rst-class:: classref-method
  1731. :ref:`bool<class_bool>` **has_selection**\ (\ caret_index\: :ref:`int<class_int>` = -1\ ) |const|
  1732. Returns ``true`` if the user has selected text.
  1733. .. rst-class:: classref-item-separator
  1734. ----
  1735. .. _class_TextEdit_method_has_undo:
  1736. .. rst-class:: classref-method
  1737. :ref:`bool<class_bool>` **has_undo**\ (\ ) |const|
  1738. Returns ``true`` if an "undo" action is available.
  1739. .. rst-class:: classref-item-separator
  1740. ----
  1741. .. _class_TextEdit_method_insert_line_at:
  1742. .. rst-class:: classref-method
  1743. |void| **insert_line_at**\ (\ line\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ )
  1744. Inserts a new line with ``text`` at ``line``.
  1745. .. rst-class:: classref-item-separator
  1746. ----
  1747. .. _class_TextEdit_method_insert_text:
  1748. .. rst-class:: classref-method
  1749. |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\ )
  1750. Inserts the ``text`` at ``line`` and ``column``.
  1751. 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.
  1752. 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.
  1753. .. rst-class:: classref-item-separator
  1754. ----
  1755. .. _class_TextEdit_method_insert_text_at_caret:
  1756. .. rst-class:: classref-method
  1757. |void| **insert_text_at_caret**\ (\ text\: :ref:`String<class_String>`, caret_index\: :ref:`int<class_int>` = -1\ )
  1758. Insert the specified text at the caret position.
  1759. .. rst-class:: classref-item-separator
  1760. ----
  1761. .. _class_TextEdit_method_is_caret_after_selection_origin:
  1762. .. rst-class:: classref-method
  1763. :ref:`bool<class_bool>` **is_caret_after_selection_origin**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1764. Returns ``true`` if the caret of the selection is after the selection origin. This can be used to determine the direction of the selection.
  1765. .. rst-class:: classref-item-separator
  1766. ----
  1767. .. _class_TextEdit_method_is_caret_visible:
  1768. .. rst-class:: classref-method
  1769. :ref:`bool<class_bool>` **is_caret_visible**\ (\ caret_index\: :ref:`int<class_int>` = 0\ ) |const|
  1770. Returns ``true`` if the caret is visible on the screen.
  1771. .. rst-class:: classref-item-separator
  1772. ----
  1773. .. _class_TextEdit_method_is_dragging_cursor:
  1774. .. rst-class:: classref-method
  1775. :ref:`bool<class_bool>` **is_dragging_cursor**\ (\ ) |const|
  1776. Returns ``true`` if the user is dragging their mouse for scrolling, selecting, or text dragging.
  1777. .. rst-class:: classref-item-separator
  1778. ----
  1779. .. _class_TextEdit_method_is_gutter_clickable:
  1780. .. rst-class:: classref-method
  1781. :ref:`bool<class_bool>` **is_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1782. Returns whether the gutter is clickable.
  1783. .. rst-class:: classref-item-separator
  1784. ----
  1785. .. _class_TextEdit_method_is_gutter_drawn:
  1786. .. rst-class:: classref-method
  1787. :ref:`bool<class_bool>` **is_gutter_drawn**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1788. Returns whether the gutter is currently drawn.
  1789. .. rst-class:: classref-item-separator
  1790. ----
  1791. .. _class_TextEdit_method_is_gutter_overwritable:
  1792. .. rst-class:: classref-method
  1793. :ref:`bool<class_bool>` **is_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`\ ) |const|
  1794. Returns whether the gutter is overwritable.
  1795. .. rst-class:: classref-item-separator
  1796. ----
  1797. .. _class_TextEdit_method_is_in_mulitcaret_edit:
  1798. .. rst-class:: classref-method
  1799. :ref:`bool<class_bool>` **is_in_mulitcaret_edit**\ (\ ) |const|
  1800. 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.
  1801. .. rst-class:: classref-item-separator
  1802. ----
  1803. .. _class_TextEdit_method_is_line_gutter_clickable:
  1804. .. rst-class:: classref-method
  1805. :ref:`bool<class_bool>` **is_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`\ ) |const|
  1806. Returns whether the gutter on the given line is clickable.
  1807. .. rst-class:: classref-item-separator
  1808. ----
  1809. .. _class_TextEdit_method_is_line_wrapped:
  1810. .. rst-class:: classref-method
  1811. :ref:`bool<class_bool>` **is_line_wrapped**\ (\ line\: :ref:`int<class_int>`\ ) |const|
  1812. Returns if the given line is wrapped.
  1813. .. rst-class:: classref-item-separator
  1814. ----
  1815. .. _class_TextEdit_method_is_menu_visible:
  1816. .. rst-class:: classref-method
  1817. :ref:`bool<class_bool>` **is_menu_visible**\ (\ ) |const|
  1818. Returns whether the menu is visible. Use this instead of ``get_menu().visible`` to improve performance (so the creation of the menu is avoided).
  1819. .. rst-class:: classref-item-separator
  1820. ----
  1821. .. _class_TextEdit_method_is_mouse_over_selection:
  1822. .. rst-class:: classref-method
  1823. :ref:`bool<class_bool>` **is_mouse_over_selection**\ (\ edges\: :ref:`bool<class_bool>`, caret_index\: :ref:`int<class_int>` = -1\ ) |const|
  1824. Returns whether the mouse is over selection. If ``edges`` is ``true``, the edges are considered part of the selection.
  1825. .. rst-class:: classref-item-separator
  1826. ----
  1827. .. _class_TextEdit_method_is_overtype_mode_enabled:
  1828. .. rst-class:: classref-method
  1829. :ref:`bool<class_bool>` **is_overtype_mode_enabled**\ (\ ) |const|
  1830. Returns whether the user is in overtype mode.
  1831. .. rst-class:: classref-item-separator
  1832. ----
  1833. .. _class_TextEdit_method_menu_option:
  1834. .. rst-class:: classref-method
  1835. |void| **menu_option**\ (\ option\: :ref:`int<class_int>`\ )
  1836. Executes a given action as defined in the :ref:`MenuItems<enum_TextEdit_MenuItems>` enum.
  1837. .. rst-class:: classref-item-separator
  1838. ----
  1839. .. _class_TextEdit_method_merge_gutters:
  1840. .. rst-class:: classref-method
  1841. |void| **merge_gutters**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ )
  1842. Merge the gutters from ``from_line`` into ``to_line``. Only overwritable gutters will be copied.
  1843. .. rst-class:: classref-item-separator
  1844. ----
  1845. .. _class_TextEdit_method_merge_overlapping_carets:
  1846. .. rst-class:: classref-method
  1847. |void| **merge_overlapping_carets**\ (\ )
  1848. Merges any overlapping carets. Will favor the newest caret, or the caret with a selection.
  1849. 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>`.
  1850. \ **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.
  1851. .. rst-class:: classref-item-separator
  1852. ----
  1853. .. _class_TextEdit_method_multicaret_edit_ignore_caret:
  1854. .. rst-class:: classref-method
  1855. :ref:`bool<class_bool>` **multicaret_edit_ignore_caret**\ (\ caret_index\: :ref:`int<class_int>`\ ) |const|
  1856. 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.
  1857. It is recommended to ``continue`` within a loop iterating on multiple carets if a caret should be ignored.
  1858. .. rst-class:: classref-item-separator
  1859. ----
  1860. .. _class_TextEdit_method_paste:
  1861. .. rst-class:: classref-method
  1862. |void| **paste**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1863. Paste at the current location. Can be overridden with :ref:`_paste<class_TextEdit_private_method__paste>`.
  1864. .. rst-class:: classref-item-separator
  1865. ----
  1866. .. _class_TextEdit_method_paste_primary_clipboard:
  1867. .. rst-class:: classref-method
  1868. |void| **paste_primary_clipboard**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1869. Pastes the primary clipboard.
  1870. .. rst-class:: classref-item-separator
  1871. ----
  1872. .. _class_TextEdit_method_redo:
  1873. .. rst-class:: classref-method
  1874. |void| **redo**\ (\ )
  1875. Perform redo operation.
  1876. .. rst-class:: classref-item-separator
  1877. ----
  1878. .. _class_TextEdit_method_remove_caret:
  1879. .. rst-class:: classref-method
  1880. |void| **remove_caret**\ (\ caret\: :ref:`int<class_int>`\ )
  1881. Removes the given caret index.
  1882. \ **Note:** This can result in adjustment of all other caret indices.
  1883. .. rst-class:: classref-item-separator
  1884. ----
  1885. .. _class_TextEdit_method_remove_gutter:
  1886. .. rst-class:: classref-method
  1887. |void| **remove_gutter**\ (\ gutter\: :ref:`int<class_int>`\ )
  1888. Removes the gutter from this **TextEdit**.
  1889. .. rst-class:: classref-item-separator
  1890. ----
  1891. .. _class_TextEdit_method_remove_line_at:
  1892. .. rst-class:: classref-method
  1893. |void| **remove_line_at**\ (\ line\: :ref:`int<class_int>`, move_carets_down\: :ref:`bool<class_bool>` = true\ )
  1894. Removes the line of text at ``line``. Carets on this line will attempt to match their previous visual x position.
  1895. If ``move_carets_down`` is ``true`` carets will move to the next line down, otherwise carets will move up.
  1896. .. rst-class:: classref-item-separator
  1897. ----
  1898. .. _class_TextEdit_method_remove_secondary_carets:
  1899. .. rst-class:: classref-method
  1900. |void| **remove_secondary_carets**\ (\ )
  1901. Removes all additional carets.
  1902. .. rst-class:: classref-item-separator
  1903. ----
  1904. .. _class_TextEdit_method_remove_text:
  1905. .. rst-class:: classref-method
  1906. |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>`\ )
  1907. Removes text between the given positions.
  1908. .. rst-class:: classref-item-separator
  1909. ----
  1910. .. _class_TextEdit_method_search:
  1911. .. rst-class:: classref-method
  1912. :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|
  1913. Perform a search inside the text. Search flags can be specified in the :ref:`SearchFlags<enum_TextEdit_SearchFlags>` enum.
  1914. In the returned vector, ``x`` is the column, ``y`` is the line. If no results are found, both are equal to ``-1``.
  1915. .. tabs::
  1916. .. code-tab:: gdscript
  1917. var result = search("print", SEARCH_WHOLE_WORDS, 0, 0)
  1918. if result.x != -1:
  1919. # Result found.
  1920. var line_number = result.y
  1921. var column_number = result.x
  1922. .. code-tab:: csharp
  1923. Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0);
  1924. if (result.X != -1)
  1925. {
  1926. // Result found.
  1927. int lineNumber = result.Y;
  1928. int columnNumber = result.X;
  1929. }
  1930. .. rst-class:: classref-item-separator
  1931. ----
  1932. .. _class_TextEdit_method_select:
  1933. .. rst-class:: classref-method
  1934. |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\ )
  1935. 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.
  1936. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  1937. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`.
  1938. .. rst-class:: classref-item-separator
  1939. ----
  1940. .. _class_TextEdit_method_select_all:
  1941. .. rst-class:: classref-method
  1942. |void| **select_all**\ (\ )
  1943. Select all the text.
  1944. If :ref:`selecting_enabled<class_TextEdit_property_selecting_enabled>` is ``false``, no selection will occur.
  1945. .. rst-class:: classref-item-separator
  1946. ----
  1947. .. _class_TextEdit_method_select_word_under_caret:
  1948. .. rst-class:: classref-method
  1949. |void| **select_word_under_caret**\ (\ caret_index\: :ref:`int<class_int>` = -1\ )
  1950. Selects the word under the caret.
  1951. .. rst-class:: classref-item-separator
  1952. ----
  1953. .. _class_TextEdit_method_set_caret_column:
  1954. .. rst-class:: classref-method
  1955. |void| **set_caret_column**\ (\ column\: :ref:`int<class_int>`, adjust_viewport\: :ref:`bool<class_bool>` = true, caret_index\: :ref:`int<class_int>` = 0\ )
  1956. Moves the caret to the specified ``column`` index.
  1957. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  1958. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`.
  1959. .. rst-class:: classref-item-separator
  1960. ----
  1961. .. _class_TextEdit_method_set_caret_line:
  1962. .. rst-class:: classref-method
  1963. |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\ )
  1964. 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.
  1965. If ``adjust_viewport`` is ``true``, the viewport will center at the caret position after the move occurs.
  1966. If ``can_be_hidden`` is ``true``, the specified ``line`` can be hidden.
  1967. 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.
  1968. \ **Note:** If supporting multiple carets this will not check for any overlap. See :ref:`merge_overlapping_carets<class_TextEdit_method_merge_overlapping_carets>`.
  1969. .. rst-class:: classref-item-separator
  1970. ----
  1971. .. _class_TextEdit_method_set_gutter_clickable:
  1972. .. rst-class:: classref-method
  1973. |void| **set_gutter_clickable**\ (\ gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ )
  1974. Sets the gutter as clickable. This will change the mouse cursor to a pointing hand when hovering over the gutter.
  1975. .. rst-class:: classref-item-separator
  1976. ----
  1977. .. _class_TextEdit_method_set_gutter_custom_draw:
  1978. .. rst-class:: classref-method
  1979. |void| **set_gutter_custom_draw**\ (\ column\: :ref:`int<class_int>`, draw_callback\: :ref:`Callable<class_Callable>`\ )
  1980. Set a custom draw method for the gutter. The callback method must take the following args: ``line: int, gutter: int, Area: Rect2``. This 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>`).
  1981. .. rst-class:: classref-item-separator
  1982. ----
  1983. .. _class_TextEdit_method_set_gutter_draw:
  1984. .. rst-class:: classref-method
  1985. |void| **set_gutter_draw**\ (\ gutter\: :ref:`int<class_int>`, draw\: :ref:`bool<class_bool>`\ )
  1986. Sets whether the gutter should be drawn.
  1987. .. rst-class:: classref-item-separator
  1988. ----
  1989. .. _class_TextEdit_method_set_gutter_name:
  1990. .. rst-class:: classref-method
  1991. |void| **set_gutter_name**\ (\ gutter\: :ref:`int<class_int>`, name\: :ref:`String<class_String>`\ )
  1992. Sets the name of the gutter.
  1993. .. rst-class:: classref-item-separator
  1994. ----
  1995. .. _class_TextEdit_method_set_gutter_overwritable:
  1996. .. rst-class:: classref-method
  1997. |void| **set_gutter_overwritable**\ (\ gutter\: :ref:`int<class_int>`, overwritable\: :ref:`bool<class_bool>`\ )
  1998. Sets the gutter to overwritable. See :ref:`merge_gutters<class_TextEdit_method_merge_gutters>`.
  1999. .. rst-class:: classref-item-separator
  2000. ----
  2001. .. _class_TextEdit_method_set_gutter_type:
  2002. .. rst-class:: classref-method
  2003. |void| **set_gutter_type**\ (\ gutter\: :ref:`int<class_int>`, type\: :ref:`GutterType<enum_TextEdit_GutterType>`\ )
  2004. Sets the type of gutter. Gutters can contain icons, text, or custom visuals. See :ref:`GutterType<enum_TextEdit_GutterType>` for options.
  2005. .. rst-class:: classref-item-separator
  2006. ----
  2007. .. _class_TextEdit_method_set_gutter_width:
  2008. .. rst-class:: classref-method
  2009. |void| **set_gutter_width**\ (\ gutter\: :ref:`int<class_int>`, width\: :ref:`int<class_int>`\ )
  2010. Set the width of the gutter.
  2011. .. rst-class:: classref-item-separator
  2012. ----
  2013. .. _class_TextEdit_method_set_line:
  2014. .. rst-class:: classref-method
  2015. |void| **set_line**\ (\ line\: :ref:`int<class_int>`, new_text\: :ref:`String<class_String>`\ )
  2016. Sets the text for a specific ``line``.
  2017. Carets on the line will attempt to keep their visual x position.
  2018. .. rst-class:: classref-item-separator
  2019. ----
  2020. .. _class_TextEdit_method_set_line_as_center_visible:
  2021. .. rst-class:: classref-method
  2022. |void| **set_line_as_center_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ )
  2023. Positions the ``wrap_index`` of ``line`` at the center of the viewport.
  2024. .. rst-class:: classref-item-separator
  2025. ----
  2026. .. _class_TextEdit_method_set_line_as_first_visible:
  2027. .. rst-class:: classref-method
  2028. |void| **set_line_as_first_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ )
  2029. Positions the ``wrap_index`` of ``line`` at the top of the viewport.
  2030. .. rst-class:: classref-item-separator
  2031. ----
  2032. .. _class_TextEdit_method_set_line_as_last_visible:
  2033. .. rst-class:: classref-method
  2034. |void| **set_line_as_last_visible**\ (\ line\: :ref:`int<class_int>`, wrap_index\: :ref:`int<class_int>` = 0\ )
  2035. Positions the ``wrap_index`` of ``line`` at the bottom of the viewport.
  2036. .. rst-class:: classref-item-separator
  2037. ----
  2038. .. _class_TextEdit_method_set_line_background_color:
  2039. .. rst-class:: classref-method
  2040. |void| **set_line_background_color**\ (\ line\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ )
  2041. Sets the current background color of the line. Set to ``Color(0, 0, 0, 0)`` for no color.
  2042. .. rst-class:: classref-item-separator
  2043. ----
  2044. .. _class_TextEdit_method_set_line_gutter_clickable:
  2045. .. rst-class:: classref-method
  2046. |void| **set_line_gutter_clickable**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, clickable\: :ref:`bool<class_bool>`\ )
  2047. If ``clickable`` is ``true``, makes the ``gutter`` on ``line`` clickable. See :ref:`gutter_clicked<class_TextEdit_signal_gutter_clicked>`.
  2048. .. rst-class:: classref-item-separator
  2049. ----
  2050. .. _class_TextEdit_method_set_line_gutter_icon:
  2051. .. rst-class:: classref-method
  2052. |void| **set_line_gutter_icon**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, icon\: :ref:`Texture2D<class_Texture2D>`\ )
  2053. 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>`).
  2054. .. rst-class:: classref-item-separator
  2055. ----
  2056. .. _class_TextEdit_method_set_line_gutter_item_color:
  2057. .. rst-class:: classref-method
  2058. |void| **set_line_gutter_item_color**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, color\: :ref:`Color<class_Color>`\ )
  2059. Sets the color for ``gutter`` on ``line`` to ``color``.
  2060. .. rst-class:: classref-item-separator
  2061. ----
  2062. .. _class_TextEdit_method_set_line_gutter_metadata:
  2063. .. rst-class:: classref-method
  2064. |void| **set_line_gutter_metadata**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, metadata\: :ref:`Variant<class_Variant>`\ )
  2065. Sets the metadata for ``gutter`` on ``line`` to ``metadata``.
  2066. .. rst-class:: classref-item-separator
  2067. ----
  2068. .. _class_TextEdit_method_set_line_gutter_text:
  2069. .. rst-class:: classref-method
  2070. |void| **set_line_gutter_text**\ (\ line\: :ref:`int<class_int>`, gutter\: :ref:`int<class_int>`, text\: :ref:`String<class_String>`\ )
  2071. 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>`).
  2072. .. rst-class:: classref-item-separator
  2073. ----
  2074. .. _class_TextEdit_method_set_overtype_mode_enabled:
  2075. .. rst-class:: classref-method
  2076. |void| **set_overtype_mode_enabled**\ (\ enabled\: :ref:`bool<class_bool>`\ )
  2077. If ``true``, sets the user into overtype mode. When the user types in this mode, it will override existing text.
  2078. .. rst-class:: classref-item-separator
  2079. ----
  2080. .. _class_TextEdit_method_set_search_flags:
  2081. .. rst-class:: classref-method
  2082. |void| **set_search_flags**\ (\ flags\: :ref:`int<class_int>`\ )
  2083. 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.
  2084. .. rst-class:: classref-item-separator
  2085. ----
  2086. .. _class_TextEdit_method_set_search_text:
  2087. .. rst-class:: classref-method
  2088. |void| **set_search_text**\ (\ search_text\: :ref:`String<class_String>`\ )
  2089. Sets the search text. See :ref:`set_search_flags<class_TextEdit_method_set_search_flags>`.
  2090. .. rst-class:: classref-item-separator
  2091. ----
  2092. .. _class_TextEdit_method_set_selection_mode:
  2093. .. rst-class:: classref-method
  2094. |void| **set_selection_mode**\ (\ mode\: :ref:`SelectionMode<enum_TextEdit_SelectionMode>`\ )
  2095. Sets the current selection mode.
  2096. .. rst-class:: classref-item-separator
  2097. ----
  2098. .. _class_TextEdit_method_set_selection_origin_column:
  2099. .. rst-class:: classref-method
  2100. |void| **set_selection_origin_column**\ (\ column\: :ref:`int<class_int>`, caret_index\: :ref:`int<class_int>` = 0\ )
  2101. 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.
  2102. .. rst-class:: classref-item-separator
  2103. ----
  2104. .. _class_TextEdit_method_set_selection_origin_line:
  2105. .. rst-class:: classref-method
  2106. |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\ )
  2107. 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.
  2108. If ``can_be_hidden`` is ``false``, The line will be set to the nearest unhidden line below or above.
  2109. 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.
  2110. .. rst-class:: classref-item-separator
  2111. ----
  2112. .. _class_TextEdit_method_set_tab_size:
  2113. .. rst-class:: classref-method
  2114. |void| **set_tab_size**\ (\ size\: :ref:`int<class_int>`\ )
  2115. Sets the tab size for the **TextEdit** to use.
  2116. .. rst-class:: classref-item-separator
  2117. ----
  2118. .. _class_TextEdit_method_set_tooltip_request_func:
  2119. .. rst-class:: classref-method
  2120. |void| **set_tooltip_request_func**\ (\ callback\: :ref:`Callable<class_Callable>`\ )
  2121. Provide custom tooltip text. The callback method must take the following args: ``hovered_word: String``.
  2122. .. rst-class:: classref-item-separator
  2123. ----
  2124. .. _class_TextEdit_method_skip_selection_for_next_occurrence:
  2125. .. rst-class:: classref-method
  2126. |void| **skip_selection_for_next_occurrence**\ (\ )
  2127. 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.
  2128. .. rst-class:: classref-item-separator
  2129. ----
  2130. .. _class_TextEdit_method_start_action:
  2131. .. rst-class:: classref-method
  2132. |void| **start_action**\ (\ action\: :ref:`EditAction<enum_TextEdit_EditAction>`\ )
  2133. Starts an action, will end the current action if ``action`` is different.
  2134. 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.
  2135. .. rst-class:: classref-item-separator
  2136. ----
  2137. .. _class_TextEdit_method_swap_lines:
  2138. .. rst-class:: classref-method
  2139. |void| **swap_lines**\ (\ from_line\: :ref:`int<class_int>`, to_line\: :ref:`int<class_int>`\ )
  2140. Swaps the two lines. Carets will be swapped with the lines.
  2141. .. rst-class:: classref-item-separator
  2142. ----
  2143. .. _class_TextEdit_method_tag_saved_version:
  2144. .. rst-class:: classref-method
  2145. |void| **tag_saved_version**\ (\ )
  2146. Tag the current version as saved.
  2147. .. rst-class:: classref-item-separator
  2148. ----
  2149. .. _class_TextEdit_method_undo:
  2150. .. rst-class:: classref-method
  2151. |void| **undo**\ (\ )
  2152. Perform undo operation.
  2153. .. rst-class:: classref-section-separator
  2154. ----
  2155. .. rst-class:: classref-descriptions-group
  2156. Theme Property Descriptions
  2157. ---------------------------
  2158. .. _class_TextEdit_theme_color_background_color:
  2159. .. rst-class:: classref-themeproperty
  2160. :ref:`Color<class_Color>` **background_color** = ``Color(0, 0, 0, 0)``
  2161. Sets the background :ref:`Color<class_Color>` of this **TextEdit**.
  2162. .. rst-class:: classref-item-separator
  2163. ----
  2164. .. _class_TextEdit_theme_color_caret_background_color:
  2165. .. rst-class:: classref-themeproperty
  2166. :ref:`Color<class_Color>` **caret_background_color** = ``Color(0, 0, 0, 1)``
  2167. :ref:`Color<class_Color>` of the text behind the caret when using a block caret.
  2168. .. rst-class:: classref-item-separator
  2169. ----
  2170. .. _class_TextEdit_theme_color_caret_color:
  2171. .. rst-class:: classref-themeproperty
  2172. :ref:`Color<class_Color>` **caret_color** = ``Color(0.875, 0.875, 0.875, 1)``
  2173. :ref:`Color<class_Color>` of the caret. This can be set to a fully transparent color to hide the caret entirely.
  2174. .. rst-class:: classref-item-separator
  2175. ----
  2176. .. _class_TextEdit_theme_color_current_line_color:
  2177. .. rst-class:: classref-themeproperty
  2178. :ref:`Color<class_Color>` **current_line_color** = ``Color(0.25, 0.25, 0.26, 0.8)``
  2179. Background :ref:`Color<class_Color>` of the line containing the caret.
  2180. .. rst-class:: classref-item-separator
  2181. ----
  2182. .. _class_TextEdit_theme_color_font_color:
  2183. .. rst-class:: classref-themeproperty
  2184. :ref:`Color<class_Color>` **font_color** = ``Color(0.875, 0.875, 0.875, 1)``
  2185. Sets the font :ref:`Color<class_Color>`.
  2186. .. rst-class:: classref-item-separator
  2187. ----
  2188. .. _class_TextEdit_theme_color_font_outline_color:
  2189. .. rst-class:: classref-themeproperty
  2190. :ref:`Color<class_Color>` **font_outline_color** = ``Color(0, 0, 0, 1)``
  2191. The tint of text outline of the **TextEdit**.
  2192. .. rst-class:: classref-item-separator
  2193. ----
  2194. .. _class_TextEdit_theme_color_font_placeholder_color:
  2195. .. rst-class:: classref-themeproperty
  2196. :ref:`Color<class_Color>` **font_placeholder_color** = ``Color(0.875, 0.875, 0.875, 0.6)``
  2197. Font color for :ref:`placeholder_text<class_TextEdit_property_placeholder_text>`.
  2198. .. rst-class:: classref-item-separator
  2199. ----
  2200. .. _class_TextEdit_theme_color_font_readonly_color:
  2201. .. rst-class:: classref-themeproperty
  2202. :ref:`Color<class_Color>` **font_readonly_color** = ``Color(0.875, 0.875, 0.875, 0.5)``
  2203. Sets the font :ref:`Color<class_Color>` when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2204. .. rst-class:: classref-item-separator
  2205. ----
  2206. .. _class_TextEdit_theme_color_font_selected_color:
  2207. .. rst-class:: classref-themeproperty
  2208. :ref:`Color<class_Color>` **font_selected_color** = ``Color(0, 0, 0, 0)``
  2209. Sets the :ref:`Color<class_Color>` of the selected text. If equal to ``Color(0, 0, 0, 0)``, it will be ignored.
  2210. .. rst-class:: classref-item-separator
  2211. ----
  2212. .. _class_TextEdit_theme_color_search_result_border_color:
  2213. .. rst-class:: classref-themeproperty
  2214. :ref:`Color<class_Color>` **search_result_border_color** = ``Color(0.3, 0.3, 0.3, 0.4)``
  2215. :ref:`Color<class_Color>` of the border around text that matches the search query.
  2216. .. rst-class:: classref-item-separator
  2217. ----
  2218. .. _class_TextEdit_theme_color_search_result_color:
  2219. .. rst-class:: classref-themeproperty
  2220. :ref:`Color<class_Color>` **search_result_color** = ``Color(0.3, 0.3, 0.3, 1)``
  2221. :ref:`Color<class_Color>` behind the text that matches the search query.
  2222. .. rst-class:: classref-item-separator
  2223. ----
  2224. .. _class_TextEdit_theme_color_selection_color:
  2225. .. rst-class:: classref-themeproperty
  2226. :ref:`Color<class_Color>` **selection_color** = ``Color(0.5, 0.5, 0.5, 1)``
  2227. Sets the highlight :ref:`Color<class_Color>` of text selections.
  2228. .. rst-class:: classref-item-separator
  2229. ----
  2230. .. _class_TextEdit_theme_color_word_highlighted_color:
  2231. .. rst-class:: classref-themeproperty
  2232. :ref:`Color<class_Color>` **word_highlighted_color** = ``Color(0.5, 0.5, 0.5, 0.25)``
  2233. Sets the highlight :ref:`Color<class_Color>` of multiple occurrences. :ref:`highlight_all_occurrences<class_TextEdit_property_highlight_all_occurrences>` has to be enabled.
  2234. .. rst-class:: classref-item-separator
  2235. ----
  2236. .. _class_TextEdit_theme_constant_caret_width:
  2237. .. rst-class:: classref-themeproperty
  2238. :ref:`int<class_int>` **caret_width** = ``1``
  2239. 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.
  2240. .. rst-class:: classref-item-separator
  2241. ----
  2242. .. _class_TextEdit_theme_constant_line_spacing:
  2243. .. rst-class:: classref-themeproperty
  2244. :ref:`int<class_int>` **line_spacing** = ``4``
  2245. Sets the spacing between the lines.
  2246. .. rst-class:: classref-item-separator
  2247. ----
  2248. .. _class_TextEdit_theme_constant_outline_size:
  2249. .. rst-class:: classref-themeproperty
  2250. :ref:`int<class_int>` **outline_size** = ``0``
  2251. The size of the text outline.
  2252. \ **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.
  2253. .. rst-class:: classref-item-separator
  2254. ----
  2255. .. _class_TextEdit_theme_font_font:
  2256. .. rst-class:: classref-themeproperty
  2257. :ref:`Font<class_Font>` **font**
  2258. Sets the default :ref:`Font<class_Font>`.
  2259. .. rst-class:: classref-item-separator
  2260. ----
  2261. .. _class_TextEdit_theme_font_size_font_size:
  2262. .. rst-class:: classref-themeproperty
  2263. :ref:`int<class_int>` **font_size**
  2264. Sets default font size.
  2265. .. rst-class:: classref-item-separator
  2266. ----
  2267. .. _class_TextEdit_theme_icon_space:
  2268. .. rst-class:: classref-themeproperty
  2269. :ref:`Texture2D<class_Texture2D>` **space**
  2270. Sets a custom :ref:`Texture2D<class_Texture2D>` for space text characters.
  2271. .. rst-class:: classref-item-separator
  2272. ----
  2273. .. _class_TextEdit_theme_icon_tab:
  2274. .. rst-class:: classref-themeproperty
  2275. :ref:`Texture2D<class_Texture2D>` **tab**
  2276. Sets a custom :ref:`Texture2D<class_Texture2D>` for tab text characters.
  2277. .. rst-class:: classref-item-separator
  2278. ----
  2279. .. _class_TextEdit_theme_style_focus:
  2280. .. rst-class:: classref-themeproperty
  2281. :ref:`StyleBox<class_StyleBox>` **focus**
  2282. 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.
  2283. .. rst-class:: classref-item-separator
  2284. ----
  2285. .. _class_TextEdit_theme_style_normal:
  2286. .. rst-class:: classref-themeproperty
  2287. :ref:`StyleBox<class_StyleBox>` **normal**
  2288. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit**.
  2289. .. rst-class:: classref-item-separator
  2290. ----
  2291. .. _class_TextEdit_theme_style_read_only:
  2292. .. rst-class:: classref-themeproperty
  2293. :ref:`StyleBox<class_StyleBox>` **read_only**
  2294. Sets the :ref:`StyleBox<class_StyleBox>` of this **TextEdit** when :ref:`editable<class_TextEdit_property_editable>` is disabled.
  2295. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  2296. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  2297. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  2298. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  2299. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  2300. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  2301. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
  2302. .. |void| replace:: :abbr:`void (No return value.)`