Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
TextEdit
Eredita: Control < CanvasItem < Node < Object
Ereditato da: CodeEdit
Un editor di testo multilinea.
Descrizione
Un editor di testo multilinea. Offre anche funzionalità limitate per la modifica del codice, come il supporto per l'evidenziazione della sintassi. Per funzionalità più avanzate per la modifica del codice, consultare CodeEdit.
Durante l'inserimento del testo, è possibile inserire caratteri speciali attraverso i codici alt Unicode, OEM o Windows:
Per inserire codici Unicode, tenere premuto Alt e digitare il codice sul tastierino numerico. Ad esempio, per inserire il carattere
á(U+00E1), tenere premuto Alt e digitare +E1 sul tastierino numerico (gli zeri iniziali si possono omettere).Per inserire codici OEM, tenere premuto Alt e digitare il codice sul tastierino numerico. Ad esempio, per inserire il carattere
á(OEM 160), tenere premuto Alt e digitare160sul tastierino numerico.Per inserire i codici Windows, tenere premuto Alt e digitare il codice sul tastierino numerico. Ad esempio, per inserire il carattere
á(Windows 0225), tenere premuto Alt e digitare 0, 2, 2, 5 sul tastierino numerico. Lo zero iniziale qui non si deve omettere, poiché è questo il modo in cui i codici di Windows si distinguono dai codici OEM.
Nota: La maggior parte dei metodi di viewport, cursori e modifica includono un argomento caret_index per il supporto di caret_multiple. L'argomento dovrebbe essere uno dei seguenti: -1 per tutti i cursori, 0 per il cursore principale o maggiore di 0 per i cursori secondari nell'ordine in cui sono stati creati.
Nota: Tenendo premuto Alt, la rotellina di scorrimento verticale scorrerà 5 volte più velocemente del normale. Questo funziona anche nell'editor di script Godot.
Proprietà
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
focus_mode |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
mouse_default_cursor_shape |
|
|
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Metodi
void |
_backspace(caret_index: int) virtual |
void |
|
void |
|
void |
_handle_unicode_input(unicode_char: int, caret_index: int) virtual |
void |
|
void |
_paste_primary_clipboard(caret_index: int) virtual |
void |
add_caret_at_carets(below: bool) |
void |
add_gutter(at: int = -1) |
void |
|
void |
adjust_carets_after_edit(caret: int, from_line: int, from_col: int, to_line: int, to_col: int) |
void |
adjust_viewport_to_caret(caret_index: int = 0) |
void |
|
void |
|
void |
|
void |
|
void |
|
void |
center_viewport_to_caret(caret_index: int = 0) |
void |
clear() |
void |
|
void |
collapse_carets(from_line: int, from_column: int, to_line: int, to_column: int, inclusive: bool = false) |
void |
|
void |
|
void |
delete_selection(caret_index: int = -1) |
void |
|
void |
|
void |
|
void |
|
get_caret_column(caret_index: int = 0) const |
|
get_caret_count() const |
|
get_caret_draw_pos(caret_index: int = 0) const |
|
get_caret_line(caret_index: int = 0) const |
|
get_caret_wrap_index(caret_index: int = 0) const |
|
get_first_non_whitespace_column(line: int) const |
|
get_first_visible_line() const |
|
get_gutter_count() const |
|
get_gutter_name(gutter: int) const |
|
get_gutter_type(gutter: int) const |
|
get_gutter_width(gutter: int) const |
|
get_h_scroll_bar() const |
|
get_indent_level(line: int) const |
|
get_last_full_visible_line() const |
|
get_last_unhidden_line() const |
|
get_line_background_color(line: int) const |
|
get_line_column_at_pos(position: Vector2i, clamp_line: bool = true, clamp_column: bool = true) const |
|
get_line_count() const |
|
get_line_gutter_icon(line: int, gutter: int) const |
|
get_line_gutter_item_color(line: int, gutter: int) const |
|
get_line_gutter_metadata(line: int, gutter: int) const |
|
get_line_gutter_text(line: int, gutter: int) const |
|
get_line_height() const |
|
get_line_ranges_from_carets(only_selections: bool = false, merge_adjacent: bool = true) const |
|
get_line_width(line: int, wrap_index: int = -1) const |
|
get_line_with_ime(line: int) const |
|
get_line_wrap_count(line: int) const |
|
get_line_wrap_index_at_column(line: int, column: int) const |
|
get_line_wrapped_text(line: int) const |
|
get_local_mouse_pos() const |
|
get_menu() const |
|
get_minimap_line_at_pos(position: Vector2i) const |
|
get_minimap_visible_lines() const |
|
get_next_composite_character_column(line: int, column: int) const |
|
get_next_visible_line_index_offset_from(line: int, wrap_index: int, visible_amount: int) const |
|
get_next_visible_line_offset_from(line: int, visible_amount: int) const |
|
get_pos_at_line_column(line: int, column: int) const |
|
get_previous_composite_character_column(line: int, column: int) const |
|
get_rect_at_line_column(line: int, column: int) const |
|
get_saved_version() const |
|
get_scroll_pos_for_line(line: int, wrap_index: int = 0) const |
|
get_selected_text(caret_index: int = -1) |
|
get_selection_at_line_column(line: int, column: int, include_edges: bool = true, only_selections: bool = true) const |
|
get_selection_column(caret_index: int = 0) const |
|
get_selection_from_column(caret_index: int = 0) const |
|
get_selection_from_line(caret_index: int = 0) const |
|
get_selection_line(caret_index: int = 0) const |
|
get_selection_mode() const |
|
get_selection_origin_column(caret_index: int = 0) const |
|
get_selection_origin_line(caret_index: int = 0) const |
|
get_selection_to_column(caret_index: int = 0) const |
|
get_selection_to_line(caret_index: int = 0) const |
|
get_sorted_carets(include_ignored_carets: bool = false) const |
|
get_tab_size() const |
|
get_total_gutter_width() const |
|
get_total_visible_line_count() const |
|
get_v_scroll_bar() const |
|
get_version() const |
|
get_visible_line_count() const |
|
get_visible_line_count_in_range(from_line: int, to_line: int) const |
|
get_word_at_pos(position: Vector2) const |
|
get_word_under_caret(caret_index: int = -1) const |
|
has_ime_text() const |
|
has_redo() const |
|
has_selection(caret_index: int = -1) const |
|
has_undo() const |
|
void |
insert_line_at(line: int, text: String) |
void |
insert_text(text: String, line: int, column: int, before_selection_begin: bool = true, before_selection_end: bool = false) |
void |
insert_text_at_caret(text: String, caret_index: int = -1) |
is_caret_after_selection_origin(caret_index: int = 0) const |
|
is_caret_visible(caret_index: int = 0) const |
|
is_dragging_cursor() const |
|
is_gutter_clickable(gutter: int) const |
|
is_gutter_drawn(gutter: int) const |
|
is_gutter_overwritable(gutter: int) const |
|
is_in_mulitcaret_edit() const |
|
is_line_gutter_clickable(line: int, gutter: int) const |
|
is_line_in_viewport(line: int) const |
|
is_line_wrapped(line: int) const |
|
is_menu_visible() const |
|
is_mouse_over_selection(edges: bool, caret_index: int = -1) const |
|
is_overtype_mode_enabled() const |
|
void |
menu_option(option: int) |
void |
merge_gutters(from_line: int, to_line: int) |
void |
|
multicaret_edit_ignore_caret(caret_index: int) const |
|
void |
|
void |
paste_primary_clipboard(caret_index: int = -1) |
void |
redo() |
void |
remove_caret(caret: int) |
void |
remove_gutter(gutter: int) |
void |
remove_line_at(line: int, move_carets_down: bool = true) |
void |
|
void |
remove_text(from_line: int, from_column: int, to_line: int, to_column: int) |
search(text: String, flags: int, from_line: int, from_column: int) const |
|
void |
select(origin_line: int, origin_column: int, caret_line: int, caret_column: int, caret_index: int = 0) |
void |
|
void |
select_word_under_caret(caret_index: int = -1) |
void |
set_caret_column(column: int, adjust_viewport: bool = true, caret_index: int = 0) |
void |
set_caret_line(line: int, adjust_viewport: bool = true, can_be_hidden: bool = true, wrap_index: int = 0, caret_index: int = 0) |
void |
set_gutter_clickable(gutter: int, clickable: bool) |
void |
set_gutter_custom_draw(column: int, draw_callback: Callable) |
void |
set_gutter_draw(gutter: int, draw: bool) |
void |
set_gutter_name(gutter: int, name: String) |
void |
set_gutter_overwritable(gutter: int, overwritable: bool) |
void |
set_gutter_type(gutter: int, type: GutterType) |
void |
set_gutter_width(gutter: int, width: int) |
void |
|
void |
set_line_as_center_visible(line: int, wrap_index: int = 0) |
void |
set_line_as_first_visible(line: int, wrap_index: int = 0) |
void |
set_line_as_last_visible(line: int, wrap_index: int = 0) |
void |
set_line_background_color(line: int, color: Color) |
void |
set_line_gutter_clickable(line: int, gutter: int, clickable: bool) |
void |
set_line_gutter_icon(line: int, gutter: int, icon: Texture2D) |
void |
set_line_gutter_item_color(line: int, gutter: int, color: Color) |
void |
set_line_gutter_metadata(line: int, gutter: int, metadata: Variant) |
void |
set_line_gutter_text(line: int, gutter: int, text: String) |
void |
set_overtype_mode_enabled(enabled: bool) |
void |
set_search_flags(flags: int) |
void |
set_search_text(search_text: String) |
void |
set_selection_mode(mode: SelectionMode) |
void |
set_selection_origin_column(column: int, caret_index: int = 0) |
void |
set_selection_origin_line(line: int, can_be_hidden: bool = true, wrap_index: int = -1, caret_index: int = 0) |
void |
set_tab_size(size: int) |
void |
set_tooltip_request_func(callback: Callable) |
void |
|
void |
start_action(action: EditAction) |
void |
swap_lines(from_line: int, to_line: int) |
void |
|
void |
undo() |
Proprietà del tema
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
Segnali
caret_changed() 🔗
Emesso quando qualsiasi cursore cambia posizione.
gutter_added() 🔗
Emesso quando una barra laterale viene aggiunta.
gutter_clicked(line: int, gutter: int) 🔗
Emesso quando una barra laterale viene cliccata.
gutter_removed() 🔗
Emesso quando una barra laterale viene rimossa.
lines_edited_from(from_line: int, to_line: int) 🔗
Emesso immediatamente quando il testo cambia.
Quando viene aggiunto del testo, from_line sarà minore di to_line. In caso di rimozione, to_line sarà minore di from_line.
text_changed() 🔗
Emesso quando il testo cambia.
text_set() 🔗
Emesso quando viene chiamato clear() o viene impostato text.
Enumerazioni
Taglia (copia e cancella) il testo selezionato.
Copia il testo selezionato.
Incolla il testo degli appunti sul testo selezionato (o sulla posizione del cursore).
Cancella l'intero testo del TextEdit.
Seleziona l'intero testo del TextEdit.
Annulla l'azione precedente.
Ripete l'azione precedente.
ID del sottomenù "Direzione di scrittura del testo".
Imposta la direzione del testo a ereditata.
Imposta la direzione del testo ad automatico.
Imposta la direzione del testo da sinistra a destra.
Imposta la direzione del testo da destra a sinistra.
Commuta la visualizzazione dei caratteri di controllo.
ID del sottomenù "Inserisci carattere di controllo".
Inserisce il carattere di marcatura da sinistra a destra (LRM).
Inserisce il carattere di marcatura da destra a sinistra (RLM).
Inserisce il carattere di inizio dell'incorporamento da sinistra a destra (LRE).
Inserisce il carattere di inizio dell'incorporamento da destra a sinistra (RLE).
Inserisce il carattere di inizio di sostituzione da sinistra a destra (LRO).
Inserisce il carattere di inizio di sostituzione da destra a sinistra (RLO).
Inserisce il carattere di termine della formattazione della direzione (PDF).
Inserisce il carattere di marcatura di lettera araba (ALM).
Inserisce un carattere di isolamento da sinistra a destra (LRI).
Inserisce un carattere di isolamento da destra a sinistra (RLI).
Inserisce il carattere di primo isolamento forte (FSI).
Inserisce il carattere di isolamento di termine della direzione (PDI).
Inserisce il carattere di unione di larghezza zero (ZWJ).
Inserisce il carattere di non unione di larghezza zero (ZWNJ).
Inserisce il carattere di unione delle parole (WJ).
Inserisce il carattere trattino morbido (SHY).
Apre il selettore di emoji e simboli del sistema.
Rappresenta la dimensione dell'enumerazione MenuItems.
enum EditAction: 🔗
EditAction ACTION_NONE = 0
Nessuna azione attuale.
EditAction ACTION_TYPING = 1
Un'azione di digitazione.
EditAction ACTION_BACKSPACE = 2
Un'azione di eliminazione all'indietro.
EditAction ACTION_DELETE = 3
Un'azione di eliminazione in avanti.
enum SearchFlags: 🔗
SearchFlags SEARCH_MATCH_CASE = 1
Rispetta le maiuscole e le minuscole durante la ricerca.
SearchFlags SEARCH_WHOLE_WORDS = 2
Abbina parole intere durante la ricerca.
SearchFlags SEARCH_BACKWARDS = 4
Cerca dalla fine all'inizio.
enum CaretType: 🔗
CaretType CARET_TYPE_LINE = 0
Cursore di linea verticale.
CaretType CARET_TYPE_BLOCK = 1
Cursore a blocco.
enum SelectionMode: 🔗
SelectionMode SELECTION_MODE_NONE = 0
Nessuna selezione.
SelectionMode SELECTION_MODE_SHIFT = 1
Seleziona come se shift fosse premuto.
SelectionMode SELECTION_MODE_POINTER = 2
Seleziona singoli caratteri come se l'utente avesse cliccato una sola volta.
SelectionMode SELECTION_MODE_WORD = 3
Seleziona parole intere come se l'utente avesse cliccato due volte.
SelectionMode SELECTION_MODE_LINE = 4
Seleziona righe intere come se l'utente avesse cliccato tre volte.
enum LineWrappingMode: 🔗
LineWrappingMode LINE_WRAPPING_NONE = 0
L'avvolgimento di righe è disattivato.
LineWrappingMode LINE_WRAPPING_BOUNDARY = 1
L'avvolgimento di linee avviene al limite del controllo, oltre ciò che sarebbe visibile normalmente.
enum GutterType: 🔗
GutterType GUTTER_TYPE_STRING = 0
Quando una barra laterale è impostata su stringa tramite set_gutter_type(), è utilizzato per contenere il testo impostato tramite il metodo set_line_gutter_text().
GutterType GUTTER_TYPE_ICON = 1
Quando una barra laterale è impostata su un'icona tramite set_gutter_type(), è utilizzato per contenere un'icona impostata tramite il metodo set_line_gutter_icon().
GutterType GUTTER_TYPE_CUSTOM = 2
Quando una barra laterale è impostata su personalizzato tramite set_gutter_type(), è utilizzato per contenere elementi visivi personalizzati controllati da un metodo di callback impostato tramite il metodo set_gutter_custom_draw().
Descrizioni delle proprietà
AutowrapMode autowrap_mode = 3 🔗
void set_autowrap_mode(value: AutowrapMode)
AutowrapMode get_autowrap_mode()
Se wrap_mode è impostato su LINE_WRAPPING_BOUNDARY, imposta la modalità di avvolgimento del testo.
bool backspace_deletes_composite_character_enabled = false 🔗
void set_backspace_deletes_composite_character_enabled(value: bool)
bool is_backspace_deletes_composite_character_enabled()
Se true e caret_mid_grapheme è false, il tasto backspace elimina un intero carattere composto, ad esempio ❤️🩹, anziché eliminare parte del carattere composto.
Se true, fa lampeggiare il cursore.
float caret_blink_interval = 0.65 🔗
L'intervallo con il quale il cursore lampeggia (in secondi).
bool caret_draw_when_editable_disabled = false 🔗
void set_draw_caret_when_editable_disabled(value: bool)
bool is_drawing_caret_when_editable_disabled()
Se true, il cursore sarà visibile quando editable è disabilitato.
bool caret_mid_grapheme = false 🔗
Consente lo spostamento del cursore, la selezione e la rimozione dei singoli componenti di un carattere composito.
Nota: Backspace rimuove sempre i singoli componenti di un carattere composito.
bool caret_move_on_right_click = true 🔗
Se true, un clic destro sposta il cursore nella posizione del mouse prima di visualizzare il menu contestuale.
Se false, il menu contestuale ignora la posizione del mouse.
Se true, sono consentiti più cursori. Cliccando con il tasto sinistro del mouse insieme a Alt si aggiunge un nuovo cursore. Vedi add_caret() e get_caret_count().
Imposta il tipo di cursore da disegnare.
Se true, un clic destro visualizza il menu contestuale.
String custom_word_separators = "" 🔗
Caratteri da considerare come delimitatori di parola se use_custom_word_separators è true. I caratteri devono essere definiti senza separazione, ad esempio #_!.
bool deselect_on_focus_loss_enabled = true 🔗
Se true, il testo selezionato verrà deselezionato quando si perde il focus.
bool drag_and_drop_selection_enabled = true 🔗
Se true, consente di trascinare e rilasciare il testo selezionato. Il testo può comunque essere rilasciato da altre fonti.
bool draw_control_chars = false 🔗
Se true, i caratteri di controllo sono visualizzati.
Se true, il carattere di spazio avrà una rappresentazione visiva.
Se true, il carattere di tabulazione avrà una rappresentazione visiva.
Se false, non è possibile modificare il testo esistente o aggiungere nuovo testo.
Se true, il menu "Emoji e simboli" è abilitato.
bool empty_selection_clipboard_enabled = true 🔗
Se true, la copia o il taglio senza selezione vengono eseguiti su tutte le righe con i cursori. Altrimenti, la copia e il taglio richiedono una selezione.
bool highlight_all_occurrences = false 🔗
Se true, tutte le occorrenze del testo selezionato saranno evidenziate.
bool highlight_current_line = false 🔗
Se true, la riga contenente il cursore sarà evidenziata.
bool indent_wrapped_lines = false 🔗
Se true, tutte le righe avvolte vengono rientrate della stessa quantità della riga non avvolta.
Language code used for line-breaking and text shaping algorithms. If left empty, the current locale is used instead.
bool middle_mouse_paste_enabled = true 🔗
Se false, l'uso del tasto centrale del mouse per incollare gli appunti sarà disabilitato.
Nota: Questo metodo è implementato solo su Linux.
Se true, sarà mostrata una minimappa, che fornisce una panoramica del codice sorgente. La minimappa utilizza una dimensione di testo a larghezza fissa.
La larghezza, in pixel, della minimappa.
String placeholder_text = "" 🔗
Il testo visualizzato quando il TextEdit è vuoto. Non è il valore predefinito del TextEdit (vedi text).
bool scroll_fit_content_height = false 🔗
If true, TextEdit fits its minimum height to the number of visible lines instead of scrolling vertically. If a maximum height is set (for example via Control.custom_maximum_size) and content exceeds it, a vertical scrollbar is shown.
bool scroll_fit_content_width = false 🔗
If true, TextEdit fits its minimum width to the widest line instead of scrolling horizontally. If a maximum width is set (for example via Control.custom_maximum_size) and content exceeds it, a horizontal scrollbar is shown.
Se è presente una barra di scorrimento orizzontale, questa determina il valore attuale dello scorrimento orizzontale in pixel.
bool scroll_past_end_of_file = false 🔗
Consente lo scorrimento oltre l'ultima riga nello spazio "virtuale".
Scorre il testo in modo fluido invece di saltare alla posizione successiva.
float scroll_v_scroll_speed = 80.0 🔗
Imposta la velocità di scorrimento con la minimappa o quando scroll_smooth è abilitato.
Se è presente una barra di scorrimento verticale, questa determina il valore attuale dello scorrimento verticale in numeri di riga, a partire da 0 per la riga in alto.
bool selecting_enabled = true 🔗
Se true, il testo può essere selezionato.
Se false, il testo non può essere selezionato dall'utente o dai metodi select() o select_all().
bool shortcut_keys_enabled = true 🔗
Se true, le scorciatoie da tastiera per le voci del menu contestuale sono abilitate, anche se il menu contestuale è disabilitato.
StructuredTextParser structured_text_bidi_override = 0 🔗
void set_structured_text_bidi_override(value: StructuredTextParser)
StructuredTextParser get_structured_text_bidi_override()
Imposta la sostituzione dell'algoritmo BiDi per il testo strutturato.
Array structured_text_bidi_override_options = [] 🔗
void set_structured_text_bidi_override_options(value: Array)
Array get_structured_text_bidi_override_options()
Imposta opzioni aggiuntive per la sostituzione BiDi.
SyntaxHighlighter syntax_highlighter 🔗
void set_syntax_highlighter(value: SyntaxHighlighter)
SyntaxHighlighter get_syntax_highlighter()
L'evidenziatore di sintassi da usare.
Nota: Un'istanza di SyntaxHighlighter non deve essere utilizzata su più nodi TextEdit.
Se true, l'input ProjectSettings.input/ui_text_indent inserisce il carattere Tab, altrimenti sposta il focus della tastiera sul Control successivo nella scena.
Valore stringa del TextEdit.
TextDirection text_direction = 0 🔗
void set_text_direction(value: TextDirection)
TextDirection get_text_direction()
Direzione di scrittura del testo di base.
bool use_custom_word_separators = false 🔗
Se false, le combinazioni Ctrl + Sinistra o Ctrl + Destra (Cmd + Sinistra o Cmd + Destra su macOS) useranno il comportamento di use_default_word_separators. Se true, interromperà anche il cursore se viene rilevato un carattere all'interno di custom_word_separators. Utile per lo spostamento fra sotto-parole. Questo comportamento verrà applicato anche al comportamento della selezione del testo.
bool use_default_word_separators = true 🔗
Se false, usando le combinazioni Ctrl + Sinistra o Ctrl + Destra (Cmd + Sinistra o Cmd + Destra su macOS) il cursore sarà interrotto solo se viene rilevato uno spazio o una punteggiatura. Se true, il cursore sarà interrotto anche se un carattere fa parte di !"#$%&'()*+,-./:;<=>?@[\]^`{|}~, della tabella di punteggiatura generale Unicode o della tabella di punteggiatura Unicode CJK. Utile per lo spostamento tra sotto-parole. Questo comportamento sarà applicato anche al comportamento della selezione del testo.
bool virtual_keyboard_enabled = true 🔗
Se true, la tastiera virtuale nativa è abilitata sulle piattaforme che la supportano.
bool virtual_keyboard_show_on_focus = true 🔗
Se true, la tastiera virtuale nativa è mostrata dopo eventi di focus sulle piattaforme che la supportano.
LineWrappingMode wrap_mode = 0 🔗
void set_line_wrapping_mode(value: LineWrappingMode)
LineWrappingMode get_line_wrapping_mode()
Imposta la modalità di avvolgimento riga da utilizzare.
Descrizioni dei metodi
void _backspace(caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente preme il tasto backspace.
void _copy(caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente esegue un'operazione di copia.
void _cut(caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente esegue un'operazione di taglio.
void _handle_unicode_input(unicode_char: int, caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente digita il tasto fornito (unicode_char).
void _paste(caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente esegue un'operazione di incolla.
void _paste_primary_clipboard(caret_index: int) virtual 🔗
Sovrascrivi questo metodo per definire cosa succede quando l'utente esegue un'operazione di incolla con il tasto centrale del mouse.
Nota: Questo metodo è implementato solo su Linux.
int add_caret(line: int, column: int) 🔗
Aggiunge un nuovo cursore nella posizione specificata. Restituisce l'indice del cursore, o -1 se la posizione non è valida.
void add_caret_at_carets(below: bool) 🔗
Aggiunge un cursore aggiuntivo sopra o sotto ogni cursore. Se below è true il nuovo cursore sarà aggiunto sotto, altrimenti sopra.
void add_gutter(at: int = -1) 🔗
Registra una nuova barra laterale in questo TextEdit. Usa at per avere un ordine specifico per le barre. Un valore di -1 aggiunge la barra a destra.
void add_selection_for_next_occurrence() 🔗
Aggiunge una selezione e un cursore per l'occorrenza successiva della selezione attuale. Se non c'è una selezione attiva, seleziona la parola sotto il cursore.
void adjust_carets_after_edit(caret: int, from_line: int, from_col: int, to_line: int, to_col: int) 🔗
Deprecato: No longer necessary since methods now adjust carets themselves.
Questo metodo non fa nulla.
void adjust_viewport_to_caret(caret_index: int = 0) 🔗
Regola la vista in modo che il cursore sia visibile.
void apply_ime() 🔗
Applica il testo dall'Input Method Editor (IME) a ogni cursore e chiude l'IME se è aperto.
void backspace(caret_index: int = -1) 🔗
Chiamato quando l'utente preme il tasto backspace. Può essere sovrascritto con _backspace().
void begin_complex_operation() 🔗
Avvia una modifica in più parti. Tutte le modifiche saranno trattate come un'unica azione finché non viene chiamato end_complex_operation().
void begin_multicaret_edit() 🔗
Avvia una modifica per più cursori. La modifica deve essere terminata con end_multicaret_edit(). Le modifiche per più cursori possono essere usate per modificare il testo in più cursori e ritardare l'unione dei cursori fino alla fine, in modo che gli indici dei cursori non siano influenzati immediatamente. È possibile annidare begin_multicaret_edit() e end_multicaret_edit() e l'unione avverrà all'ultimo end_multicaret_edit().
begin_complex_operation()
begin_multicaret_edit()
for i in range(get_caret_count()):
if multicaret_edit_ignore_caret(i):
continue
# Logica qui.
end_multicaret_edit()
end_complex_operation()
void cancel_ime() 🔗
Chiude l'Input Method Editor (IME) se è aperto. Qualsiasi testo nell'IME sarà perso.
void center_viewport_to_caret(caret_index: int = 0) 🔗
Centra la vista sulla riga in cui si trova il cursore di modifica. Ciò reimposta anche il valore di scroll_horizontal su 0.
void clear() 🔗
Esegue un ripristino completo del TextEdit, inclusa la cronologia degli annullamenti.
void clear_undo_history() 🔗
Cancella la cronologia degli annullamenti.
void collapse_carets(from_line: int, from_column: int, to_line: int, to_column: int, inclusive: bool = false) 🔗
Comprime tutti i cursori nell'intervallo specificato nelle posizioni from_line e from_column.
inclusive si applica a entrambe le estremità.
Se is_in_mulitcaret_edit() è true, i cursori compressi saranno true per multicaret_edit_ignore_caret().
Verrà chiamato merge_overlapping_carets() se qualche cursore è stato compresso.
void copy(caret_index: int = -1) 🔗
Copia la selezione di testo attuale. Può essere sovrascritto con _copy().
void cut(caret_index: int = -1) 🔗
Taglia la selezione attuale. Può essere sovrascritto con _cut().
void delete_selection(caret_index: int = -1) 🔗
Elimina il testo selezionato.
void deselect(caret_index: int = -1) 🔗
Deseleziona la selezione attuale.
void end_action() 🔗
Contrassegna la fine dei passaggi nell'azione attuale avviata con start_action().
void end_complex_operation() 🔗
Termina una modifica in più parti, avviata con begin_complex_operation(). Se chiamata al di fuori di un'operazione complessa, l'operazione attuale viene inserita nello stack di annullamento/ripristino.
void end_multicaret_edit() 🔗
Termina una modifica per più cursori, avviata con begin_multicaret_edit(). Se questo era l'ultimo end_multicaret_edit() ed è stato chiamato merge_overlapping_carets(), i cursori verranno uniti.
int get_caret_column(caret_index: int = 0) const 🔗
Restituisce la colonna su cui si trova il cursore di modifica.
Restituisce il numero di cursori in questo TextEdit.
Vector2 get_caret_draw_pos(caret_index: int = 0) const 🔗
Restituisce la posizione di disegno del cursore, in pixel.
PackedInt32Array get_caret_index_edit_order() 🔗
Deprecato: Carets no longer need to be edited in any specific order. If the carets need to be sorted, use get_sorted_carets() instead.
Restituisce un elenco di indici di cursori nel loro ordine di modifica, dal basso verso l'alto. L'ordine di modifica si riferisce al modo in cui sono applicate azioni come insert_text_at_caret().
int get_caret_line(caret_index: int = 0) const 🔗
Restituisce la riga su cui si trova il cursore di modifica.
int get_caret_wrap_index(caret_index: int = 0) const 🔗
Restituisce l'indice di avvolgimento su cui si trova il cursore di modifica.
int get_first_non_whitespace_column(line: int) const 🔗
Restituisce la prima colonna contenente un carattere diverso da uno spazio vuoto sulla riga specificata. Se c'è solo spazio vuoto, restituisce il numero di caratteri.
int get_first_visible_line() const 🔗
Restituisce la prima riga visibile.
int get_gutter_count() const 🔗
Restituisce il numero di barre laterali registrati.
String get_gutter_name(gutter: int) const 🔗
Restituisce il nome della barra laterale all'indice indicato.
GutterType get_gutter_type(gutter: int) const 🔗
Restituisce il tipo di barra laterale all'indice specificato. Le barre possono contenere icone, testo o elementi visivi personalizzati.
int get_gutter_width(gutter: int) const 🔗
Restituisce la larghezza della barra laterale all'indice indicato.
HScrollBar get_h_scroll_bar() const 🔗
Restituisce la HScrollBar utilizzata dal TextEdit.
int get_indent_level(line: int) const 🔗
Restituisce il livello di indentazione della riga specificata. Questo è il numero di spazi e tabulazioni all'inizio della riga, con le tabulazioni che tengono conto della dimensione di tabulazione (vedi get_tab_size()).
int get_last_full_visible_line() const 🔗
Restituisce l'ultima riga visibile. Usa get_last_full_visible_line_wrap_index() per l'indice di avvolgimento.
int get_last_full_visible_line_wrap_index() const 🔗
Restituisce l'ultimo indice di avvolgimento visibile dell'ultima riga visibile.
Restituisce l'ultima riga non nascosta nell'intero TextEdit.
String get_line(line: int) const 🔗
Restituisce il testo per la riga specificata.
Color get_line_background_color(line: int) const 🔗
Restituisce il colore di sfondo personalizzato della riga specificata. Se nessun colore è impostato, restituisce Color(0, 0, 0, 0).
Vector2i get_line_column_at_pos(position: Vector2i, clamp_line: bool = true, clamp_column: bool = true) const 🔗
Restituisce la riga e la colonna nella posizione specificata. Nel vettore restituito, x è la colonna e y è la riga.
Se clamp_line è false e position è sotto l'ultima riga, viene restituito Vector2i(-1, -1).
Se clamp_column è false e position è al di fuori dell'intervallo di colonne della riga, viene restituito Vector2i(-1, -1).
Restituisce il numero di righe nel testo.
Texture2D get_line_gutter_icon(line: int, gutter: int) const 🔗
Restituisce l'icona attualmente presente nella barra laterale gutter alla riga line. Funziona solo quando il tipo di barra è GUTTER_TYPE_ICON (vedi set_gutter_type()).
Color get_line_gutter_item_color(line: int, gutter: int) const 🔗
Restituisce il colore attuale nella barra laterale gutter alla riga line.
Variant get_line_gutter_metadata(line: int, gutter: int) const 🔗
Restituisce i metadati attuali nella barra laterale gutter alla riga line.
String get_line_gutter_text(line: int, gutter: int) const 🔗
Restituisce il testo attuale nella barra laterale gutter alla riga line. Funziona solo quando il tipo di barra è GUTTER_TYPE_STRING (vedi set_gutter_type()).
Restituisce il valore massimo dell'altezza della riga tra tutte le righe.
Nota: Il valore restituito è influenzato da line_spacing e font_size. E non sarà inferiore a 1.
Array[Vector2i] get_line_ranges_from_carets(only_selections: bool = false, merge_adjacent: bool = true) const 🔗
Restituisce un Array di intervalli di righe in cui x è la prima riga e y è l'ultima riga. Tutte le righe all'interno di questi intervalli avranno un cursore o faranno parte di una selezione. Ogni riga farà parte di un solo intervallo di righe, anche se ha più cursori.
Se la colonna finale di una selezione (get_selection_to_column()) è la colonna 0, quella riga non sarà inclusa. Se una selezione inizia sulla riga dopo la fine di un'altra selezione e merge_adjacent è true, oppure iniziano e finiscono sulla stessa riga, un intervallo di righe includerà entrambe le selezioni.
int get_line_width(line: int, wrap_index: int = -1) const 🔗
Restituisce la larghezza in pixel dell'indice di avvolgimento (wrap_index) sulla riga line.
String get_line_with_ime(line: int) const 🔗
Restituisce il testo della riga così come è visualizzato al momento, inclusa la stringa di composizione IME.
int get_line_wrap_count(line: int) const 🔗
Restituisce il numero di volte che la riga fornita è avvolta.
int get_line_wrap_index_at_column(line: int, column: int) const 🔗
Restituisce l'indice di avvolgimento della colonna specificata sulla riga specificata. Questo varia da 0 a get_line_wrap_count().
PackedStringArray get_line_wrapped_text(line: int) const 🔗
Restituisce un array di String che rappresentano ciascun indice avvolto.
Vector2 get_local_mouse_pos() const 🔗
Restituisce la posizione del mouse locale aggiustata per la direzione del testo.
Restituisce il PopupMenu di questo TextEdit. Per impostazione predefinita, questo menu viene visualizzato quando si clicca con il pulsante destro del mouse sul TextEdit.
È possibile aggiungere voci di menu personalizzate o rimuovere quelle preimpostate. Assicurarsi che gli ID non siano in conflitto con quelli preimpostati (vedi MenuItems). Ad esempio:
func _ready():
var menu = get_menu()
# Rimuove tutte le voci dopo "Ripeti".
menu.item_count = menu.get_item_index(MENU_REDO) + 1
#Aggiunge voci personalizzate.
menu.add_separator()
menu.add_item("Insert Date", MENU_MAX + 1)
# Connetti il callback.
menu.id_pressed.connect(_on_item_pressed)
func _on_item_pressed(id):
if id == MENU_MAX + 1:
insert_text_at_caret(Time.get_date_string_from_system())
public override void _Ready()
{
var menu = GetMenu();
// Rimuove tutte le voci dopo "Ripeti".
menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1;
// Aggiunge voci personalizzate.
menu.AddSeparator();
menu.AddItem("Insert Date", TextEdit.MenuItems.Max + 1);
// Aggiungi lo gestore dell'evento.
menu.IdPressed += OnItemPressed;
}
public void OnItemPressed(int id)
{
if (id == TextEdit.MenuItems.Max + 1)
{
InsertTextAtCaret(Time.GetDateStringFromSystem());
}
}
Attenzione: Questo è un nodo interno obbligatorio, rimuoverlo e liberarlo potrebbe causare un crash. Se desideri nascondere questo nodo o uno dei suoi figli, usa la loro proprietà Window.visible.
int get_minimap_line_at_pos(position: Vector2i) const 🔗
Restituisce la riga della minimappa equivalente alla posizione position.
int get_minimap_visible_lines() const 🔗
Restituisce il numero di righe che possono essere disegnate sulla minimappa.
int get_next_composite_character_column(line: int, column: int) const 🔗
Restituisce la colonna corretta alla fine di un carattere composto come ❤️🩹 (cuore guarito; Unicode: U+2764 U+FE0F U+200D U+1FA79) che è composto da più di un punto di codice Unicode, se il cursore si trova all'inizio del carattere composto. Restituisce anche la colonna corretta con il cursore a metà grafema e per i caratteri non composti.
Note: To check at caret location use get_next_composite_character_column(get_caret_line(), get_caret_column())
Vector2i get_next_visible_line_index_offset_from(line: int, wrap_index: int, visible_amount: int) const 🔗
Simile a get_next_visible_line_offset_from(), ma tiene conto degli indici di avvolgimento della riga. Nel vettore restituito, x è la riga, y è l'indice di avvolgimento.
int get_next_visible_line_offset_from(line: int, visible_amount: int) const 🔗
Restituisce il conteggio alla riga successiva visibile da line a line + visible_amount. Può anche contare all'indietro. Ad esempio, se un TextEdit ha 5 righe con le righe 2 e 3 nascoste, chiamando questo metodo con line = 1, visible_amount = 1 verrebbe restituito 3.
Vector2i get_pos_at_line_column(line: int, column: int) const 🔗
Restituisce la posizione locale per la riga line e la colonna column. Se x o y del vettore restituito sono uguali a -1, la posizione è al di fuori dell'area visibile del controllo.
Nota: La posizione Y corrisponde al lato inferiore della riga. Usa get_rect_at_line_column() per ottenere la posizione del lato superiore.
int get_previous_composite_character_column(line: int, column: int) const 🔗
Restituisce la colonna corretta all'inizio di un carattere composto come ❤️🩹 (cuore guarito; Unicode: U+2764 U+FE0F U+200D U+1FA79) che è composto da più di un punto di codice Unicode, se il cursore si trova alla fine del carattere composto. Restituisce anche la colonna corretta con il cursore a metà grafema e per i caratteri non composti.
Note: To check at caret location use get_previous_composite_character_column(get_caret_line(), get_caret_column())
Rect2i get_rect_at_line_column(line: int, column: int) const 🔗
Restituisce la posizione e la dimensione locale del grafema nella riga line e nella colonna column. Se la posizione x o y del rettangolo restituito è uguale a -1, la posizione è al di fuori dell'area visibile del controllo.
Nota: La posizione Y del rettangolo restituito corrisponde al lato superiore della riga, a differenza di get_pos_at_line_column() che restituisce il lato inferiore.
int get_saved_version() const 🔗
Restituisce l'ultima versione salvata marcata da tag_saved_version().
float get_scroll_pos_for_line(line: int, wrap_index: int = 0) const 🔗
Restituisce la posizione di scorrimento per l'indice di avvolgimento (wrap_index) della riga line.
String get_selected_text(caret_index: int = -1) 🔗
Restituisce il testo all'interno della selezione di un cursore, o di tutti i cursori, se caret_index è il suo valore predefinito di -1.
int get_selection_at_line_column(line: int, column: int, include_edges: bool = true, only_selections: bool = true) const 🔗
Restituisce l'indice del cursore della selezione nella riga line e nella colonna column, oppure -1 se non ce n'è nessuno.
Se include_edges è false, la posizione deve essere all'interno della selezione e non a una delle due estremità. Se only_selections è false, verranno considerati anche i cursori senza selezione.
int get_selection_column(caret_index: int = 0) const 🔗
Deprecato: Use get_selection_origin_column() instead.
Restituisce la colonna iniziale della selezione.
int get_selection_from_column(caret_index: int = 0) const 🔗
Restituisce la colonna iniziale della selezione. Restituisce la colonna del cursore se non c'è alcuna selezione.
int get_selection_from_line(caret_index: int = 0) const 🔗
Restituisce la riga iniziale della selezione. Restituisce la riga del cursore se non c'è alcuna selezione.
int get_selection_line(caret_index: int = 0) const 🔗
Deprecato: Use get_selection_origin_line() instead.
Restituisce la riga iniziale di origine della selezione.
SelectionMode get_selection_mode() const 🔗
Restituisce la modalità di selezione attuale.
int get_selection_origin_column(caret_index: int = 0) const 🔗
Restituisce la colonna di origine della selezione. Questa è l'estremità opposta dal cursore.
int get_selection_origin_line(caret_index: int = 0) const 🔗
Restituisce la riga di origine della selezione. Questa è l'estremità opposta del cursore.
int get_selection_to_column(caret_index: int = 0) const 🔗
Restituisce la colonna finale della selezione. Restituisce la colonna del cursore se non c'è alcuna selezione.
int get_selection_to_line(caret_index: int = 0) const 🔗
Restituisce la riga finale della selezione. Restituisce la riga del cursore se non c'è alcuna selezione.
PackedInt32Array get_sorted_carets(include_ignored_carets: bool = false) const 🔗
Restituisce i cursori ordinati per selezione a partire dalla riga e dalla colonna più basse fino a quelle più alte (dall'alto verso il basso del testo).
Se include_ignored_carets è false, i cursori da multicaret_edit_ignore_caret() verranno ignorati.
Restituisce la dimensione delle schede del TextEdit.
int get_total_gutter_width() const 🔗
Restituisce la larghezza totale di tutte le barre laterali e imbottitura interna.
int get_total_visible_line_count() const 🔗
Restituisce il numero totale di righe nel testo. Questo numero include le righe avvolte ed esclude le righe ridotte. Se wrap_mode è impostato su LINE_WRAPPING_NONE e nessuna riga è ridotta (vedi CodeEdit.is_line_folded()), allora questo equivale a get_line_count(). Vedi get_visible_line_count_in_range() per un intervallo limitato di righe.
VScrollBar get_v_scroll_bar() const 🔗
Restituisce la VScrollBar del TextEdit.
Restituisce la versione corrente del TextEdit. La versione è un conteggio delle operazioni registrate dalla cronologia annulla/ripristina.
int get_visible_line_count() const 🔗
Restituisce il numero di righe che è possibile inserire visualmente, arrotondato per difetto, in base all'altezza di questo controllo.
int get_visible_line_count_in_range(from_line: int, to_line: int) const 🔗
Restituisce il numero totale di righe tra from_line e to_line (inclusi) nel testo. Include le righe avvolte ed esclude le righe ridotte. Se l'intervallo copre tutte le righe, equivale a get_total_visible_line_count().
String get_word_at_pos(position: Vector2) const 🔗
Restituisce la parola alla posizione position.
String get_word_under_caret(caret_index: int = -1) const 🔗
Restituisce un testo String con la parola sotto la posizione del cursore.
Restituisce true se l'utente ha testo nell'Input Method Editor (IME).
Restituisce true se un'azione "ripeti" è disponibile.
bool has_selection(caret_index: int = -1) const 🔗
Restituisce true se l'utente ha selezionato del testo.
Restituisce true se un'azione "annulla" è disponibile.
void insert_line_at(line: int, text: String) 🔗
Inserisce una nuova riga con text a line.
void insert_text(text: String, line: int, column: int, before_selection_begin: bool = true, before_selection_end: bool = false) 🔗
Inserisce text alla riga line e colonna column.
Se before_selection_begin è true, i cursori e le selezioni che iniziano in line e column saranno spostati alla fine del testo inserito, insieme a tutti i cursori successivi.
Se before_selection_end è true, le selezioni che terminano in line e column saranno estese alla fine del testo inserito. Questi parametri possono essere usati per inserire testo all'interno o all'esterno delle selezioni.
void insert_text_at_caret(text: String, caret_index: int = -1) 🔗
Inserisce il testo specificato nella posizione del cursore.
bool is_caret_after_selection_origin(caret_index: int = 0) const 🔗
Restituisce true se il cursore della selezione è dopo l'origine della selezione. Questo può essere utilizzato per determinare la direzione della selezione.
bool is_caret_visible(caret_index: int = 0) const 🔗
Restituisce true se il cursore è visibile, altrimenti false. Un cursore sarà considerato nascosto se si trova al di fuori dell'area scorrevole quando lo scorrimento è abilitato.
Nota: is_caret_visible() non tiene conto del fatto che un cursore sia fuori dallo schermo se si trova ancora all'interno dell'area scorrevole. Restituirà true anche se il cursore è fuori dallo schermo, purché soddisfi le condizioni di TextEdit per essere visibile. Ciò include gli usi di scroll_fit_content_width e scroll_fit_content_height che causano l'espansione del TextEdit oltre i limiti della viewport.
Nota: Questo metodo non è garantito di essere accurato subito dopo aver impostato la posizione del cursore. Il valore corretto potrebbe essere disponibile solo nel frame successivo, dopo che il TextEdit ha finito di disegnare. Questo vale anche per qualsiasi operazione che potrebbe cambiare le dimensioni del TextEdit.
bool is_dragging_cursor() const 🔗
Restituisce true se l'utente sta trascinando il mouse per scorrere, selezionare, o trascinare il testo.
bool is_gutter_clickable(gutter: int) const 🔗
Restituisce true se la barra laterale all'indice specificato è cliccabile. Vedi set_gutter_clickable().
bool is_gutter_drawn(gutter: int) const 🔗
Restituisce true se la barra laterale all'indice specificato è attualmente disegnata. Vedi set_gutter_draw().
bool is_gutter_overwritable(gutter: int) const 🔗
Restituisce true se la barra laterale all'indice specificato è sovrascrivibile. Vedi set_gutter_overwritable().
bool is_in_mulitcaret_edit() const 🔗
Restituisce true se begin_multicaret_edit() è stato chiamato e end_multicaret_edit() non è ancora stato chiamato.
bool is_line_gutter_clickable(line: int, gutter: int) const 🔗
Restituisce true se la barra laterale all'indice specificato sulla riga specificata è cliccabile. Vedi set_line_gutter_clickable().
bool is_line_in_viewport(line: int) const 🔗
Returns true if the given line is within the scope of the scrollable area of the viewport.
bool is_line_wrapped(line: int) const 🔗
Restituisce se la riga specificata è avvolta.
Restituisce true se il menù è visibile. Usa questo invece di get_menu().visible per migliorare le prestazioni (in modo da evitare la creazione del menu). Vedi get_menu().
bool is_mouse_over_selection(edges: bool, caret_index: int = -1) const 🔗
Restituisce true se il mouse è sopra una selezione. Se edges è true, i bordi sono considerati parte della selezione.
bool is_overtype_mode_enabled() const 🔗
Restituisce true se la modalità sovrascrittura è abilitata. Vedi set_overtype_mode_enabled().
Esegue l'azione specificata come definito nell'enumerazione MenuItems.
void merge_gutters(from_line: int, to_line: int) 🔗
Unisce le barre laterali dalla riga from_line alla riga to_line. Solo le barre sovrascrivibili saranno copiate. Vedi set_gutter_overwritable().
void merge_overlapping_carets() 🔗
Unisce tutti i cursori sovrapposti. Favorirà il cursore più recente o il cursore con una selezione.
Se is_in_mulitcaret_edit() è true, l'unione sarà messa in coda per essere eseguita alla fine della modifica per più cursori. Vedi begin_multicaret_edit() e end_multicaret_edit().
Nota: Questo non viene chiamato quando un cursore cambia posizione, ma dopo determinate azioni, quindi è possibile entrare in uno stato in cui i cursori sono sovrapposti.
bool multicaret_edit_ignore_caret(caret_index: int) const 🔗
Restituisce true se il cursore caret_index deve essere ignorato come parte di una modifica per più cursori. Vedi begin_multicaret_edit() e end_multicaret_edit(). I cursori che devono essere ignorati sono quelli che facevano parte del testo rimosso e che saranno probabilmente uniti alla fine della modifica, oppure i cursori che sono stati aggiunti durante la modifica.
Si consiglia di usare continue all'interno di un ciclo che esegue l'iterazione su più cursori se un cursore deve essere ignorato.
void paste(caret_index: int = -1) 🔗
Incolla nella posizione attuale. Può essere sovrascritto con _paste().
void paste_primary_clipboard(caret_index: int = -1) 🔗
Incolla gli appunti principali.
void redo() 🔗
Esegue un operazione ripeti.
void remove_caret(caret: int) 🔗
Rimuove il cursore all'indice specificato.
Nota: Ciò può comportare l'aggiustamento di tutti gli altri indici dei cursori.
void remove_gutter(gutter: int) 🔗
Rimuove la barra laterale all'indice specificato.
void remove_line_at(line: int, move_carets_down: bool = true) 🔗
Rimuove la riga di testo in line. I cursori su questa riga tenteranno di corrispondere alla loro precedente posizione x visiva.
Se move_carets_down è true i cursori si sposteranno alla riga successiva in basso, altrimenti si sposteranno in alto.
void remove_secondary_carets() 🔗
Rimuove tutti i cursori aggiuntivi.
void remove_text(from_line: int, from_column: int, to_line: int, to_column: int) 🔗
Rimuove il testo tra le posizioni indicate.
Vector2i search(text: String, flags: int, from_line: int, from_column: int) const 🔗
Esegue una ricerca all'interno del testo. I flag di ricerca possono essere specificati dall' enumerazione SearchFlags.
Nel vettore restituito, x è la colonna, y è la riga. Se non vengono trovati risultati, entrambi sono uguali a -1.
var result = search("print", SEARCH_WHOLE_WORDS, 0, 0)
if result.x != -1:
# Risultato trovato.
var line_number = result.y
var column_number = result.x
Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0);
if (result.X != -1)
{
// Risultato trovato.
int lineNumber = result.Y;
int columnNumber = result.X;
}
void select(origin_line: int, origin_column: int, caret_line: int, caret_column: int, caret_index: int = 0) 🔗
Seleziona il testo dalla riga origin_line e colonna origin_column alla riga caret_line e colonna caret_column per il cursore all'indice caret_index. Questo sposta l'origine della selezione e il cursore. Se le posizioni sono le stesse, la selezione sarà deselezionata.
Se selecting_enabled è false, nessuna selezione sarà effettuata.
Nota: Se si supportano più cursori, i cursori si potrebbero sovrapporre. Vedi merge_overlapping_carets().
void select_all() 🔗
Seleziona tutto il testo.
Se selecting_enabled è false, nessuna selezione sarà effettuata.
void select_word_under_caret(caret_index: int = -1) 🔗
Seleziona la parola sotto il cursore.
void set_caret_column(column: int, adjust_viewport: bool = true, caret_index: int = 0) 🔗
Sposta il cursore alla colonna column.
Se adjust_viewport è true, la vista verrà centrata sulla posizione del cursore dopo lo spostamento.
Nota: Se si supportano più cursori, i cursori si potrebbero sovrapporre. Vedi merge_overlapping_carets().
void set_caret_line(line: int, adjust_viewport: bool = true, can_be_hidden: bool = true, wrap_index: int = 0, caret_index: int = 0) 🔗
Sposta il cursore alla riga line. La colonna del cursore sarà spostata nella stessa posizione visiva in cui si trovava l'ultima volta che è stato chiamato set_caret_column(), oppure bloccata alla fine della riga.
Se adjust_viewport è true, la vista verrà centrata sulla posizione del cursore dopo lo spostamento.
Se can_be_hidden è true, la riga line può essere nascosta.
Se wrap_index è -1, la colonna del cursore verrà bloccata alla lunghezza della riga line. Se wrap_index è maggiore di -1, la colonna sarà spostata per tentare di far corrispondere la posizione visiva x sull'indice di avvolgimento (wrap_index) della riga alla posizione dall'ultima volta che è stato chiamato set_caret_column().
Nota: Se si supportano più cursori, i cursori si potrebbero sovrapporre. Vedi merge_overlapping_carets().
void set_gutter_clickable(gutter: int, clickable: bool) 🔗
Se true, il cursore del mouse si trasformerà in una mano che indica (Control.CURSOR_POINTING_HAND) quando si passa sopra la barra laterale all'indice specificato. Vedi is_gutter_clickable() e set_line_gutter_clickable().
void set_gutter_custom_draw(column: int, draw_callback: Callable) 🔗
Imposta un metodo di disegno personalizzato per la barra laterale. draw_callback deve accettare i seguenti argomenti: Un indice di riga int, un indice di barra int e un area Rect2. Questo callback funziona solo quando il tipo di barra è GUTTER_TYPE_CUSTOM (vedi set_gutter_type()).
void set_gutter_draw(gutter: int, draw: bool) 🔗
Se true, la barra laterale all'indice specificato è disegnata. Il tipo di barra (set_gutter_type()) determina come è disegnata. Vedi is_gutter_drawn().
void set_gutter_name(gutter: int, name: String) 🔗
Imposta il nome della barra laterale all'indice specificato.
void set_gutter_overwritable(gutter: int, overwritable: bool) 🔗
Se true, è possibile sovrascrivere i dati della riga della barra laterale all'indice specificato quando si usa merge_gutters(). Vedi is_gutter_overwritable().
void set_gutter_type(gutter: int, type: GutterType) 🔗
Imposta il tipo di barra laterale all'indice specificato. Le barre possono contenere icone, testo o elementi visivi personalizzati.
void set_gutter_width(gutter: int, width: int) 🔗
Imposta la larghezza della barra laterale all'indice specificato.
void set_line(line: int, new_text: String) 🔗
Imposta il testo per la riga line.
I cursori sulla riga tenteranno di mantenere la loro posizione x visiva.
void set_line_as_center_visible(line: int, wrap_index: int = 0) 🔗
Posiziona l'indice di avvolgimento wrap_index della riga line al centro della vista.
void set_line_as_first_visible(line: int, wrap_index: int = 0) 🔗
Posiziona l'indice di avvolgimento wrap_index della riga line nella parte superiore della vista.
void set_line_as_last_visible(line: int, wrap_index: int = 0) 🔗
Posiziona l'indice di avvolgimento wrap_index della riga line nella parte inferiore della vista.
void set_line_background_color(line: int, color: Color) 🔗
Imposta il colore di sfondo personalizzato della riga specificata. Se trasparente, questo colore viene applicato sopra il colore di sfondo predefinito (vedi background_color). Se impostato su Color(0, 0, 0, 0), nessun colore aggiuntivo viene applicato.
void set_line_gutter_clickable(line: int, gutter: int, clickable: bool) 🔗
Se clickable è true, rende cliccabile la barra laterale gutter sulla riga line. È come set_gutter_clickable(), ma per una singola riga. Se is_gutter_clickable() è true, non avrà alcun effetto. Vedi is_line_gutter_clickable() e gutter_clicked.
void set_line_gutter_icon(line: int, gutter: int, icon: Texture2D) 🔗
Imposta l'icona per la barra laterale gutter sulla riga line su icon. Funziona solo quando il tipo di barra è GUTTER_TYPE_ICON (vedi set_gutter_type()).
void set_line_gutter_item_color(line: int, gutter: int, color: Color) 🔗
Imposta il colore per la barra laterale gutter sulla riga line su color.
void set_line_gutter_metadata(line: int, gutter: int, metadata: Variant) 🔗
Imposta i metadati per la barra laterale gutter sulla riga line su metadata.
void set_line_gutter_text(line: int, gutter: int, text: String) 🔗
Imposta il testo per la barra laterale gutter sulla riga line su text. Funziona solo quando il tipo di barra è GUTTER_TYPE_STRING (vedi set_gutter_type()).
void set_overtype_mode_enabled(enabled: bool) 🔗
Se true, abilita la modalità sovrascrittura. In questa modalità, la digitazione sovrascrive il testo esistente invece di inserirlo. L'azione ProjectSettings.input/ui_text_toggle_insert_mode alterna la modalità sovrascrittura. Vedi is_overtype_mode_enabled().
void set_search_flags(flags: int) 🔗
Imposta i flag di ricerca su flags. È utilizzato con set_search_text() per evidenziare le occorrenze del testo cercato. I flag di ricerca possono essere specificati dall'enumerazione SearchFlags.
void set_search_text(search_text: String) 🔗
Imposta il testo della ricerca. Vedi set_search_flags().
void set_selection_mode(mode: SelectionMode) 🔗
Imposta la modalità di selezione attuale.
void set_selection_origin_column(column: int, caret_index: int = 0) 🔗
Imposta la colonna di origine della selezione su column per il cursore all'indice caret_index. Se l'origine della selezione è spostata nella posizione del cursore, la selezione sarà deselezionata.
void set_selection_origin_line(line: int, can_be_hidden: bool = true, wrap_index: int = -1, caret_index: int = 0) 🔗
Imposta la riga di origine della selezione su line per il cursore all'indice caret_index. Se l'origine della selezione è spostata nella posizione del cursore, la selezione sarà deselezionata.
Se can_be_hidden è false, la riga sarà impostata sulla riga non nascosta più vicina sotto o sopra.
Se wrap_index è -1, la colonna di origine della selezione verrà bloccata alla lunghezza della riga line. Se wrap_index è maggiore di -1, la colonna sarà spostata per tentare di far corrispondere la posizione x visiva sull'indice di avvolgimento wrap_index della riga alla posizione dall'ultima volta che è stato chiamato set_selection_origin_column() o select().
void set_tab_size(size: int) 🔗
Imposta la dimensione delle schede usate dal TextEdit.
void set_tooltip_request_func(callback: Callable) 🔗
Fornisce un testo di suggerimento personalizzato. Il metodo di callback deve accettare i seguenti argomenti: hovered_word: String.
void skip_selection_for_next_occurrence() 🔗
Sposta una selezione e un cursore per l'occorrenza successiva della selezione attuale. Se non c'è una selezione attiva, si sposta all'occorrenza successiva della parola sotto il cursore.
void start_action(action: EditAction) 🔗
Avvia un'azione, terminerà l'azione attuale se action è diverso.
Un'azione terminerà anche dopo una chiamata a end_action(), dopo che ProjectSettings.gui/timers/text_edit_idle_detect_sec è attivato o un nuovo passaggio annullabile al di fuori delle chiamate start_action() e end_action().
void swap_lines(from_line: int, to_line: int) 🔗
Scambia le due righe. I cursori saranno scambiati con le righe.
void tag_saved_version() 🔗
Contrassegna la versione attuale come salvata.
void undo() 🔗
Esegue un'operazione di annullamento.
Descrizioni delle proprietà del tema
Color background_color = Color(0, 0, 0, 0) 🔗
Imposta il Color di sfondo di questo TextEdit.
Color caret_background_color = Color(0, 0, 0, 1) 🔗
Il Color del testo dietro il cursore quando si utilizza un cursore a blocco.
Color caret_color = Color(0.875, 0.875, 0.875, 1) 🔗
Il Color del cursore. Questo può essere impostato su un colore completamente trasparente per nascondere completamente il cursore.
Color current_line_color = Color(0.25, 0.25, 0.26, 0.8) 🔗
Il Color di sfondo della riga che contiene il cursore.
Color font_color = Color(0.875, 0.875, 0.875, 1) 🔗
Imposta il Color del font.
Color font_outline_color = Color(0, 0, 0, 1) 🔗
La tinta del contorno del testo del TextEdit.
Color font_placeholder_color = Color(0.875, 0.875, 0.875, 0.6) 🔗
Colore del font per placeholder_text.
Color font_readonly_color = Color(0.875, 0.875, 0.875, 0.5) 🔗
Imposta il Color del font quando editable è disabilitato.
Color font_selected_color = Color(0, 0, 0, 0) 🔗
Imposta il Color del testo selezionato. Se uguale a Color(0, 0, 0, 0), sarà ignorato.
Color search_result_border_color = Color(0.3, 0.3, 0.3, 0.4) 🔗
Il Color del bordo attorno al testo che corrisponde all'interrogazione di una ricerca.
Color search_result_color = Color(0.3, 0.3, 0.3, 1) 🔗
Il Color dietro il testo che corrisponde all'interrogazione di una ricerca.
Color selection_color = Color(0.5, 0.5, 0.5, 1) 🔗
Imposta il [Colore di evidenziazione delle selezioni di testo.
Color word_highlighted_color = Color(0.5, 0.5, 0.5, 0.25) 🔗
Imposta il Color di evidenziazione di più occorrenze. highlight_all_occurrences deve essere abilitato.
La larghezza del cursore in pixel. È possibile utilizzare valori maggiori per migliorare l'accessibilità garantendo che il cursore sia facilmente visibile o per garantire la coerenza con una grande dimensione di font. Se impostata su 0 o inferiore, la larghezza del cursore sarà automaticamente impostata su 1 pixel e moltiplicata per il fattore di scala del display.
Spaziatura verticale aggiuntiva tra le righe (in pixel), la spaziatura è aggiunta alla discesa della riga. Questo valore può essere negativo.
La dimensione del contorno del testo.
Nota: Se si utilizza un font con FontFile.multichannel_signed_distance_field abilitato, il suo FontFile.msdf_pixel_range deve essere impostato su almeno il doppio del valore di outline_size affinché il rendering del contorno appaia corretto. Altrimenti, il contorno potrebbe apparire troncato prima del previsto.
Sets an additional margin for line wrapping width.
Imposta il Font predefinito.
Imposta la dimensione predefinita del font.
Imposta una Texture2D personalizzata per i caratteri di spazio del testo.
Imposta una Texture2D personalizzata per i caratteri di tabulazione del testo.
Imposta lo StyleBox quando è in focus. Lo StyleBox di focus è visualizzato sopra lo StyleBox di base, quindi è necessario utilizzare uno StyleBox parzialmente trasparente per garantire che lo StyleBox di base rimanga visibile. Uno StyleBox che rappresenta un contorno o una sottolineatura funziona bene per questo scopo. Per disabilitare l'effetto visivo del focus, assegna una risorsa StyleBoxEmpty. Tieni presente che disattivare l'effetto visivo di focus ridurrà l'usabilità della navigazione tramite tastiera o controller, perciò non è consigliato per motivi di accessibilità.
Imposta lo StyleBox di questo TextEdit.
Imposta lo StyleBox di questo TextEdit quando editable è disabilitato.