ElgEditorScripting
ElgEditorScripting is an Unreal Engine 5.0 editor only plugin created to extend the possibilities of Editor Utility Widgets.
This is done by expose existing native events and functionality to blueprints.
So, no ugly Tick hack or something like that.
Get it from GitHub, Unreal forum thread.
Level Editor Context
Asset Browser Context
Config Context
Module Manager
Slow Task
UBlueprint
Assets
Editor Widget
Level Actor
Plugin Manager
Level Editor Context
Thru the Level Editor Context object, you can bind events and query level editor specific data like mouse position or if the level editor viewport are in focus.
Examples can be found in EW_EditorContexts_LevelEditor.
Events that are exposed in the plugin are:
- OnLevelActorAdded
- OnLevelActorDeleted
- OnLevelActorAttached
- OnLevelActorDetached
- OnActorMoved
- OnActorSelectionChanged
- OnActorSelected
- OnActorDeselected
- OnWorldAdded
- OnWorldDestroyed
- OnMapOpened
- OnMapChanged
- OnEditorModeChanged
- OnEnterMode
- OnExitMode
- OnEditorCameraMoved
- OnFocusViewportOnActors
- OnBeginPIE
- OnPausePIE
- OnResumePIE
- OnEndPIE
- OnBeginStandaloneLocalPlay
- OnLeftMouseClick
- OnMiddleMouseClick
- OnRightMouseClick
- OnInputKey
Blueprint Nodes:
- GetMousePosition - Get the mouse position in the the Level Editor Viewport.
- GetMousePositionWorld - Get the mouse 3d position in the Level Editor Viewport.
- GetActorUnderMouse - Get the actor the mouse is over in the Level Editor Viewport
- LineTrace - Do a trace from the mouse position toward the Level Editor wold.
- HasFocus - Check if the Level Editor Viewport is in focus or not.
- GetEditorMode - Return the name of the currently selected Editor Mode.
- IsInPIE - Check if the Editor is in PIE or not.
- IsInEditor
- IsViewportRealtime
- SetViewportRealtime
- RestoreViewportRealtime
Example of spawning and actor on the mouse cursor position in the level editor on middle mouse click.
Back to the top
Asset Browser Context
Thru the Asset Browser Context object, you can bind asset related events.
Examples can be found in EW_EditorContexts_AssetBrowser.
Events that are exposed in the plugin are:
- OnAssetCreated
- OnAssetRemoved
- OnAssetRenamed
- OnAssetSelectionChanged
- OnAssetSelected
- OnAssetDeselected
Back to the top
Config Context
The Config Context let you read/write to config ini files in the "Project/Config/" folder by specifying the Config filename and the config section.
Examples can be found in EW_EditorContexts_Config.
Supported data types are:
- Read/Write String
- Read/Write Int
- Read/Write Float
- Read/Write Text
- Read/Write Bool
- Read/Write StringArray
- Read/Write Color
- Read/Write Vector2d
- Read/Write Vector
- Read/Write Vector4
- Read/Write Rotator
Back to the top
Module Manager
The plugin expose Module Manager functionality to blueprints so you can Load/Unload/Recompile module from Editor Widgets.
Examples can be found in EW_BlueprintNodes_ModuleManager and EW_ToolbarButton_Compiler.
- GetModuleNames
- GetModulesStatus
- GetModuleStatus
- RecompileModule
- LoadModule
- UnloadModule
- ReloadModule
- CanShutdownModule
- CanRecompileModule
- IsModuleLoaded
- CanHotReloadModule
- CanDynamicReloadModule
Back to the top
Slow Task
The plugin exposes the SlowTask progress bar UI so your tool can show the progress. It has an option if the user should be able to cancel the progress.
Examples can be found in EW_ToolbarButton_SlowTask.
- BeginSlowTask
- EndSlowTask
- StatusUpdate
- UpdateProgress
- RecivedUserCancel
Back to the top
UBlueprint/Actor
The plugin has a bunch of helper blueprint nodes to work on Blueprint Objects, like the possibility to add/remove Components, add/remove Interfaces and Compile them.
Examples can be found in EW_BlueprintNodes_UBlueprint.
- AddComponent
- RemoveComponent
- GetInterfaces
- ImplementInerface
- AddInterface
- RemoveInterface
- CompileBlueprint
- GetBlueprintFromAssetData
- GetComponents
- GetComponentsOfClass
- GetComponentOfClass
Back to the top
Assets
Helper blueprint nodes for working with AssetData and AssetObject.
Examples can be found in EW_BlueprintNodes_Assets.
- FixRedirectors
- GetAssetDateModified
- GetAssetDiskPath
- GetAssetObjects - Takes an array of AssetData and return an array with UObjects.
- GetAssetObjectsMetaData - Return a Map with all objects meta data in a custom struct that has an additional sorted array with the keys.
- GetAssetObjectsWithMetaDataKey - Return a Map with all the objects that has the meta data key.
- GetMetaDataBranch - Get the meta data value with a Branch pins.
- GetAssetMetaData - Get the meta data from a FAssetData.
Back to the top
EditorWidget
Blueprint nodes that add the possibility to change the tab name, open or close another Editor Widget.
* Opening and closing of Editor Widgets only work if the widget has been Run before.
Examples can be found in EW_BlueprintNodes_EditorWidget.
- OpenEditorWidget*
- CloseEditorWidget*
- ToggleEditorWidget*
- IsEditorWidgetOpen
- IsEditorWidgetRegistered
- SetEditorWidgetLabel
- GetEditorWidgetLabel
- SetEditorWidgetToolTip
- EditorWidgetDrawAttention
Back to the top
LevelActor
If you modify a Level Actors transformation in an Editor Widget the editor won't be notified about the change and wont prompt if you want to save the change when closing the map, so the plugin comes with the MarkActorAsDirty node that will fix that.
Examples can be found in EW_ToolbarButton_MoveSelectedToMouse and EW_ToolbarButton_RunConstructionScript.
- RunConstructionScript
- MarkActorAsDirty
Back to the top
Plugin Manager
Expose plugin functionality to blueprints so you can Enable/Disable plugins, Package a plugin or get the description with information about the plugin.
Examples can be found in EW_BlueprintNodes_PluginManager.
- EnablePlugin
- DisablePlugin
- SetPluginEnabled
- GetPluginIconTexture
- GetPluginDescription
- GetPluginDescriptions
- GetPluginCategory
- PackagePlugin
Back to the top
Notifications
Expose Notification functionality to blueprints so you can show notifications from blueprint nodes.
You can set custom Text, Icon, add buttons and click events.
Back to the top