#rb dave.jones2, jodon.karlik
#ushell-cherrypick of 31385532 by kristof.morva1
#ushell-cherrypick of 31619147 by ben.hoffman
[CL 32492616 by ben hoffman in 5.4 branch]
This could lead to an inability to delete certain assets through the content browser, as panel widgets would continue to reference the underlying graph object through the slate application context with no way to clean them up. In turn, this would result in the asset persisting and being (incorrectly) noted as now existing in a "corrupt" state.
After this change, the asset deletion dialog will no longer report the asset as being referenced in this manner.
This change also minimizes the number of active timers registered to the panel widget for incoming node add/remove graph change events (which matches what was already being done for node select events).
#jira UE-201589, UE-194980
#rb ben.hoffman
[CL 30895230 by phillip kavan in 5.4 branch]
However: function searches will do a quoted search by native function name. The previous behavior was unquoted search by node title (usually function display name). As a result, the previous behavior for Find References would fail in functions with special characters in their name. Now that the name is surrounded in quotes, all function names are supported. The new Find References behavior now searches for correct function name for parent call nodes, interface implementations, event overrides, where the previous behavior failed due to searching for node title.
#rb Phillip.Kavan
[CL 30856744 by zhikang shao in 5.4 branch]
Also added the tests for undo redo
#jira UE-203475
#jira UE-203476
#jira UE-201944
#jira UE-202697
#rb Zohaib.Javed
[CL 30637460 by zulqarnain abbasi in ue5-main branch]
We rely on the LOD setting of the graph panel to determine the LOD of nodes and pins, but they only get a reference to the panel after their construction, so we need to refresh the LOD once we get a reference to the owning panel from the node. This is only needed before the first tick.
This is a prerequisite to fix the issue of graph nodes disappearing for a frame on undo/redo
#jira UE-187947
#rb Patrick.Boutot
[CL 30514055 by zahra nikbakht in ue5-main branch]
Improves "Find References" in blueprints: now supports function search by [class, function] call-sites and definitions rather than a generic search for function name. Replaces the "Find References" context menu action with a sub-menu for variables and functions in BlueprintEditor, WidgetBlueprintEditor, SubobjectEditor and SubobjectEditor. That context sub-menu has 'By Name' and 'By Class Member' search options and local+global versions of both.
Made changes to Find-in-Blueprints metadata that is generated per blueprint asset to be able to do "specific function of a specific class" type queries; some search types were unsupported with previous metadata. Incremented the EFiBVersion so that the Find-in-Blueprints search window will ask to re-index all blueprints and resave. Added an opt-out editor setting "Allow Index All Blueprints" (default: true) to disable the button, which can be decided per project. Added an action in the Find-in-Blueprints modal when outdated metadata is detected to export the list of affected assets.
#rb Phillip.Kavan
[CL 30316851 by zhikang shao in ue5-main branch]
[FYI] zhikang.shao
Original CL Desc
-----------------------------------------------------------------
#jira UE-196209
Improves "Find References" in blueprints: now supports function search by [class, function] call-sites and definitions rather than a generic search for function name. Replaces the "Find References" context menu action with a sub-menu for variables and functions in BlueprintEditor, WidgetBlueprintEditor, SubobjectEditor and SubobjectEditor. That context sub-menu has 'By Name' and 'By Class Member' search options and local+global versions of both.
Made changes to Find-in-Blueprints metadata that is generated per blueprint asset to be able to do "specific function of a specific class" type queries; some search types were unsupported with previous metadata. Incremented the EFiBVersion so that the Find-in-Blueprints search window will ask to re-index all blueprints and resave. Added an opt-out editor setting "Allow Index All Blueprints" (default: true) to disable the button, which can be decided per project. Added an action in the Find-in-Blueprints modal when outdated metadata is detected to export the list of affected assets.
#rb Phillip.Kavan
[CL 30289794 by zhikang shao in ue5-main branch]
Improves "Find References" in blueprints: now supports function search by [class, function] call-sites and definitions rather than a generic search for function name. Replaces the "Find References" context menu action with a sub-menu for variables and functions in BlueprintEditor, WidgetBlueprintEditor, SubobjectEditor and SubobjectEditor. That context sub-menu has 'By Name' and 'By Class Member' search options and local+global versions of both.
Made changes to Find-in-Blueprints metadata that is generated per blueprint asset to be able to do "specific function of a specific class" type queries; some search types were unsupported with previous metadata. Incremented the EFiBVersion so that the Find-in-Blueprints search window will ask to re-index all blueprints and resave. Added an opt-out editor setting "Allow Index All Blueprints" (default: true) to disable the button, which can be decided per project. Added an action in the Find-in-Blueprints modal when outdated metadata is detected to export the list of affected assets.
#rb Phillip.Kavan
[CL 30289718 by zhikang shao in ue5-main branch]
This allows SGraphPanel widgets that live outside of an editor context (e.g. previews) to avoid node/pin references going stale if the underlying graph object is reconstructed.
#jira UE-194980
#rb daren.cheng
[CL 29963162 by phillip kavan in ue5-main branch]
---
Add PostBufferUpdate widget which can be used to trigger an update to the Slate Post RT when it "draws"
Updated Post RT will contain Scene + All UI drawn at that time & also be processed by provided processor.
Updated ICustomSlateElement interface to support draw context params.
#rb Patrick.Boutot
#jira UE-199609
[CL 29892909 by daren cheng in ue5-main branch]
This fixes false positives when a pin is connected to several pins with the same name
#jira UE-186242
#rb jordan.hoffmann
[CL 29816081 by olivier lamothe in ue5-main branch]
A very long time ago CL 2411381 introduced a change to make the default Base Indent Level of all Graph Action Menus "1", basically meaning that both "0" and "1" indent levels would be placed at the root of the menu. Presumably they've needed it, because in BPs, categories on the left side are custom headers, and they didn't want the children (functions, variables, etc) to have an extra indent.
However, they've made this change globally, basically breaking Graph Action Menus that didn't have category customization and needed the first level to be indented under the root level.
Some systems have overcome this by defining a custom expander with a Base Indent Level of 0 - getting back the original, expected behavior. That was however just hiding the underlying issue.
This change reverts back the Base Indent Level to 0, and sets it to 1 instead only for those menus, which have a customized category header. This should fix all graph menus where the second category level was not indented (i.e. BT Action Menu and Decorator Context Menu).
#rb aditya.ravichandran
#jira none
#ushell-cherrypick of 29515770 by kristof.morva1
[CL 29530311 by ben hoffman in ue5-main branch]