Documentation
¶
Overview ¶
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 [CodeEdit]. Note: Most viewport, caret, and edit methods contain a caret_index argument for [member 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. Note: When holding down [kbd]Alt[/kbd], the vertical scroll wheel will scroll 5 times as fast as it would normally do. This also works in the Godot script editor.
Index ¶
- type Advanced
- type Any
- type CaretType
- type EditAction
- type Expanded
- func (self Expanded) AddGutter(at int)
- func (self Expanded) AdjustViewportToCaret(caret_index int)
- func (self Expanded) Backspace(caret_index int)
- func (self Expanded) CenterViewportToCaret(caret_index int)
- func (self Expanded) CollapseCarets(from_line int, from_column int, to_line int, to_column int, inclusive bool)
- func (self Expanded) Copy(caret_index int)
- func (self Expanded) Cut(caret_index int)
- func (self Expanded) DeleteSelection(caret_index int)
- func (self Expanded) Deselect(caret_index int)
- func (self Expanded) GetCaretColumn(caret_index int) int
- func (self Expanded) GetCaretDrawPos(caret_index int) Vector2.XY
- func (self Expanded) GetCaretLine(caret_index int) int
- func (self Expanded) GetCaretWrapIndex(caret_index int) int
- func (self Expanded) GetLineColumnAtPos(position Vector2i.XY, clamp_line bool, clamp_column bool) Vector2i.XY
- func (self Expanded) GetLineRangesFromCarets(only_selections bool, merge_adjacent bool) []Vector2i.XY
- func (self Expanded) GetLineWidth(line int, wrap_index int) int
- func (self Expanded) GetScrollPosForLine(line int, wrap_index int) Float.X
- func (self Expanded) GetSelectedText(caret_index int) string
- func (self Expanded) GetSelectionAtLineColumn(line int, column int, include_edges bool, only_selections bool) int
- func (self Expanded) GetSelectionColumn(caret_index int) int
- func (self Expanded) GetSelectionFromColumn(caret_index int) int
- func (self Expanded) GetSelectionFromLine(caret_index int) int
- func (self Expanded) GetSelectionLine(caret_index int) int
- func (self Expanded) GetSelectionOriginColumn(caret_index int) int
- func (self Expanded) GetSelectionOriginLine(caret_index int) int
- func (self Expanded) GetSelectionToColumn(caret_index int) int
- func (self Expanded) GetSelectionToLine(caret_index int) int
- func (self Expanded) GetSortedCarets(include_ignored_carets bool) []int32
- func (self Expanded) GetWordUnderCaret(caret_index int) string
- func (self Expanded) HasSelection(caret_index int) bool
- func (self Expanded) InsertText(text string, line int, column int, before_selection_begin bool, ...)
- func (self Expanded) InsertTextAtCaret(text string, caret_index int)
- func (self Expanded) IsCaretAfterSelectionOrigin(caret_index int) bool
- func (self Expanded) IsCaretVisible(caret_index int) bool
- func (self Expanded) IsMouseOverSelection(edges bool, caret_index int) bool
- func (self Expanded) Paste(caret_index int)
- func (self Expanded) PastePrimaryClipboard(caret_index int)
- func (self Expanded) RemoveLineAt(line int, move_carets_down bool)
- func (self Expanded) Select(origin_line int, origin_column int, caret_line int, caret_column int, ...)
- func (self Expanded) SelectWordUnderCaret(caret_index int)
- func (self Expanded) SetCaretColumn(column int, adjust_viewport bool, caret_index int)
- func (self Expanded) SetCaretLine(line int, adjust_viewport bool, can_be_hidden bool, wrap_index int, ...)
- func (self Expanded) SetLineAsCenterVisible(line int, wrap_index int)
- func (self Expanded) SetLineAsFirstVisible(line int, wrap_index int)
- func (self Expanded) SetLineAsLastVisible(line int, wrap_index int)
- func (self Expanded) SetSelectionOriginColumn(column int, caret_index int)
- func (self Expanded) SetSelectionOriginLine(line int, can_be_hidden bool, wrap_index int, caret_index int)
- type Extension
- type GutterType
- type ID
- type Implementation
- type Instance
- func (self Instance) AddCaret(line int, column int) int
- func (self Instance) AddCaretAtCarets(below bool)
- func (self Instance) AddGutter()
- func (self Instance) AddSelectionForNextOccurrence()
- func (self Instance) AdjustCaretsAfterEdit(caret int, from_line int, from_col int, to_line int, to_col int)
- func (self Instance) AdjustViewportToCaret()
- func (self Instance) ApplyIme()
- func (self Instance) AsCanvasItem() CanvasItem.Instance
- func (self Instance) AsControl() Control.Instance
- func (self Instance) AsNode() Node.Instance
- func (self Instance) AsObject() [1]gd.Object
- func (self Instance) AsTextEdit() Instance
- func (self Instance) AutowrapMode() TextServer.AutowrapMode
- func (self Instance) Backspace()
- func (self Instance) BeginComplexOperation()
- func (self Instance) BeginMulticaretEdit()
- func (self Instance) CancelIme()
- func (self Instance) CaretBlink() bool
- func (self Instance) CaretBlinkInterval() Float.X
- func (self Instance) CaretDrawWhenEditableDisabled() bool
- func (self Instance) CaretMidGrapheme() bool
- func (self Instance) CaretMoveOnRightClick() bool
- func (self Instance) CaretMultiple() bool
- func (self Instance) CaretType() CaretType
- func (self Instance) CenterViewportToCaret()
- func (self Instance) Clear()
- func (self Instance) ClearUndoHistory()
- func (self Instance) CollapseCarets(from_line int, from_column int, to_line int, to_column int)
- func (self Instance) ContextMenuEnabled() bool
- func (self Instance) Copy()
- func (self Instance) CustomWordSeparators() string
- func (self Instance) Cut()
- func (self Instance) DeleteSelection()
- func (self Instance) Deselect()
- func (self Instance) DeselectOnFocusLossEnabled() bool
- func (self Instance) DragAndDropSelectionEnabled() bool
- func (self Instance) DrawControlChars() bool
- func (self Instance) DrawSpaces() bool
- func (self Instance) DrawTabs() bool
- func (self Instance) Editable() bool
- func (self Instance) EmojiMenuEnabled() bool
- func (self Instance) EmptySelectionClipboardEnabled() bool
- func (self Instance) EndAction()
- func (self Instance) EndComplexOperation()
- func (self Instance) EndMulticaretEdit()
- func (self Instance) GetCaretColumn() int
- func (self Instance) GetCaretCount() int
- func (self Instance) GetCaretDrawPos() Vector2.XY
- func (self Instance) GetCaretIndexEditOrder() []int32
- func (self Instance) GetCaretLine() int
- func (self Instance) GetCaretWrapIndex() int
- func (self Instance) GetFirstNonWhitespaceColumn(line int) int
- func (self Instance) GetFirstVisibleLine() int
- func (self Instance) GetGutterCount() int
- func (self Instance) GetGutterName(gutter int) string
- func (self Instance) GetGutterType(gutter int) GutterType
- func (self Instance) GetGutterWidth(gutter int) int
- func (self Instance) GetHScrollBar() HScrollBar.Instance
- func (self Instance) GetIndentLevel(line int) int
- func (self Instance) GetLastFullVisibleLine() int
- func (self Instance) GetLastFullVisibleLineWrapIndex() int
- func (self Instance) GetLastUnhiddenLine() int
- func (self Instance) GetLine(line int) string
- func (self Instance) GetLineBackgroundColor(line int) Color.RGBA
- func (self Instance) GetLineColumnAtPos(position Vector2i.XY) Vector2i.XY
- func (self Instance) GetLineCount() int
- func (self Instance) GetLineGutterIcon(line int, gutter int) Texture2D.Instance
- func (self Instance) GetLineGutterItemColor(line int, gutter int) Color.RGBA
- func (self Instance) GetLineGutterMetadata(line int, gutter int) any
- func (self Instance) GetLineGutterText(line int, gutter int) string
- func (self Instance) GetLineHeight() int
- func (self Instance) GetLineRangesFromCarets() []Vector2i.XY
- func (self Instance) GetLineWidth(line int) int
- func (self Instance) GetLineWithIme(line int) string
- func (self Instance) GetLineWrapCount(line int) int
- func (self Instance) GetLineWrapIndexAtColumn(line int, column int) int
- func (self Instance) GetLineWrappedText(line int) []string
- func (self Instance) GetLocalMousePos() Vector2.XY
- func (self Instance) GetMenu() PopupMenu.Instance
- func (self Instance) GetMinimapLineAtPos(position Vector2i.XY) int
- func (self Instance) GetMinimapVisibleLines() int
- func (self Instance) GetNextVisibleLineIndexOffsetFrom(line int, wrap_index int, visible_amount int) Vector2i.XY
- func (self Instance) GetNextVisibleLineOffsetFrom(line int, visible_amount int) int
- func (self Instance) GetPosAtLineColumn(line int, column int) Vector2i.XY
- func (self Instance) GetRectAtLineColumn(line int, column int) Rect2i.PositionSize
- func (self Instance) GetSavedVersion() int
- func (self Instance) GetScrollPosForLine(line int) Float.X
- func (self Instance) GetSelectedText() string
- func (self Instance) GetSelectionAtLineColumn(line int, column int) int
- func (self Instance) GetSelectionColumn() int
- func (self Instance) GetSelectionFromColumn() int
- func (self Instance) GetSelectionFromLine() int
- func (self Instance) GetSelectionLine() int
- func (self Instance) GetSelectionMode() SelectionMode
- func (self Instance) GetSelectionOriginColumn() int
- func (self Instance) GetSelectionOriginLine() int
- func (self Instance) GetSelectionToColumn() int
- func (self Instance) GetSelectionToLine() int
- func (self Instance) GetSortedCarets() []int32
- func (self Instance) GetTabSize() int
- func (self Instance) GetTotalGutterWidth() int
- func (self Instance) GetTotalVisibleLineCount() int
- func (self Instance) GetVScrollBar() VScrollBar.Instance
- func (self Instance) GetVersion() int
- func (self Instance) GetVisibleLineCount() int
- func (self Instance) GetVisibleLineCountInRange(from_line int, to_line int) int
- func (self Instance) GetWordAtPos(position Vector2.XY) string
- func (self Instance) GetWordUnderCaret() string
- func (self Instance) HasImeText() bool
- func (self Instance) HasRedo() bool
- func (self Instance) HasSelection() bool
- func (self Instance) HasUndo() bool
- func (self Instance) HighlightAllOccurrences() bool
- func (self Instance) HighlightCurrentLine() bool
- func (self Instance) ID() ID
- func (self Instance) IndentWrappedLines() bool
- func (self Instance) InsertLineAt(line int, text string)
- func (self Instance) InsertText(text string, line int, column int)
- func (self Instance) InsertTextAtCaret(text string)
- func (self Instance) IsCaretAfterSelectionOrigin() bool
- func (self Instance) IsCaretVisible() bool
- func (self Instance) IsDraggingCursor() bool
- func (self Instance) IsGutterClickable(gutter int) bool
- func (self Instance) IsGutterDrawn(gutter int) bool
- func (self Instance) IsGutterOverwritable(gutter int) bool
- func (self Instance) IsInMulitcaretEdit() bool
- func (self Instance) IsLineGutterClickable(line int, gutter int) bool
- func (self Instance) IsLineWrapped(line int) bool
- func (self Instance) IsMenuVisible() bool
- func (self Instance) IsMouseOverSelection(edges bool) bool
- func (self Instance) IsOvertypeModeEnabled() bool
- func (self Instance) Language() string
- func (self Instance) MenuOption(option int)
- func (self Instance) MergeGutters(from_line int, to_line int)
- func (self Instance) MergeOverlappingCarets()
- func (self Instance) MiddleMousePasteEnabled() bool
- func (self Instance) MinimapDraw() bool
- func (self Instance) MinimapWidth() int
- func (self Instance) MulticaretEditIgnoreCaret(caret_index int) bool
- func (self Instance) OnCaretChanged(cb func(), flags ...Signal.Flags)
- func (self Instance) OnGutterAdded(cb func(), flags ...Signal.Flags)
- func (self Instance) OnGutterClicked(cb func(line int, gutter int), flags ...Signal.Flags)
- func (self Instance) OnGutterRemoved(cb func(), flags ...Signal.Flags)
- func (self Instance) OnLinesEditedFrom(cb func(from_line int, to_line int), flags ...Signal.Flags)
- func (self Instance) OnTextChanged(cb func(), flags ...Signal.Flags)
- func (self Instance) OnTextSet(cb func(), flags ...Signal.Flags)
- func (self Instance) Paste()
- func (self Instance) PastePrimaryClipboard()
- func (self Instance) PlaceholderText() string
- func (self Instance) Redo()
- func (self Instance) RemoveCaret(caret int)
- func (self Instance) RemoveGutter(gutter int)
- func (self Instance) RemoveLineAt(line int)
- func (self Instance) RemoveSecondaryCarets()
- func (self Instance) RemoveText(from_line int, from_column int, to_line int, to_column int)
- func (self Instance) ScrollFitContentHeight() bool
- func (self Instance) ScrollFitContentWidth() bool
- func (self Instance) ScrollHorizontal() int
- func (self Instance) ScrollPastEndOfFile() bool
- func (self Instance) ScrollSmooth() bool
- func (self Instance) ScrollVScrollSpeed() Float.X
- func (self Instance) ScrollVertical() Float.X
- func (self Instance) Search(text string, flags int, from_line int, from_column int) Vector2i.XY
- func (self Instance) Select(origin_line int, origin_column int, caret_line int, caret_column int)
- func (self Instance) SelectAll()
- func (self Instance) SelectWordUnderCaret()
- func (self Instance) SelectingEnabled() bool
- func (self Instance) SetAutowrapMode(value TextServer.AutowrapMode)
- func (self Instance) SetCaretBlink(value bool)
- func (self Instance) SetCaretBlinkInterval(value Float.X)
- func (self Instance) SetCaretColumn(column int)
- func (self Instance) SetCaretDrawWhenEditableDisabled(value bool)
- func (self Instance) SetCaretLine(line int)
- func (self Instance) SetCaretMidGrapheme(value bool)
- func (self Instance) SetCaretMoveOnRightClick(value bool)
- func (self Instance) SetCaretMultiple(value bool)
- func (self Instance) SetCaretType(value CaretType)
- func (self Instance) SetContextMenuEnabled(value bool)
- func (self Instance) SetCustomWordSeparators(value string)
- func (self Instance) SetDeselectOnFocusLossEnabled(value bool)
- func (self Instance) SetDragAndDropSelectionEnabled(value bool)
- func (self Instance) SetDrawControlChars(value bool)
- func (self Instance) SetDrawSpaces(value bool)
- func (self Instance) SetDrawTabs(value bool)
- func (self Instance) SetEditable(value bool)
- func (self Instance) SetEmojiMenuEnabled(value bool)
- func (self Instance) SetEmptySelectionClipboardEnabled(value bool)
- func (self Instance) SetGutterClickable(gutter int, clickable bool)
- func (self Instance) SetGutterCustomDraw(column int, draw_callback func(line int, gutter int, area Rect2.PositionSize))
- func (self Instance) SetGutterDraw(gutter int, draw bool)
- func (self Instance) SetGutterName(gutter int, name string)
- func (self Instance) SetGutterOverwritable(gutter int, overwritable bool)
- func (self Instance) SetGutterType(gutter int, atype GutterType)
- func (self Instance) SetGutterWidth(gutter int, width int)
- func (self Instance) SetHighlightAllOccurrences(value bool)
- func (self Instance) SetHighlightCurrentLine(value bool)
- func (self Instance) SetIndentWrappedLines(value bool)
- func (self Instance) SetLanguage(value string)
- func (self Instance) SetLine(line int, new_text string)
- func (self Instance) SetLineAsCenterVisible(line int)
- func (self Instance) SetLineAsFirstVisible(line int)
- func (self Instance) SetLineAsLastVisible(line int)
- func (self Instance) SetLineBackgroundColor(line int, color Color.RGBA)
- func (self Instance) SetLineGutterClickable(line int, gutter int, clickable bool)
- func (self Instance) SetLineGutterIcon(line int, gutter int, icon Texture2D.Instance)
- func (self Instance) SetLineGutterItemColor(line int, gutter int, color Color.RGBA)
- func (self Instance) SetLineGutterMetadata(line int, gutter int, metadata any)
- func (self Instance) SetLineGutterText(line int, gutter int, text string)
- func (self Instance) SetMiddleMousePasteEnabled(value bool)
- func (self Instance) SetMinimapDraw(value bool)
- func (self Instance) SetMinimapWidth(value int)
- func (self *Instance) SetObject(obj [1]gd.Object) bool
- func (self Instance) SetOvertypeModeEnabled(enabled bool)
- func (self Instance) SetPlaceholderText(value string)
- func (self Instance) SetScrollFitContentHeight(value bool)
- func (self Instance) SetScrollFitContentWidth(value bool)
- func (self Instance) SetScrollHorizontal(value int)
- func (self Instance) SetScrollPastEndOfFile(value bool)
- func (self Instance) SetScrollSmooth(value bool)
- func (self Instance) SetScrollVScrollSpeed(value Float.X)
- func (self Instance) SetScrollVertical(value Float.X)
- func (self Instance) SetSearchFlags(flags int)
- func (self Instance) SetSearchText(search_text string)
- func (self Instance) SetSelectingEnabled(value bool)
- func (self Instance) SetSelectionMode(mode SelectionMode)
- func (self Instance) SetSelectionOriginColumn(column int)
- func (self Instance) SetSelectionOriginLine(line int)
- func (self Instance) SetShortcutKeysEnabled(value bool)
- func (self Instance) SetStructuredTextBidiOverride(value TextServer.StructuredTextParser)
- func (self Instance) SetStructuredTextBidiOverrideOptions(value []any)
- func (self Instance) SetTabSize(size int)
- func (self Instance) SetText(value string)
- func (self Instance) SetTextDirection(value Control.TextDirection)
- func (self Instance) SetTooltipRequestFunc(callback func(hovered_word string) string)
- func (self Instance) SetUseCustomWordSeparators(value bool)
- func (self Instance) SetUseDefaultWordSeparators(value bool)
- func (self Instance) SetVirtualKeyboardEnabled(value bool)
- func (self Instance) SetWrapMode(value LineWrappingMode)
- func (self Instance) ShortcutKeysEnabled() bool
- func (self Instance) SkipSelectionForNextOccurrence()
- func (self Instance) StartAction(action EditAction)
- func (self Instance) StructuredTextBidiOverride() TextServer.StructuredTextParser
- func (self Instance) StructuredTextBidiOverrideOptions() []any
- func (self Instance) SwapLines(from_line int, to_line int)
- func (self Instance) TagSavedVersion()
- func (self Instance) Text() string
- func (self Instance) TextDirection() Control.TextDirection
- func (self Instance) Undo()
- func (self Instance) UseCustomWordSeparators() bool
- func (self Instance) UseDefaultWordSeparators() bool
- func (self Instance) Virtual(name string) reflect.Value
- func (self Instance) VirtualKeyboardEnabled() bool
- func (self Instance) WrapMode() LineWrappingMode
- type Interface
- type LineWrappingMode
- type MenuItems
- type SearchFlags
- type SelectionMode
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Advanced ¶
type Advanced = class
Advanced exposes a 1:1 low-level instance of the class, undocumented, for those who know what they are doing.
type EditAction ¶
type EditAction int //gd:TextEdit.EditAction
const ( /*No current action.*/ ActionNone EditAction = 0 /*A typing action.*/ ActionTyping EditAction = 1 /*A backwards delete action.*/ ActionBackspace EditAction = 2 /*A forward delete action.*/ ActionDelete EditAction = 3 )
type Expanded ¶
func (Expanded) AddGutter ¶
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.
func (Expanded) AdjustViewportToCaret ¶
Adjust the viewport so the caret is visible.
func (Expanded) Backspace ¶
Called when the user presses the backspace key. Can be overridden with Instance.Backspace.
func (Expanded) CenterViewportToCaret ¶
Centers the viewport on the line the editing caret is at. This also resets the [member scroll_horizontal] value to 0.
func (Expanded) CollapseCarets ¶
func (self Expanded) CollapseCarets(from_line int, from_column int, to_line int, to_column int, inclusive bool)
Collapse all carets in the given range to the 'from_line' and 'from_column' position. 'inclusive' applies to both ends. If Instance.IsInMulitcaretEdit is true, carets that are collapsed will be true for Instance.MulticaretEditIgnoreCaret. Instance.MergeOverlappingCarets will be called if any carets were collapsed.
func (Expanded) Copy ¶
Copies the current text selection. Can be overridden with Instance.Copy.
func (Expanded) Cut ¶
Cut's the current selection. Can be overridden with Instance.Cut.
func (Expanded) DeleteSelection ¶
Deletes the selected text.
func (Expanded) GetCaretColumn ¶
Returns the column the editing caret is at.
func (Expanded) GetCaretDrawPos ¶
Returns the caret pixel draw position.
func (Expanded) GetCaretLine ¶
Returns the line the editing caret is on.
func (Expanded) GetCaretWrapIndex ¶
Returns the wrap index the editing caret is on.
func (Expanded) GetLineColumnAtPos ¶
func (self Expanded) GetLineColumnAtPos(position Vector2i.XY, clamp_line bool, clamp_column bool) Vector2i.XY
Returns the line and column at the given position. In the returned vector, x is the column and y is the line. If 'clamp_line' is false and 'position' is below the last line, Vector2i(-1, -1) is returned. If 'clamp_column' is false and 'position' is outside the column range of the line, Vector2i(-1, -1) is returned.
func (Expanded) GetLineRangesFromCarets ¶
func (self Expanded) GetLineRangesFromCarets(only_selections bool, merge_adjacent bool) []Vector2i.XY
Returns an [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. If a selection's end column (Instance.GetSelectionToColumn) 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.
func (Expanded) GetLineWidth ¶
Returns the width in pixels of the 'wrap_index' on 'line'.
func (Expanded) GetScrollPosForLine ¶
Returns the scroll position for 'wrap_index' of 'line'.
func (Expanded) GetSelectedText ¶
Returns the text inside the selection of a caret, or all the carets if 'caret_index' is its default value -1.
func (Expanded) GetSelectionAtLineColumn ¶
func (self Expanded) GetSelectionAtLineColumn(line int, column int, include_edges bool, only_selections bool) int
Returns the caret index of the selection at the given 'line' and 'column', or -1 if there is none. 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.
func (Expanded) GetSelectionColumn ¶
Returns the original start column of the selection.
func (Expanded) GetSelectionFromColumn ¶
Returns the selection begin column. Returns the caret column if there is no selection.
func (Expanded) GetSelectionFromLine ¶
Returns the selection begin line. Returns the caret line if there is no selection.
func (Expanded) GetSelectionLine ¶
Returns the original start line of the selection.
func (Expanded) GetSelectionOriginColumn ¶
Returns the origin column of the selection. This is the opposite end from the caret.
func (Expanded) GetSelectionOriginLine ¶
Returns the origin line of the selection. This is the opposite end from the caret.
func (Expanded) GetSelectionToColumn ¶
Returns the selection end column. Returns the caret column if there is no selection.
func (Expanded) GetSelectionToLine ¶
Returns the selection end line. Returns the caret line if there is no selection.
func (Expanded) GetSortedCarets ¶
Returns the carets sorted by selection beginning from lowest line and column to highest (from top to bottom of text). If 'include_ignored_carets' is false, carets from Instance.MulticaretEditIgnoreCaret will be ignored.
func (Expanded) GetWordUnderCaret ¶
Returns a [String] text with the word under the caret's location.
func (Expanded) HasSelection ¶
Returns true if the user has selected text.
func (Expanded) InsertText ¶
func (self Expanded) InsertText(text string, line int, column int, before_selection_begin bool, before_selection_end bool)
Inserts the 'text' at 'line' and 'column'. 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. 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.
func (Expanded) InsertTextAtCaret ¶
Insert the specified text at the caret position.
func (Expanded) IsCaretAfterSelectionOrigin ¶
Returns true if the caret of the selection is after the selection origin. This can be used to determine the direction of the selection.
func (Expanded) IsCaretVisible ¶
Returns true if the caret is visible, false otherwise. A caret will be considered hidden if it is outside the scrollable area when scrolling is enabled. Note: Instance.IsCaretVisible does not account for a caret being off-screen if it is still within the scrollable area. It will return true even if the caret is off-screen as long as it meets [TextEdit]'s own conditions for being visible. This includes uses of [member scroll_fit_content_width] and [member scroll_fit_content_height] that cause the [TextEdit] to expand beyond the viewport's bounds.
func (Expanded) IsMouseOverSelection ¶
Returns true if the mouse is over a selection. If 'edges' is true, the edges are considered part of the selection.
func (Expanded) Paste ¶
Paste at the current location. Can be overridden with Instance.Paste.
func (Expanded) PastePrimaryClipboard ¶
Pastes the primary clipboard.
func (Expanded) RemoveLineAt ¶
Removes the line of text at 'line'. Carets on this line will attempt to match their previous visual x position. If 'move_carets_down' is true carets will move to the next line down, otherwise carets will move up.
func (Expanded) Select ¶
func (self Expanded) Select(origin_line int, origin_column int, caret_line int, caret_column int, caret_index int)
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. If [member selecting_enabled] is false, no selection will occur. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Expanded) SelectWordUnderCaret ¶
Selects the word under the caret.
func (Expanded) SetCaretColumn ¶
Moves the caret to the specified 'column' index. If 'adjust_viewport' is true, the viewport will center at the caret position after the move occurs. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Expanded) SetCaretLine ¶
func (self Expanded) SetCaretLine(line int, adjust_viewport bool, can_be_hidden bool, wrap_index int, caret_index int)
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 Instance.SetCaretColumn was called, or clamped to the end of the line. If 'adjust_viewport' is true, the viewport will center at the caret position after the move occurs. If 'can_be_hidden' is true, the specified 'line' can be hidden. 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 Instance.SetCaretColumn was called. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Expanded) SetLineAsCenterVisible ¶
Positions the 'wrap_index' of 'line' at the center of the viewport.
func (Expanded) SetLineAsFirstVisible ¶
Positions the 'wrap_index' of 'line' at the top of the viewport.
func (Expanded) SetLineAsLastVisible ¶
Positions the 'wrap_index' of 'line' at the bottom of the viewport.
func (Expanded) SetSelectionOriginColumn ¶
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.
func (Expanded) SetSelectionOriginLine ¶
func (self Expanded) SetSelectionOriginLine(line int, can_be_hidden bool, wrap_index int, caret_index int)
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. If 'can_be_hidden' is false, The line will be set to the nearest unhidden line below or above. 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 Instance.SetSelectionOriginColumn or Instance.Select was called.
type Extension ¶
Extension can be embedded in a new struct to create an extension of this class. T should be the type that is embedding this Extension
func (*Extension[T]) AsCanvasItem ¶
func (self *Extension[T]) AsCanvasItem() CanvasItem.Instance
func (*Extension[T]) AsTextEdit ¶
type GutterType ¶
type GutterType int //gd:TextEdit.GutterType
const ( /*When a gutter is set to string using [method set_gutter_type], it is used to contain text set via the [method set_line_gutter_text] method.*/ GutterTypeString GutterType = 0 /*When a gutter is set to icon using [method set_gutter_type], it is used to contain an icon set via the [method set_line_gutter_icon] method.*/ GutterTypeIcon GutterType = 1 /*When a gutter is set to custom using [method set_gutter_type], it is used to contain custom visuals controlled by a callback method set via the [method set_gutter_custom_draw] method.*/ GutterTypeCustom GutterType = 2 )
type ID ¶
ID is a typed object ID (reference) to an instance of this class, use it to store references to objects with unknown lifetimes, as an ID will not panic on use if the underlying object has been destroyed.
type Implementation ¶
type Implementation = implementation
Implementation implements Interface with empty methods.
type Instance ¶
Instance of the class with convieniently typed arguments and results. See Interface for methods that can be overridden by a [Class] that extends it.
var Nil Instance
Nil is a nil/null instance of the class. Equivalent to the zero value.
func (Instance) AddCaret ¶
Adds a new caret at the given location. Returns the index of the new caret, or -1 if the location is invalid.
func (Instance) AddCaretAtCarets ¶
Adds an additional caret above or below every caret. If 'below' is true the new caret will be added below and above otherwise.
func (Instance) AddGutter ¶
func (self Instance) AddGutter()
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.
func (Instance) AddSelectionForNextOccurrence ¶
func (self Instance) AddSelectionForNextOccurrence()
Adds a selection and a caret for the next occurrence of the current selection. If there is no active selection, selects word under caret.
func (Instance) AdjustCaretsAfterEdit ¶
func (self Instance) AdjustCaretsAfterEdit(caret int, from_line int, from_col int, to_line int, to_col int)
This method does nothing.
func (Instance) AdjustViewportToCaret ¶
func (self Instance) AdjustViewportToCaret()
Adjust the viewport so the caret is visible.
func (Instance) ApplyIme ¶
func (self Instance) ApplyIme()
Applies text from the [url=https://en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] (IME) to each caret and closes the IME if it is open.
func (Instance) AsCanvasItem ¶
func (self Instance) AsCanvasItem() CanvasItem.Instance
func (Instance) AsTextEdit ¶
func (Instance) AutowrapMode ¶
func (self Instance) AutowrapMode() TextServer.AutowrapMode
func (Instance) Backspace ¶
func (self Instance) Backspace()
Called when the user presses the backspace key. Can be overridden with Instance.Backspace.
func (Instance) BeginComplexOperation ¶
func (self Instance) BeginComplexOperation()
Starts a multipart edit. All edits will be treated as one action until Instance.EndComplexOperation is called.
func (Instance) BeginMulticaretEdit ¶
func (self Instance) BeginMulticaretEdit()
Starts an edit for multiple carets. The edit must be ended with Instance.EndMulticaretEdit. 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. Instance.BeginMulticaretEdit and Instance.EndMulticaretEdit can be nested, and the merge will happen at the last Instance.EndMulticaretEdit. [codeblock] begin_complex_operation() begin_multicaret_edit() for i in range(get_caret_count()):
if multicaret_edit_ignore_caret(i): continue # Logic here.
end_multicaret_edit() end_complex_operation() [/codeblock]
func (Instance) CancelIme ¶
func (self Instance) CancelIme()
Closes the [url=https://en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] (IME) if it is open. Any text in the IME will be lost.
func (Instance) CaretBlink ¶
func (Instance) CaretBlinkInterval ¶
func (Instance) CaretDrawWhenEditableDisabled ¶
func (Instance) CaretMidGrapheme ¶
func (Instance) CaretMoveOnRightClick ¶
func (Instance) CaretMultiple ¶
func (Instance) CenterViewportToCaret ¶
func (self Instance) CenterViewportToCaret()
Centers the viewport on the line the editing caret is at. This also resets the [member scroll_horizontal] value to 0.
func (Instance) Clear ¶
func (self Instance) Clear()
Performs a full reset of [TextEdit], including undo history.
func (Instance) CollapseCarets ¶
Collapse all carets in the given range to the 'from_line' and 'from_column' position. 'inclusive' applies to both ends. If Instance.IsInMulitcaretEdit is true, carets that are collapsed will be true for Instance.MulticaretEditIgnoreCaret. Instance.MergeOverlappingCarets will be called if any carets were collapsed.
func (Instance) ContextMenuEnabled ¶
func (Instance) Copy ¶
func (self Instance) Copy()
Copies the current text selection. Can be overridden with Instance.Copy.
func (Instance) CustomWordSeparators ¶
func (Instance) Cut ¶
func (self Instance) Cut()
Cut's the current selection. Can be overridden with Instance.Cut.
func (Instance) DeselectOnFocusLossEnabled ¶
func (Instance) DragAndDropSelectionEnabled ¶
func (Instance) DrawControlChars ¶
func (Instance) DrawSpaces ¶
func (Instance) EmojiMenuEnabled ¶
func (Instance) EmptySelectionClipboardEnabled ¶
func (Instance) EndAction ¶
func (self Instance) EndAction()
Marks the end of steps in the current action started with Instance.StartAction.
func (Instance) EndComplexOperation ¶
func (self Instance) EndComplexOperation()
Ends a multipart edit, started with Instance.BeginComplexOperation. If called outside a complex operation, the current operation is pushed onto the undo/redo stack.
func (Instance) EndMulticaretEdit ¶
func (self Instance) EndMulticaretEdit()
Ends an edit for multiple carets, that was started with Instance.BeginMulticaretEdit. If this was the last Instance.EndMulticaretEdit and Instance.MergeOverlappingCarets was called, carets will be merged.
func (Instance) GetCaretColumn ¶
Returns the column the editing caret is at.
func (Instance) GetCaretCount ¶
Returns the number of carets in this [TextEdit].
func (Instance) GetCaretDrawPos ¶
Returns the caret pixel draw position.
func (Instance) GetCaretIndexEditOrder ¶
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 Instance.InsertTextAtCaret are applied.
func (Instance) GetCaretLine ¶
Returns the line the editing caret is on.
func (Instance) GetCaretWrapIndex ¶
Returns the wrap index the editing caret is on.
func (Instance) GetFirstNonWhitespaceColumn ¶
Returns the first column containing a non-whitespace character on the given line. If there is only whitespace, returns the number of characters.
func (Instance) GetFirstVisibleLine ¶
Returns the first visible line.
func (Instance) GetGutterCount ¶
Returns the number of gutters registered.
func (Instance) GetGutterName ¶
Returns the name of the gutter at the given index.
func (Instance) GetGutterType ¶
func (self Instance) GetGutterType(gutter int) GutterType
Returns the type of the gutter at the given index. Gutters can contain icons, text, or custom visuals. See [TextEdit.GutterType] for options.
func (Instance) GetGutterWidth ¶
Returns the width of the gutter at the given index.
func (Instance) GetHScrollBar ¶
func (self Instance) GetHScrollBar() HScrollBar.Instance
Returns the [HScrollBar] used by [TextEdit].
func (Instance) GetIndentLevel ¶
Returns the indent level of the given line. This is the number of spaces and tabs at the beginning of the line, with the tabs taking the tab size into account (see Instance.GetTabSize).
func (Instance) GetLastFullVisibleLine ¶
Returns the last visible line. Use Instance.GetLastFullVisibleLineWrapIndex for the wrap index.
func (Instance) GetLastFullVisibleLineWrapIndex ¶
Returns the last visible wrap index of the last visible line.
func (Instance) GetLastUnhiddenLine ¶
Returns the last unhidden line in the entire [TextEdit].
func (Instance) GetLineBackgroundColor ¶
Returns the custom background color of the given line. If no color is set, returns Color(0, 0, 0, 0).
func (Instance) GetLineColumnAtPos ¶
Returns the line and column at the given position. In the returned vector, x is the column and y is the line. If 'clamp_line' is false and 'position' is below the last line, Vector2i(-1, -1) is returned. If 'clamp_column' is false and 'position' is outside the column range of the line, Vector2i(-1, -1) is returned.
func (Instance) GetLineCount ¶
Returns the number of lines in the text.
func (Instance) GetLineGutterIcon ¶
Returns the icon currently in 'gutter' at 'line'. This only works when the gutter type is GutterTypeIcon (see Instance.SetGutterType).
func (Instance) GetLineGutterItemColor ¶
Returns the color currently in 'gutter' at 'line'.
func (Instance) GetLineGutterMetadata ¶
Returns the metadata currently in 'gutter' at 'line'.
func (Instance) GetLineGutterText ¶
Returns the text currently in 'gutter' at 'line'. This only works when the gutter type is GutterTypeString (see Instance.SetGutterType).
func (Instance) GetLineHeight ¶
Returns the maximum value of the line height among all lines. Note: The return value is influenced by [theme_item line_spacing] and [theme_item font_size]. And it will not be less than 1.
func (Instance) GetLineRangesFromCarets ¶
Returns an [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. If a selection's end column (Instance.GetSelectionToColumn) 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.
func (Instance) GetLineWidth ¶
Returns the width in pixels of the 'wrap_index' on 'line'.
func (Instance) GetLineWithIme ¶
Returns line text as it is currently displayed, including IME composition string.
func (Instance) GetLineWrapCount ¶
Returns the number of times the given line is wrapped.
func (Instance) GetLineWrapIndexAtColumn ¶
Returns the wrap index of the given column on the given line. This ranges from 0 to Instance.GetLineWrapCount.
func (Instance) GetLineWrappedText ¶
Returns an array of [String]s representing each wrapped index.
func (Instance) GetLocalMousePos ¶
Returns the local mouse position adjusted for the text direction.
func (Instance) GetMenu ¶
Returns the [PopupMenu] of this [TextEdit]. By default, this menu is displayed when right-clicking on the [TextEdit]. You can add custom menu items or remove standard ones. Make sure your IDs don't conflict with the standard ones (see MenuItems). For example:
[gdscript] func _ready():
var menu = get_menu() # Remove all items after "Redo". menu.item_count = menu.get_item_index(MENU_REDO) + 1 # Add custom items. menu.add_separator() menu.add_item("Insert Date", MENU_MAX + 1) # Connect 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())
[/gdscript] [csharp] public override void _Ready()
{ var menu = GetMenu(); // Remove all items after "Redo". menu.ItemCount = menu.GetItemIndex(TextEdit.MenuItems.Redo) + 1; // Add custom items. menu.AddSeparator(); menu.AddItem("Insert Date", TextEdit.MenuItems.Max + 1); // Add event handler. menu.IdPressed += OnItemPressed; }
public void OnItemPressed(int id)
{ if (id == TextEdit.MenuItems.Max + 1) { InsertTextAtCaret(Time.GetDateStringFromSystem()); } }
[/csharp]
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 [member Window.visible] property.
func (Instance) GetMinimapLineAtPos ¶
Returns the equivalent minimap line at 'position'.
func (Instance) GetMinimapVisibleLines ¶
Returns the number of lines that may be drawn on the minimap.
func (Instance) GetNextVisibleLineIndexOffsetFrom ¶
func (self Instance) GetNextVisibleLineIndexOffsetFrom(line int, wrap_index int, visible_amount int) Vector2i.XY
Similar to Instance.GetNextVisibleLineOffsetFrom, but takes into account the line wrap indexes. In the returned vector, x is the line, y is the wrap index.
func (Instance) GetNextVisibleLineOffsetFrom ¶
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.
func (Instance) GetPosAtLineColumn ¶
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. Note: The Y position corresponds to the bottom side of the line. Use Instance.GetRectAtLineColumn to get the top side position.
func (Instance) GetRectAtLineColumn ¶
func (self Instance) GetRectAtLineColumn(line int, column int) Rect2i.PositionSize
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. Note: The Y position of the returned rect corresponds to the top side of the line, unlike Instance.GetPosAtLineColumn which returns the bottom side.
func (Instance) GetSavedVersion ¶
Returns the last tagged saved version from Instance.TagSavedVersion.
func (Instance) GetScrollPosForLine ¶
Returns the scroll position for 'wrap_index' of 'line'.
func (Instance) GetSelectedText ¶
Returns the text inside the selection of a caret, or all the carets if 'caret_index' is its default value -1.
func (Instance) GetSelectionAtLineColumn ¶
Returns the caret index of the selection at the given 'line' and 'column', or -1 if there is none. 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.
func (Instance) GetSelectionColumn ¶
Returns the original start column of the selection.
func (Instance) GetSelectionFromColumn ¶
Returns the selection begin column. Returns the caret column if there is no selection.
func (Instance) GetSelectionFromLine ¶
Returns the selection begin line. Returns the caret line if there is no selection.
func (Instance) GetSelectionLine ¶
Returns the original start line of the selection.
func (Instance) GetSelectionMode ¶
func (self Instance) GetSelectionMode() SelectionMode
Returns the current selection mode.
func (Instance) GetSelectionOriginColumn ¶
Returns the origin column of the selection. This is the opposite end from the caret.
func (Instance) GetSelectionOriginLine ¶
Returns the origin line of the selection. This is the opposite end from the caret.
func (Instance) GetSelectionToColumn ¶
Returns the selection end column. Returns the caret column if there is no selection.
func (Instance) GetSelectionToLine ¶
Returns the selection end line. Returns the caret line if there is no selection.
func (Instance) GetSortedCarets ¶
Returns the carets sorted by selection beginning from lowest line and column to highest (from top to bottom of text). If 'include_ignored_carets' is false, carets from Instance.MulticaretEditIgnoreCaret will be ignored.
func (Instance) GetTabSize ¶
Returns the [TextEdit]'s' tab size.
func (Instance) GetTotalGutterWidth ¶
Returns the total width of all gutters and internal padding.
func (Instance) GetTotalVisibleLineCount ¶
Returns the total number of lines in the text. This includes wrapped lines and excludes folded lines. If [member wrap_mode] is set to LineWrappingNone and no lines are folded (see [Instance.Codeedit.IsLineFolded]) then this is equivalent to Instance.GetLineCount. See Instance.GetVisibleLineCountInRange for a limited range of lines.
func (Instance) GetVScrollBar ¶
func (self Instance) GetVScrollBar() VScrollBar.Instance
Returns the [VScrollBar] of the [TextEdit].
func (Instance) GetVersion ¶
Returns the current version of the [TextEdit]. The version is a count of recorded operations by the undo/redo history.
func (Instance) GetVisibleLineCount ¶
Returns the number of lines that can visually fit, rounded down, based on this control's height.
func (Instance) GetVisibleLineCountInRange ¶
Returns the total number of lines between 'from_line' and 'to_line' (inclusive) in the text. This includes wrapped lines and excludes folded lines. If the range covers all lines it is equivalent to Instance.GetTotalVisibleLineCount.
func (Instance) GetWordAtPos ¶
Returns the word at 'position'.
func (Instance) GetWordUnderCaret ¶
Returns a [String] text with the word under the caret's location.
func (Instance) HasImeText ¶
Returns true if the user has text in the [url=https://en.wikipedia.org/wiki/Input_method]Input Method Editor[/url] (IME).
func (Instance) HasSelection ¶
Returns true if the user has selected text.
func (Instance) HighlightAllOccurrences ¶
func (Instance) HighlightCurrentLine ¶
func (Instance) IndentWrappedLines ¶
func (Instance) InsertLineAt ¶
Inserts a new line with 'text' at 'line'.
func (Instance) InsertText ¶
Inserts the 'text' at 'line' and 'column'. 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. 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.
func (Instance) InsertTextAtCaret ¶
Insert the specified text at the caret position.
func (Instance) IsCaretAfterSelectionOrigin ¶
Returns true if the caret of the selection is after the selection origin. This can be used to determine the direction of the selection.
func (Instance) IsCaretVisible ¶
Returns true if the caret is visible, false otherwise. A caret will be considered hidden if it is outside the scrollable area when scrolling is enabled. Note: Instance.IsCaretVisible does not account for a caret being off-screen if it is still within the scrollable area. It will return true even if the caret is off-screen as long as it meets [TextEdit]'s own conditions for being visible. This includes uses of [member scroll_fit_content_width] and [member scroll_fit_content_height] that cause the [TextEdit] to expand beyond the viewport's bounds.
func (Instance) IsDraggingCursor ¶
Returns true if the user is dragging their mouse for scrolling, selecting, or text dragging.
func (Instance) IsGutterClickable ¶
Returns true if the gutter at the given index is clickable. See Instance.SetGutterClickable.
func (Instance) IsGutterDrawn ¶
Returns true if the gutter at the given index is currently drawn. See Instance.SetGutterDraw.
func (Instance) IsGutterOverwritable ¶
Returns true if the gutter at the given index is overwritable. See Instance.SetGutterOverwritable.
func (Instance) IsInMulitcaretEdit ¶
Returns true if a Instance.BeginMulticaretEdit has been called and Instance.EndMulticaretEdit has not yet been called.
func (Instance) IsLineGutterClickable ¶
Returns true if the gutter at the given index on the given line is clickable. See Instance.SetLineGutterClickable.
func (Instance) IsLineWrapped ¶
Returns if the given line is wrapped.
func (Instance) IsMenuVisible ¶
Returns true if the menu is visible. Use this instead of get_menu().visible to improve performance (so the creation of the menu is avoided). See Instance.GetMenu.
func (Instance) IsMouseOverSelection ¶
Returns true if the mouse is over a selection. If 'edges' is true, the edges are considered part of the selection.
func (Instance) IsOvertypeModeEnabled ¶
Returns true if overtype mode is enabled. See Instance.SetOvertypeModeEnabled.
func (Instance) MenuOption ¶
Executes a given action as defined in the MenuItems enum.
func (Instance) MergeGutters ¶
Merge the gutters from 'from_line' into 'to_line'. Only overwritable gutters will be copied. See Instance.SetGutterOverwritable.
func (Instance) MergeOverlappingCarets ¶
func (self Instance) MergeOverlappingCarets()
Merges any overlapping carets. Will favor the newest caret, or the caret with a selection. If Instance.IsInMulitcaretEdit is true, the merge will be queued to happen at the end of the multicaret edit. See Instance.BeginMulticaretEdit and Instance.EndMulticaretEdit. 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.
func (Instance) MiddleMousePasteEnabled ¶
func (Instance) MinimapDraw ¶
func (Instance) MinimapWidth ¶
func (Instance) MulticaretEditIgnoreCaret ¶
Returns true if the given 'caret_index' should be ignored as part of a multicaret edit. See Instance.BeginMulticaretEdit and Instance.EndMulticaretEdit. 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. It is recommended to continue within a loop iterating on multiple carets if a caret should be ignored.
func (Instance) OnCaretChanged ¶
func (Instance) OnGutterAdded ¶
func (Instance) OnGutterClicked ¶
func (Instance) OnGutterRemoved ¶
func (Instance) OnLinesEditedFrom ¶
func (Instance) OnTextChanged ¶
func (Instance) Paste ¶
func (self Instance) Paste()
Paste at the current location. Can be overridden with Instance.Paste.
func (Instance) PastePrimaryClipboard ¶
func (self Instance) PastePrimaryClipboard()
Pastes the primary clipboard.
func (Instance) PlaceholderText ¶
func (Instance) RemoveCaret ¶
Removes the given caret index. Note: This can result in adjustment of all other caret indices.
func (Instance) RemoveGutter ¶
Removes the gutter at the given index.
func (Instance) RemoveLineAt ¶
Removes the line of text at 'line'. Carets on this line will attempt to match their previous visual x position. If 'move_carets_down' is true carets will move to the next line down, otherwise carets will move up.
func (Instance) RemoveSecondaryCarets ¶
func (self Instance) RemoveSecondaryCarets()
Removes all additional carets.
func (Instance) RemoveText ¶
Removes text between the given positions.
func (Instance) ScrollFitContentHeight ¶
func (Instance) ScrollFitContentWidth ¶
func (Instance) ScrollHorizontal ¶
func (Instance) ScrollPastEndOfFile ¶
func (Instance) ScrollSmooth ¶
func (Instance) ScrollVScrollSpeed ¶
func (Instance) ScrollVertical ¶
func (Instance) Search ¶
Perform a search inside the text. Search flags can be specified in the SearchFlags enum. In the returned vector, x is the column, y is the line. If no results are found, both are equal to -1.
[gdscript] var result = search("print", SEARCH_WHOLE_WORDS, 0, 0) if result.x != -1:
# Result found. var line_number = result.y var column_number = result.x
[/gdscript] [csharp] Vector2I result = Search("print", (uint)TextEdit.SearchFlags.WholeWords, 0, 0); if (result.X != -1)
{ // Result found. int lineNumber = result.Y; int columnNumber = result.X; }
[/csharp]
func (Instance) Select ¶
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. If [member selecting_enabled] is false, no selection will occur. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Instance) SelectAll ¶
func (self Instance) SelectAll()
Select all the text. If [member selecting_enabled] is false, no selection will occur.
func (Instance) SelectWordUnderCaret ¶
func (self Instance) SelectWordUnderCaret()
Selects the word under the caret.
func (Instance) SelectingEnabled ¶
func (Instance) SetAutowrapMode ¶
func (self Instance) SetAutowrapMode(value TextServer.AutowrapMode)
func (Instance) SetCaretBlink ¶
func (Instance) SetCaretBlinkInterval ¶
func (Instance) SetCaretColumn ¶
Moves the caret to the specified 'column' index. If 'adjust_viewport' is true, the viewport will center at the caret position after the move occurs. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Instance) SetCaretDrawWhenEditableDisabled ¶
func (Instance) SetCaretLine ¶
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 Instance.SetCaretColumn was called, or clamped to the end of the line. If 'adjust_viewport' is true, the viewport will center at the caret position after the move occurs. If 'can_be_hidden' is true, the specified 'line' can be hidden. 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 Instance.SetCaretColumn was called. Note: If supporting multiple carets this will not check for any overlap. See Instance.MergeOverlappingCarets.
func (Instance) SetCaretMidGrapheme ¶
func (Instance) SetCaretMoveOnRightClick ¶
func (Instance) SetCaretMultiple ¶
func (Instance) SetCaretType ¶
func (Instance) SetContextMenuEnabled ¶
func (Instance) SetCustomWordSeparators ¶
func (Instance) SetDeselectOnFocusLossEnabled ¶
func (Instance) SetDragAndDropSelectionEnabled ¶
func (Instance) SetDrawControlChars ¶
func (Instance) SetDrawSpaces ¶
func (Instance) SetDrawTabs ¶
func (Instance) SetEditable ¶
func (Instance) SetEmojiMenuEnabled ¶
func (Instance) SetEmptySelectionClipboardEnabled ¶
func (Instance) SetGutterClickable ¶
If true, the mouse cursor will change to a pointing hand ([Control.CursorPointingHand]) when hovering over the gutter at the given index. See Instance.IsGutterClickable and Instance.SetLineGutterClickable.
func (Instance) SetGutterCustomDraw ¶
func (self Instance) SetGutterCustomDraw(column int, draw_callback func(line int, gutter int, area Rect2.PositionSize))
Set a custom draw callback for the gutter at the given index. 'draw_callback' must take the following arguments: A line index [int], a gutter index [int], and an area [Rect2]. This callback only works when the gutter type is GutterTypeCustom (see Instance.SetGutterType).
func (Instance) SetGutterDraw ¶
If true, the gutter at the given index is drawn. The gutter type (Instance.SetGutterType) determines how it is drawn. See Instance.IsGutterDrawn.
func (Instance) SetGutterName ¶
Sets the name of the gutter at the given index.
func (Instance) SetGutterOverwritable ¶
If true, the line data of the gutter at the given index can be overridden when using Instance.MergeGutters. See Instance.IsGutterOverwritable.
func (Instance) SetGutterType ¶
func (self Instance) SetGutterType(gutter int, atype GutterType)
Sets the type of gutter at the given index. Gutters can contain icons, text, or custom visuals. See [TextEdit.GutterType] for options.
func (Instance) SetGutterWidth ¶
Set the width of the gutter at the given index.
func (Instance) SetHighlightAllOccurrences ¶
func (Instance) SetHighlightCurrentLine ¶
func (Instance) SetIndentWrappedLines ¶
func (Instance) SetLanguage ¶
func (Instance) SetLine ¶
Sets the text for a specific 'line'. Carets on the line will attempt to keep their visual x position.
func (Instance) SetLineAsCenterVisible ¶
Positions the 'wrap_index' of 'line' at the center of the viewport.
func (Instance) SetLineAsFirstVisible ¶
Positions the 'wrap_index' of 'line' at the top of the viewport.
func (Instance) SetLineAsLastVisible ¶
Positions the 'wrap_index' of 'line' at the bottom of the viewport.
func (Instance) SetLineBackgroundColor ¶
Sets the custom background color of the given line. If transparent, this color is applied on top of the default background color (See [theme_item background_color]). If set to Color(0, 0, 0, 0), no additional color is applied.
func (Instance) SetLineGutterClickable ¶
If 'clickable' is true, makes the 'gutter' on the given 'line' clickable. This is like Instance.SetGutterClickable, but for a single line. If Instance.IsGutterClickable is true, this will not have any effect. See Instance.IsLineGutterClickable and [signal gutter_clicked].
func (Instance) SetLineGutterIcon ¶
Sets the icon for 'gutter' on 'line' to 'icon'. This only works when the gutter type is GutterTypeIcon (see Instance.SetGutterType).
func (Instance) SetLineGutterItemColor ¶
Sets the color for 'gutter' on 'line' to 'color'.
func (Instance) SetLineGutterMetadata ¶
Sets the metadata for 'gutter' on 'line' to 'metadata'.
func (Instance) SetLineGutterText ¶
Sets the text for 'gutter' on 'line' to 'text'. This only works when the gutter type is GutterTypeString (see Instance.SetGutterType).
func (Instance) SetMiddleMousePasteEnabled ¶
func (Instance) SetMinimapDraw ¶
func (Instance) SetMinimapWidth ¶
func (Instance) SetOvertypeModeEnabled ¶
If true, enables overtype mode. In this mode, typing overrides existing text instead of inserting text. The [member ProjectSettings.input/ui_text_toggle_insert_mode] action toggles overtype mode. See Instance.IsOvertypeModeEnabled.
func (Instance) SetPlaceholderText ¶
func (Instance) SetScrollFitContentHeight ¶
func (Instance) SetScrollFitContentWidth ¶
func (Instance) SetScrollHorizontal ¶
func (Instance) SetScrollPastEndOfFile ¶
func (Instance) SetScrollSmooth ¶
func (Instance) SetScrollVScrollSpeed ¶
func (Instance) SetScrollVertical ¶
func (Instance) SetSearchFlags ¶
Sets the search 'flags'. This is used with Instance.SetSearchText to highlight occurrences of the searched text. Search flags can be specified from the SearchFlags enum.
func (Instance) SetSearchText ¶
Sets the search text. See Instance.SetSearchFlags.
func (Instance) SetSelectingEnabled ¶
func (Instance) SetSelectionMode ¶
func (self Instance) SetSelectionMode(mode SelectionMode)
Sets the current selection mode.
func (Instance) SetSelectionOriginColumn ¶
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.
func (Instance) SetSelectionOriginLine ¶
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. If 'can_be_hidden' is false, The line will be set to the nearest unhidden line below or above. 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 Instance.SetSelectionOriginColumn or Instance.Select was called.
func (Instance) SetShortcutKeysEnabled ¶
func (Instance) SetStructuredTextBidiOverride ¶
func (self Instance) SetStructuredTextBidiOverride(value TextServer.StructuredTextParser)
func (Instance) SetStructuredTextBidiOverrideOptions ¶
func (Instance) SetTabSize ¶
Sets the tab size for the [TextEdit] to use.
func (Instance) SetTextDirection ¶
func (self Instance) SetTextDirection(value Control.TextDirection)
func (Instance) SetTooltipRequestFunc ¶
Provide custom tooltip text. The callback method must take the following args: hovered_word: String.
func (Instance) SetUseCustomWordSeparators ¶
func (Instance) SetUseDefaultWordSeparators ¶
func (Instance) SetVirtualKeyboardEnabled ¶
func (Instance) SetWrapMode ¶
func (self Instance) SetWrapMode(value LineWrappingMode)
func (Instance) ShortcutKeysEnabled ¶
func (Instance) SkipSelectionForNextOccurrence ¶
func (self Instance) SkipSelectionForNextOccurrence()
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.
func (Instance) StartAction ¶
func (self Instance) StartAction(action EditAction)
Starts an action, will end the current action if 'action' is different. An action will also end after a call to Instance.EndAction, after [member ProjectSettings.gui/timers/text_edit_idle_detect_sec] is triggered or a new undoable step outside the Instance.StartAction and Instance.EndAction calls.
func (Instance) StructuredTextBidiOverride ¶
func (self Instance) StructuredTextBidiOverride() TextServer.StructuredTextParser
func (Instance) StructuredTextBidiOverrideOptions ¶
func (Instance) TagSavedVersion ¶
func (self Instance) TagSavedVersion()
Tag the current version as saved.
func (Instance) TextDirection ¶
func (self Instance) TextDirection() Control.TextDirection
func (Instance) UseCustomWordSeparators ¶
func (Instance) UseDefaultWordSeparators ¶
func (Instance) VirtualKeyboardEnabled ¶
func (Instance) WrapMode ¶
func (self Instance) WrapMode() LineWrappingMode
type Interface ¶
type Interface interface { //Override this method to define what happens when the user types in the provided key [param unicode_char]. HandleUnicodeInput(unicode_char int, caret_index int) //Override this method to define what happens when the user presses the backspace key. Backspace(caret_index int) //Override this method to define what happens when the user performs a cut operation. Cut(caret_index int) //Override this method to define what happens when the user performs a copy operation. Copy(caret_index int) //Override this method to define what happens when the user performs a paste operation. Paste(caret_index int) //Override this method to define what happens when the user performs a paste operation with middle mouse button. //[b]Note:[/b] This method is only implemented on Linux. PastePrimaryClipboard(caret_index int) }
type LineWrappingMode ¶
type LineWrappingMode int //gd:TextEdit.LineWrappingMode
const ( /*Line wrapping is disabled.*/ LineWrappingNone LineWrappingMode = 0 /*Line wrapping occurs at the control boundary, beyond what would normally be visible.*/ LineWrappingBoundary LineWrappingMode = 1 )
type MenuItems ¶
type MenuItems int //gd:TextEdit.MenuItems
const ( /*Cuts (copies and clears) the selected text.*/ MenuCut MenuItems = 0 /*Copies the selected text.*/ MenuCopy MenuItems = 1 /*Pastes the clipboard text over the selected text (or at the cursor's position).*/ MenuPaste MenuItems = 2 /*Erases the whole [TextEdit] text.*/ MenuClear MenuItems = 3 /*Selects the whole [TextEdit] text.*/ MenuSelectAll MenuItems = 4 /*Undoes the previous action.*/ MenuUndo MenuItems = 5 /*Redoes the previous action.*/ MenuRedo MenuItems = 6 MenuSubmenuTextDir MenuItems = 7 /*Sets text direction to inherited.*/ MenuDirInherited MenuItems = 8 /*Sets text direction to automatic.*/ MenuDirAuto MenuItems = 9 /*Sets text direction to left-to-right.*/ MenuDirLtr MenuItems = 10 /*Sets text direction to right-to-left.*/ MenuDirRtl MenuItems = 11 /*Toggles control character display.*/ MenuDisplayUcc MenuItems = 12 MenuSubmenuInsertUcc MenuItems = 13 /*Inserts left-to-right mark (LRM) character.*/ MenuInsertLrm MenuItems = 14 /*Inserts right-to-left mark (RLM) character.*/ MenuInsertRlm MenuItems = 15 /*Inserts start of left-to-right embedding (LRE) character.*/ MenuInsertLre MenuItems = 16 /*Inserts start of right-to-left embedding (RLE) character.*/ MenuInsertRle MenuItems = 17 /*Inserts start of left-to-right override (LRO) character.*/ MenuInsertLro MenuItems = 18 /*Inserts start of right-to-left override (RLO) character.*/ MenuInsertRlo MenuItems = 19 /*Inserts pop direction formatting (PDF) character.*/ MenuInsertPdf MenuItems = 20 /*Inserts Arabic letter mark (ALM) character.*/ MenuInsertAlm MenuItems = 21 /*Inserts left-to-right isolate (LRI) character.*/ MenuInsertLri MenuItems = 22 /*Inserts right-to-left isolate (RLI) character.*/ MenuInsertRli MenuItems = 23 /*Inserts first strong isolate (FSI) character.*/ MenuInsertFsi MenuItems = 24 /*Inserts pop direction isolate (PDI) character.*/ MenuInsertPdi MenuItems = 25 /*Inserts zero width joiner (ZWJ) character.*/ MenuInsertZwj MenuItems = 26 /*Inserts zero width non-joiner (ZWNJ) character.*/ MenuInsertZwnj MenuItems = 27 /*Inserts word joiner (WJ) character.*/ MenuInsertWj MenuItems = 28 /*Inserts soft hyphen (SHY) character.*/ MenuInsertShy MenuItems = 29 /*Opens system emoji and symbol picker.*/ MenuEmojiAndSymbol MenuItems = 30 /*Represents the size of the [enum MenuItems] enum.*/ MenuMax MenuItems = 31 )
type SearchFlags ¶
type SearchFlags int //gd:TextEdit.SearchFlags
const ( /*Match case when searching.*/ SearchMatchCase SearchFlags = 1 /*Match whole words when searching.*/ SearchWholeWords SearchFlags = 2 /*Search from end to beginning.*/ SearchBackwards SearchFlags = 4 )
type SelectionMode ¶
type SelectionMode int //gd:TextEdit.SelectionMode
const ( /*Not selecting.*/ SelectionModeNone SelectionMode = 0 /*Select as if [code]shift[/code] is pressed.*/ SelectionModeShift SelectionMode = 1 /*Select single characters as if the user single clicked.*/ SelectionModePointer SelectionMode = 2 /*Select whole words as if the user double clicked.*/ SelectionModeWord SelectionMode = 3 /*Select whole lines as if the user triple clicked.*/ SelectionModeLine SelectionMode = 4 )