UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ToolContextInterfaces.h File Reference
#include "ComponentSourceInterfaces.h"
#include "Containers/Array.h"
#include "CoreMinimal.h"
#include "Elements/Framework/TypedElementSelectionSet.h"
#include "Math/Quat.h"
#include "Math/Rotator.h"
#include "Math/UnrealMathSSE.h"
#include "Math/Vector.h"
#include "Misc/EnumClassFlags.h"
#include "Templates/UniquePtr.h"
#include "UObject/Interface.h"
#include "UObject/ObjectMacros.h"
#include "UObject/WeakObjectPtr.h"
#include "UObject/WeakObjectPtrTemplates.h"
#include "GenericPlatform/ICursor.h"
#include "ToolContextInterfaces.generated.h"

Go to the source code of this file.

Classes

struct  FToolBuilderState
 
struct  FViewCameraState
 
struct  FToolContextSnappingConfiguration
 
class  UToolsContextCursorAPI
 
class  IToolsContextQueriesAPI
 
struct  FSelectedObjectsChangeList
 
class  IToolsContextTransactionsAPI
 
class  IToolsContextRenderAPI
 

Typedefs

typedef FSelectedObjectsChangeList FSelectedOjectsChangeList
 

Enumerations

enum class  EStandardToolContextMaterials { VertexColorMaterial = 1 }
 
enum class  EToolContextCoordinateSystem : uint8 { World = 0 , Local = 1 , Screen = 2 }
 
enum class  EToolContextTransformGizmoMode : uint8 {
  NoGizmo = 0 , Translation = 1 , Rotation = 2 , Scale = 3 ,
  Combined = 8
}
 
enum class  EToolMessageLevel {
  Internal = 0 , UserMessage = 1 , UserNotification = 2 , UserWarning = 3 ,
  UserError = 4
}
 
enum class  ESelectedObjectsModificationType { Replace = 0 , Add = 1 , Remove = 2 , Clear = 3 }
 
enum class  EViewInteractionState { None = 0 , Hovered = 1 , Focused = 2 }
 

Functions

 ENUM_CLASS_FLAGS (EViewInteractionState)
 

Typedef Documentation

◆ FSelectedOjectsChangeList

Enumeration Type Documentation

◆ ESelectedObjectsModificationType

Type of change we want to apply to a selection

Enumerator
Replace 
Add 
Remove 
Clear 

◆ EStandardToolContextMaterials

Types of standard materials that Tools may request from Context

Enumerator
VertexColorMaterial 

White material that displays vertex colors set on mesh

◆ EToolContextCoordinateSystem

Types of coordinate systems that a Tool/Gizmo might use

Enumerator
World 

World space coordinate system

Local 

Local coordinate system

Screen 

Screen space coordinate system

◆ EToolContextTransformGizmoMode

High-level configuration options for a standard 3D translate/rotate/scale Gizmo, like is commonly used in 3D DCC tools, game editors, etc This is meant to be used to convey UI-level settings to Tools/Gizmos, eg like the W/E/R toggles for Rranslate/Rotate/Scale in Maya or UE Editor. More granular control over precise gizmo elements is available through other mechanisms, eg the ETransformGizmoSubElements flags in UCombinedTransformGizmo

Enumerator
NoGizmo 

Hide all Gizmo sub-elements

Translation 

Only Show Translation sub-elements

Rotation 

Only Show Rotation sub-elements

Scale 

Only Show Scale sub-elements

Combined 

Show all available Gizmo sub-elements

◆ EToolMessageLevel

enum class EToolMessageLevel
strong

Level of severity of messages emitted by Tool framework

Enumerator
Internal 

Development message goes into development log

UserMessage 

User message should appear in user-facing log

UserNotification 

Notification message should be shown in a non-modal notification window

UserWarning 

Warning message should be shown in a non-modal notification window with panache

UserError 

Error message should be shown in a modal notification window

◆ EViewInteractionState

Enumerator
None 
Hovered 
Focused 

Function Documentation

◆ ENUM_CLASS_FLAGS()

ENUM_CLASS_FLAGS ( EViewInteractionState  )