Navigation
API > API/Plugins > API/Plugins/ScriptableToolsFramework
UScriptableInteractiveTool is an extension of UInteractiveTool that allows the Tool functionality to be defined via Blueprints.
| Name | UScriptableInteractiveTool |
| Type | class |
| Header File | /Engine/Plugins/Runtime/ScriptableToolsFramework/Source/ScriptableToolsFramework/Public/ScriptableInteractiveTool.h |
| Include Path | #include "ScriptableInteractiveTool.h" |
Syntax
UCLASS (Transient, Blueprintable)
class UScriptableInteractiveTool : public UInteractiveTool
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UInteractiveTool → UScriptableInteractiveTool
Implements Interfaces
Derived Classes
- UEditorScriptableInteractiveTool
- UScriptableClickDragTool
- UScriptableModularBehaviorTool
- UScriptableSingleClickTool
Structs
| Name | Remarks |
|---|---|
| FAnyPropertyWatchInfo |
Enums
Protected
| Name | Remarks |
|---|---|
| EAnyPropertyWatchTypes |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bShowToolInEditor | bool | A generic flag to indicate whether this Tool should be shown in the UE Editor. | ScriptableInteractiveTool.h |
|
| CustomIconPath | FString | Relative Path to a custom Icon Image for this Tool. | ScriptableInteractiveTool.h |
|
| EditCondition | ScriptableInteractiveTool.h |
|
||
| EditConditionHides | ScriptableInteractiveTool.h |
|
||
| GroupTags | FScriptableToolGroupSet | ScriptableInteractiveTool.h |
|
|
| MustImplement | ScriptableInteractiveTool.h |
|
||
| ToolCategory | FText | Category of this Tool, will be used in (eg) Tool Palette Section headers | ScriptableInteractiveTool.h |
|
| ToolLongName | FText | Long Name of this Tool, will be used in (eg) longer labels like the Accept/Cancel toolbar | ScriptableInteractiveTool.h |
|
| ToolName | FText | Name of this Tool, will be used in (eg) Toolbars | ScriptableInteractiveTool.h |
|
| ToolShutdownType | EScriptableToolShutdownType | Specifies how the user exits this Tool, either Accept/Cancel-style or Complete-style | ScriptableInteractiveTool.h |
|
| ToolStartupRequirements | EScriptableToolStartupRequirements | ScriptableInteractiveTool.h |
|
|
| ToolTooltip | FText | Tooltip used for this Tool in (eg) icons/etc | ScriptableInteractiveTool.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
| Create and return a new, independent line set, used for drawing persistent line objects in the scene. | ScriptableInteractiveTool.h |
|
|
void AddLogMessage
(
FText Message, |
Append a Message to the UE Editor Log. | ScriptableInteractiveTool.h |
|
| Create and return a new, independent point set, used for drawing persistent point objects in the scene. | ScriptableInteractiveTool.h |
|
|
UScriptableInteractiveToolPropertySet * AddPropertySetOfType
(
TSubclassOf< UScriptableInteractiveToolPropertySet > PropertySetType, |
Property Set support Create a new Tool Property Set (ie BP subclass of UScriptableInteractiveToolPropertySet) with the given string Identifier and attach it to the Tool. | ScriptableInteractiveTool.h |
|
| Create and return a new, independent triangle set, used for drawing persistent triangle and quad objects in the scene. | ScriptableInteractiveTool.h |
|
|
void ClearOverlayWidget() |
ScriptableInteractiveTool.h |
|
|
void ClearUserMessages
(
bool bHelpMessage, |
Clear any active message shown via DisplayUserHelpMessage and/or DisplayUserWarningMessage | ScriptableInteractiveTool.h |
|
void CreateTRSGizmo
(
FString Identifier, |
Gizmo API | ScriptableInteractiveTool.h |
|
void DestroyTRSGizmo
(
FString Identifier, |
Destroy a created Gizmo by name Identifier | ScriptableInteractiveTool.h |
|
void DisplayUserHelpMessage
(
FText Message |
Display a short Help message for the user, ie to guide them in Tool usage. | ScriptableInteractiveTool.h |
|
void DisplayUserWarningMessage
(
FText Message |
Display a Warning message to the user, ie to indicate a problem/issue occurred. | ScriptableInteractiveTool.h |
|
void ForcePropertySetUpdateByName
(
FString Identifier |
Force the Property Set associated with the given Identifier to be updated. | ScriptableInteractiveTool.h |
|
UScriptableToolLineSet * GetDefaultLineSet() |
Retrieve the default line set object for the tool, used for drawing persistent line objects in the scene. | ScriptableInteractiveTool.h |
|
UScriptableToolPointSet * GetDefaultPointSet() |
Retrieve the default point set object for the tool, used for drawing persistent point objects in the scene. | ScriptableInteractiveTool.h |
|
UScriptableToolTriangleSet * GetDefaultTriangleSet() |
Retrieve the default triangle set object for the tool, used for drawing persistent triangle and quad objects in the scene. | ScriptableInteractiveTool.h |
|
FTransform GetGizmoTransform
(
FString Identifier |
Get the current Transform on the Gizmo specified by the name Identifier | ScriptableInteractiveTool.h |
|
TArray< UToolTarget * > GetToolTargets() |
ScriptableInteractiveTool.h |
|
|
UWorld * GetToolWorld() |
Access the World this Tool is currently operating on. | ScriptableInteractiveTool.h |
|
virtual UWorld * GetWorld() |
ScriptableInteractiveTool.h | ||
void OnGizmoTransformChanged
(
const FString& GizmoIdentifier, |
The OnGizmoTransformChanged event fires whenever the transform on any Gizmo created by CreateTRSGizmo() is modified. | ScriptableInteractiveTool.h |
|
void OnGizmoTransformStateChange
(
const FString& GizmoIdentifier, |
The OnGizmoTransformStateChange event fires whenever the user start/ends a Gizmo transform, or when an Undo/Redo event occurs. | ScriptableInteractiveTool.h |
|
bool OnScriptCanAccept () |
CanAccept function. | ScriptableInteractiveTool.h |
|
bool OnScriptCanAccept_Implementation() |
ScriptableInteractiveTool.h | ||
void OnScriptDrawHUD
(
UScriptableTool_HUDAPI* DrawHUDAPI |
OnScriptDrawHUD is called every frame. | ScriptableInteractiveTool.h |
|
void OnScriptRender
(
UScriptableTool_RenderAPI* RenderAPI |
OnScriptRender is called every frame. | ScriptableInteractiveTool.h |
|
void OnScriptSetup() |
Implement OnScriptSetup to do initial setup/configuration of the Tool, such as adding Property Sets, creating Gizmos, etc | ScriptableInteractiveTool.h |
|
void OnScriptShutdown
(
EToolShutdownType ShutdownType |
OnScriptShutdown is called when the Tool is shutting down. | ScriptableInteractiveTool.h |
|
void OnScriptTick
(
float DeltaTime |
OnScriptTick is called every Editor Tick, ie basically every frame. | ScriptableInteractiveTool.h |
|
void RemovePropertySetByName
(
FString Identifier, |
Remove a Property Set from the current Tool, found via it's unique Identifier. | ScriptableInteractiveTool.h |
|
void RequestToolShutdown
(
bool bAccept, |
Request that the active Tool be shut down. | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * RestorePropertySetSettings
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Restore the values of the specified PropertySet, optionally with a specific SaveKey string. | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * SavePropertySetSettings
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Save the values of the specified PropertySet, optionally with a specific SaveKey string. | ScriptableInteractiveTool.h |
|
void SetGizmoTransform
(
FString Identifier, |
Update the Transform on the Gizmo specified by the name Identifier | ScriptableInteractiveTool.h |
|
void SetGizmoVisible
(
FString Identifier, |
Set an existing Gizmo visible/hidden based on its name Identifier | ScriptableInteractiveTool.h |
|
void SetOverlayWidget
(
UUserWidget* Widget, |
ScriptableInteractiveTool.h |
|
|
void SetPropertySetVisibleByName
(
FString Identifier, |
Set the visibility of a Property Set that is paired with the given unique Identifier. | ScriptableInteractiveTool.h |
|
void SetTargets
(
TArray< TObjectPtr< UToolTarget > > TargetsIn |
ScriptableInteractiveTool.h | ||
virtual void SetTargetWorld
(
UWorld* World |
ScriptableInteractiveTool.h | ||
UScriptableInteractiveToolPropertySet * WatchBoolProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch a Bool-valued Property for changes | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchEnumProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch an Enum-valued Property for changes. | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchFloatProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Property Watcher support Watch a Float-valued Property for changes (double precision) | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchIntProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch an Integer-valued Property for changes | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchNameProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch an (F)Name-valued Property for changes | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchObjectProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch an Object-valued Property for changes (ie UObject, UClass, etc) | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch any Property in a PropertySet for changes. | ScriptableInteractiveTool.h |
|
UScriptableInteractiveToolPropertySet * WatchStringProperty
(
UScriptableInteractiveToolPropertySet* PropertySet, |
Watch a String-valued Property for changes | ScriptableInteractiveTool.h |
|
Overridden from UInteractiveTool
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanAccept() |
ScriptableInteractiveTool.h | ||
virtual void DrawHUD
(
FCanvas* Canvas, |
ScriptableInteractiveTool.h | ||
virtual bool HasAccept() |
ScriptableInteractiveTool.h | ||
virtual bool HasCancel() |
ScriptableInteractiveTool.h | ||
virtual void OnTick
(
float DeltaTime |
ScriptableInteractiveTool.h | ||
virtual void Render
(
IToolsContextRenderAPI* RenderAPI |
Render and DrawHUD support | ScriptableInteractiveTool.h | |
virtual void Setup() |
ScriptableInteractiveTool.h | ||
virtual void Shutdown
(
EToolShutdownType ShutdownType |
ScriptableInteractiveTool.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual UBaseScriptableToolBuilder * GetNewCustomToolBuilderInstance
(
UObject* Outer |
Return instance of custom tool builder. Should only be called on CDO. | ScriptableInteractiveTool.h | |
virtual void OnGizmoTransformChanged_Handler
(
FString GizmoIdentifier, |
ScriptableInteractiveTool.h | ||
virtual void OnGizmoTransformStateChange_Handler
(
FString GizmoIdentifier, |
ScriptableInteractiveTool.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostInitProperties() |
ScriptableInteractiveTool.h |