SActorDetails now operates on a given UTypedElementSelectionSet (removing its dependence on the global selection), and also operates based on the list of selected top-level elements rather than the selected actors.
UTypedElementDetailsInterface provides the interface needed for an element to be used with the details panel, with ITypedElementDetailsObject being the underlying glue object.
The ITypedElementDetailsObject instance will exist as long as the details panel is using it, so gives a lifetime to potentially synthesized UObject instances that are created purely for editing (eg, on instances).
This change removes almost all direct use of UpdateFloatingPropertyWindowsFromActorList, with only a single use-case in the reference viewer remaining.
Most code was already using UpdateFloatingPropertyWindows anyway, which now emits an extra OnElementSelectionChanged event in addition to its previous OnActorSelectionChanged event.
UpdateFloatingPropertyWindowsFromActorList now only emits an OnOverridePropertyEditorSelection event and no longer emits an OnActorSelectionChanged event.
SActorDetails is updated from both OnElementSelectionChanged and OnOverridePropertyEditorSelection, with the OnActorSelectionChanged event remaining for backwards compatability with existing code.
#jira
#rb Chris.Gagnon, Brooke.Hubert
[CL 15037524 by Jamie Dale in ue5-main branch]
I'm going to narrow the scope of the fix for UE-54964 instead in an additional CL to follow.
#rnx
#rb Chris.Gagnon
#jira UE-54964, UE-104342
[CL 14942194 by Phillip Kavan in ue5-main branch]
Fixes the potential for encountering a regression crash in the editor that was introduced with CL 14886456.
#rnx
#rb None
#jira UE-54964
#fyi Tyson.Brochu, Semion.Piskarev, Jonathan.Bard
[CL 14890965 by Phillip Kavan in ue5-main branch]
These changes allow a Blueprint class that is based on an abstract native parent class to dynamically add new sprite categories inherited from the native parent when a level is loaded with one or more instances of the Blueprint class. Previously, this could crash the editor due to a global mapping table that was not being updated to include new sprite category visibility commands created in that case.
#jira UE-54964
#rb Chris.Gagnon
[CL 14886456 by Phillip Kavan in ue5-main branch]
Scene Outliner refactored to remove all actor-specific code.
Now uses modular modes and hierarchies to allow representation of any data model.
#rb patrick.enfedaque matt.kuhlenschmidt
#jira none
#fyi tim.gautier
[CL 13922848 by roey borsteinas in ue5-main branch]
- Overhauled in viewport toolbar
- Updated active viewport outline and hidden tab dock icons
#rb none
[CL 13307248 by Matt Kuhlenschmidt in ue5-main branch]
#jira UE-92684
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 13181439 via CL 13184224 via CL 13184258 via CL 13184288 via CL 13184350
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v688-13145358)
[CL 13184404 by rex hill in Main branch]
# Speculative fix - the callstack in the bug looks like we think we have a valid actor pointer, but it's probably getting garbage collected. The log is outputting level unload messages right before the crash.
#Jira UE-89337
#rb lauren.barnes
#ROBOMERGE-SOURCE: CL 11774509 in //UE4/Release-4.25/... via CL 11774609
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v656-11643781)
[CL 11776817 by brooke hubert in Main branch]
Now there is a separate api on editor viewports to set and remove a temporary override state. Deprecated existing methods and fixed up use cases.
#ROBOMERGE-OWNER: matt.kuhlenschmidt
#ROBOMERGE-AUTHOR: matt.kuhlenschmidt
#ROBOMERGE-SOURCE: CL 11498109 via CL 11498156 via CL 11498165
#ROBOMERGE-BOT: (v654-11333218)
#rb none
[CL 11498464 by matt kuhlenschmidt in Main branch]