Editor Utility Widgets Feedback

in that case, i have some issues with the functions that are available. when i call any functions that are being called by the viewport toolbar, it crashes my project and gives me an error regarding the following:

Can not open the new map because the current map can not been garbage collected.
Conflict with a shared pointer.
No errors-> Unhandled Exception.
Do not use engine flags (this is for internal use only). DO NOT USE.

Also, when the editor widget is left opened, it crashes, when i reopen my project. the window where the widget used to be would be empty, i would click on my button to open a new level, and it would crashed and one of the following errors above.

I would use the one of the following functions
ToggleGameView()
ToggleActorCameraView()
bool bLocked;
SetGameView()

Is there a certain process that I am missing to have the ability to call editor functions within my editor widget?

For this case, it’s probably best to enter in a bug report and if possible, include your widget with a sample project so that your issue can be reproduced and debugged. Thanks!

Any chance of a node to run an Actor’s ConstructionScript from an Editor Utility? I have a lot of actors with fairly elaborate stuff happening in ConstructionScript, and it’d be great to be able to have an Editor Widget change some settings on those actors and have them regenerate, without having to move the actor/change a setting on it to trigger the ConstructionScript.

Probably for this case I would make a function to call on those actors, and call that when you construct the actors but also make it available to be called from your Editor Utilities.

Hi, quick question.

In the editor widget, I don’t find SetActorSelectionState bp node anymore.

How do you change selection in 4.23 editor utilities?

edit: I found this in the docs, but I don’t see it in autocomplete. I only have GetSelectioSet and GetSelectionBounds.

This is almost, but not quite, an okay solution for me. I’ve hit a bug:

if your Actor has a Call-In-Editor function (MyFunction) which spawns a Child Actor using a Child Actor Component, that Child Actor’s ConstructionScript will run ***only ***if MyFunction was not called from an Editor Utility Widget. That is, clicking the MyFunction button in the Actor’s details panel works fine, but if you call that same function on the selected actor from an Editor Utility Widget, the newly-created child actor’s ConstructionScript will not run.

EDIT: This also happens for non-Child Actors. Any Actor created by the Actor having the function called on it won’t run its ConstructionScript if the function was called from an EditorUtilityWidget. I was able to work around this by giving every actor a Generate function instead of ConstructionScript, and calling that through an interface. Seems alright!

Btw, I found it, it’s in the Editor Scripting Utilities plugin now, which is disabled by default.

Sorry if this has been said, but, in old blutilitys, when you expose a variable on spam, you could set that variable in the UE widget, but with new Editor Widgets, I don’t know how to set assets as inputs in the widget.

Do you have any clue?

I just noticed another difference between the old system and the new one: spawning new Actors from an Utility widget will not call the Actor’s construction script. In 4.22 it was called.
I think the new way is kinda wrong, no?

Another problem: If you have a category and a sub-category in actor properties, like “Paint Material” and “Paint Material | Private”, then when you use Details View with some “Categories to Show” specified, the sub-category will always be shown. Like, for example, I have Details View for “Wall”, and it shows “Paint Material | Private” too.

I agree that this seems like there is an issue here, and we’ll look into it on our end. Thanks for letting us know!

scha’s example with the details view (or single property view) is the intended workflow here - we don’t want you to have to make your own asset dropdowns but all UI is meant to be in Editor Utility Widgets now.

Thanks for letting us know! We’ll look into this.

Thank you, I’ll try following that.

Can you show a little how to use detail view? I’m not finding enough documentation to make it work.

Okay, so I had my old BP_Builder blueprint, which was a GlobalEditorUtilityBase, then I created a new BP_Builder_Widget, which is a EditorUtilityWidget, copyied all properties and functions from the old one to the new one using this plugin (I couldn’t just reparent for some reason). Then in the widget designer I use “Details View” sub-widget, and I initialize it by giving “Self” to the “SetObject” function of the detail view, so it will be able to show the properties of the BP_Builder_Widget itself. Also, I specify which categories to show in the “Categories to show” property of the Details View. I actually made a UI with tabs, like you see above, and every tab have one detail view for one category.
Then for the call-in-editor functions, I just made a button for each, and put them under the Details View, again like you can see in the pic in the post above.

Yeah, thank you very much, the SetObject function was the key!

Several things that would be nice to have in Editor Utility Widgets:

  • PrintString - Currently, using PrintString with the widgets doesn’t do anything.
  • SetTimerByFunctionName - Currently, using SetTimerByFunctionName also doesn’t do anything.
  • Having an OnSelectedActorChanged event so that blueprints can respond to selection changes in the viewport. Currently, there is no way to respond to a user selecting objects.

Hi, Ive been down the rabbit hole a little on the Blueprint utility widgets and am wondering where (if) I can access the source file location of any assets, I can access the paths inside the engine just fine, no issue. But I wish to be able to import a file, then based on that file - automatically load the correct textures for it.

Also, I was wondering if theres a fileDialog that can also be accessed via widgets, then use the path / filename / etc

Also, it would be nice to be able to right click on the tab of a Blueprint Editor Widget and find it in the content browser for further editing.

Thank you, it works correctly, but the function is not displayed when selecting the target “editor widget blueprint”.

Get mouse Viewport mouse position in editor :
I have another question, the function to know the local position of the mouse in the viewport does not work in mod editor, however it works with an actor in mod simulation and play.
A new function could be useful to be able to create an overlay of world edition by the mouse, know the local position of the mouse in the world window, and know the FOV to apply to the edition camera, or otherwise a projection function “Project Vector direction in editor viewport”.

New widget part :
I saw the new widget tool for details, but it might be better to have all the editor widgets and then combine them with the existing tools, that’s what I wanted to do for my own project.

Blutilities type :
There are many new types of blutilities available, but we would need some explanation and detail to be able to use them.