Navigation
API > API/Plugins > API/Plugins/ExampleCharacterFXEditor
Typically an Editor's Subsystem would be where the actual Asset editing happens when the user presses a button in the Editor, the Subsystem would apply the change to the Asset. In this example editor, however, we are using the InteractiveToolsFramework for much of this machinery.
This class still is useful if the Editor is not the default editor for a particular asset type. In this case, having an EditorSubsystem enables spawning the Editor for prescribed asset types (e.g. StaticMesh, SkeletalMesh).
It's included here as an example, but if the concrete AssetEditor is associated with an asset type this class may not be necessary.
| Name | UExampleCharacterFXEditorSubsystem |
| Type | class |
| Header File | /Engine/Plugins/Experimental/CharacterFXEditor/ExampleCharacterFXEditor/Source/ExampleCharacterFXEditor/Public/ExampleCharacterFXEditorSubsystem.h |
| Include Path | #include "ExampleCharacterFXEditorSubsystem.h" |
Syntax
UCLASS ()
class UExampleCharacterFXEditorSubsystem : public UEditorSubsystem
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → USubsystem → UDynamicSubsystem → UEditorSubsystem → UExampleCharacterFXEditorSubsystem
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool AreAssetsValidTargets
(
const TArray< FAssetData >& InAssets |
Checks that all of the assets are valid targets for an editor session. | ExampleCharacterFXEditorSubsystem.h | |
virtual bool AreObjectsValidTargets
(
const TArray< UObject* >& InObjects |
Checks that all of the objects are valid targets for an editor session. | ExampleCharacterFXEditorSubsystem.h | |
virtual void BuildTargets
(
const TArray< TObjectPtr< UObject > >& ObjectsIn, |
Tries to build the core targets that provide meshes for tools to work on. | ExampleCharacterFXEditorSubsystem.h | |
virtual void Deinitialize() |
ExampleCharacterFXEditorSubsystem.h | ||
virtual void Initialize
(
FSubsystemCollectionBase& Collection |
ExampleCharacterFXEditorSubsystem.h | ||
virtual void NotifyThatExampleCharacterFXEditorClosed
(
TArray< TObjectPtr< UObject > > ObjectsItWasEditing |
Needs to be called when an editor instance is closed so that the subsystem knows to create a new one for these objects if they are opened again. | ExampleCharacterFXEditorSubsystem.h | |
virtual void StartExampleCharacterFXEditor
(
TArray< TObjectPtr< UObject > > ObjectsToEdit |
Either brings to the front an existing editor instance that is editing one of these objects, if one exists, or starts up a new instance editing all of these objects. | ExampleCharacterFXEditorSubsystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void CreateToolTargetFactories
(
TArray< TObjectPtr< UToolTargetFactory > >& Factories |
Create tool target factories based on what type of tool targets are supported | ExampleCharacterFXEditorSubsystem.h |