Navigation
API > API/Plugins > API/Plugins/Terminal
Native Slate terminal emulator widget.
Renders a character cell grid directly via OnPaint using FSlateDrawElement. Backed by FTerminalBuffer + FVTParser + FConPTYSession.
| Name | STerminal |
| Type | class |
| Header File | /Engine/Plugins/Experimental/Terminal/Source/Terminal/Public/STerminal.h |
| Include Path | #include "STerminal.h" |
Syntax
class STerminal : public SLeafWidget
Inheritance Hierarchy
- FSharedFromThisBase → TSharedFromThis → SWidget → SLeafWidget → STerminal
- FSlateControlledConstruction → SWidget → SLeafWidget → STerminal
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~STerminal() |
STerminal.h |
Structs
| Name | Remarks |
|---|---|
| FArguments |
Constants
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| ParseBudgetPerTick | int32 | Per-tick parse budget in bytes. | STerminal.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| OnOutputReceived | FOnTerminalOutputReceived | Broadcast on the game thread after each tick that consumed a non-empty output chunk from the session. | STerminal.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bHasFocus | bool | STerminal.h | ||
| bHasSelection | bool | STerminal.h | ||
| bInitialized | bool | State flags. | STerminal.h | |
| bReceivedFirstOutput | bool | STerminal.h | ||
| bSelecting | bool | STerminal.h | ||
| bSessionDead | bool | STerminal.h | ||
| Buffer | FTerminalBuffer | Core terminal components. | STerminal.h | |
| CellHeight | float | STerminal.h | ||
| CellWidth | float | STerminal.h | ||
| ClickCount | int32 | Click tracking for double/triple click. | STerminal.h | |
| CursorDisplayColor | FColor | STerminal.h | ||
| FontInfo | FSlateFontInfo | STerminal.h | ||
| LastAllocatedSize | FVector2D | STerminal.h | ||
| LastClickCell | FIntPoint | STerminal.h | ||
| LastClickTime | double | STerminal.h | ||
| LastHeartbeatLogTime | double | STerminal.h | ||
| LastOutputTime | double | STerminal.h | ||
| Parser | FVTParser | STerminal.h | ||
| PendingParseData | TArray< uint8 > | Leftover bytes from a previous tick that exceeded the parse budget. | STerminal.h | |
| ScrollBar | TSharedPtr< SScrollBar > | STerminal.h | ||
| ScrollOffset | int32 | STerminal.h | ||
| SelectionActive | FIntPoint | STerminal.h | ||
| SelectionAnchor | FIntPoint | Selection state (buffer-absolute coordinates). | STerminal.h | |
| SelectionAutoScrollAccumulator | float | STerminal.h | ||
| SelectionAutoScrollDirection | int32 | Auto-scroll during drag selection: positive = scroll up (older), negative = scroll down (newer), 0 = none. | STerminal.h | |
| SelectionHighlightColor | FColor | STerminal.h | ||
| Session | TSharedPtr< ITerminalSession > | STerminal.h | ||
| TerminalFont | TSharedPtr< FStandaloneCompositeFont > | Font and rendering. | STerminal.h | |
| TotalBytesConsumed | int64 | Diagnostic counters. | STerminal.h | |
| ViewportColumns | int32 | Viewport dimensions. | STerminal.h | |
| ViewportRows | int32 | STerminal.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void Construct
(
const FArguments& InArgs |
STerminal.h | ||
void ExecuteCommand
(
const FString& Command |
Write a command string to the terminal session followed by a carriage return. | STerminal.h | |
double GetLastOutputTime() |
Engine time of the last non-empty output chunk, or 0.0 if none. | STerminal.h | |
bool IsSessionRunning() |
Returns true once the terminal session has been created and is running. | STerminal.h |
Public Virtual
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FVector2D ComputeDesiredSize
(
float LayoutScaleMultiplier |
STerminal.h | ||
virtual FCursorReply OnCursorQuery
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual void OnFocusLost
(
const FFocusEvent& InFocusEvent |
STerminal.h | ||
virtual FReply OnFocusReceived
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnKeyChar
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnKeyDown
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnMouseButtonDoubleClick
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnMouseButtonDown
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnMouseButtonUp
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnMouseMove
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual FReply OnMouseWheel
(
const FGeometry& MyGeometry, |
STerminal.h | ||
virtual int32 OnPaint
(
const FPaintArgs& Args, |
STerminal.h | ||
virtual bool SupportsKeyboardFocus() |
STerminal.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FColor ComputeForegroundColor
(
const FTerminalCell& Cell |
Compute the effective foreground color for a cell, applying inverse, bold, and dim. | STerminal.h | |
static TArray< TSharedRef< STerminal > > GetAllInstances () |
Snapshot of every live STerminal (and subclass). | STerminal.h |