Commit Graph

196 Commits

Author SHA1 Message Date
nate strohmyer
c4b2e38146 Making a Drag/Drop action for Input Actions into the Blueprint Graph
#Jira UE-161947
#rb ben.hoffman
#preflight 635c52813c0af539fd66d17c

[CL 23040016 by nate strohmyer in ue5-main branch]
2022-11-08 16:28:09 -05:00
dave jones2
1b50b70aee UE-160862 - Fix FW-Gameplay miscellaneous module truncation warnings
#jira UE-160862
#preflight 63191b1cb069eea9ab594ea2
#rb andrew.davidson

[CL 21974045 by dave jones2 in ue5-main branch]
2022-09-12 18:16:22 -04:00
Robert Millar
d2a8b279ca FNames containing asset paths are deprecated. FSoftObjectPath or FTopLevelAssetPath should be used instead.
Fixups for blueprints in editor.

#jira UE-161932
#rb ben.zeigler
#preflight 631820e4d135b61bc59b9981

[CL 21841686 by Robert Millar in ue5-main branch]
2022-09-07 01:06:47 -04:00
bryan sefcik
0837230669 Ran IWYU again on half of the Engine/Source/Editor/... source files.
#jira

[CL 21716414 by bryan sefcik in ue5-main branch]
2022-08-30 23:03:03 -04:00
nate strohmyer
65b46b73ae Combo Input Triggers now return the correct supported trigger events.
Adding a config variable for Unsupported triggers warnings.

#Jira UE-159656
#rb ben.hoffman
#preflight 62feb880f7404b55a3071be0

[CL 21572648 by nate strohmyer in ue5-main branch]
2022-08-25 17:07:11 -04:00
bryan sefcik
8cc129f2b6 IWYU Pass 1 - Engine/Source/Editor/...
#jira
#preflight 6306736ac85b7fef22be7751

[CL 21558583 by bryan sefcik in ue5-main branch]
2022-08-24 22:45:13 -04:00
phillip kavan
adf5db9c12 Blueprint namespace editor features are now enabled by default.
Change summary:
- Moved Blueprint namespace editor settings out of the experimental category.
- Modified the editor settings details customization to allow the options to appear as adjacent rows, since the feature flag is also an edit condition.

#jira UE-159089
#rb Ben.Hoffman
#preflight 62ffa0307d17941e9f8a7cda

[CL 21525377 by phillip kavan in ue5-main branch]
2022-08-23 19:29:21 -04:00
jordan hoffmann
8378dd65ed fixed overshadowed variable compile error
#rb trivial
#prevlight trivial

#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 21414126 via CL 21414142 via CL 21414171
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21416018 by jordan hoffmann in ue5-main branch]
2022-08-16 18:22:41 -04:00
jordan hoffmann
68a9ef17d4 [Feature] Blueprint Action Filter Caching
#jira UE-160460
#rb phillip.kavan

#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 21408393 via CL 21408438 via CL 21408464
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21411947 by jordan hoffmann in ue5-main branch]
2022-08-16 15:31:33 -04:00
jordan hoffmann
57792c17bb [Backout] - CL21395002
[FYI] jordan.hoffmann
Original CL Desc
-----------------------------------------------------------------
[Feature] Blueprint Action Filter Caching
#jira UE-160460
#rb phillip.kavan

#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 21395834 via CL 21397098 via CL 21397678
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21399952 by jordan hoffmann in ue5-main branch]
2022-08-15 21:52:48 -04:00
jordan hoffmann
b2a083308e [Feature] Blueprint Action Filter Caching
#jira UE-160460
#rb phillip.kavan

#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 21395002 via CL 21396616 via CL 21396900
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v975-21357124)

[CL 21399916 by jordan hoffmann in ue5-main branch]
2022-08-15 21:51:56 -04:00
jordan hoffmann
6136fd370c turned off blueprint action filter profiling
#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 21212803 via CL 21214120 via CL 21214190
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21214662 by jordan hoffmann in ue5-main branch]
2022-07-22 00:12:52 -04:00
bryan sefcik
98b51354ed Ran IWYU on Public headers under Engine/Source/Editor/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065253 by bryan.sefcik
#jira
#preflight 62d5b3e91062f2e63014598e

#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21152630 via CL 21156388 via CL 21157044
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21181817 by bryan sefcik in ue5-main branch]
2022-07-20 11:56:29 -04:00
max chen
6450d4a229 Remove Matinee (1/2)
This change completely removes Matinee from the codebase. The data types and runtime evaluation code are gone. The "InterpEdit" editor mode, asset factories, and other editor support for Matinee is gone. CameraAnims and their sequencer tracks are gone. FBX import/export for Matinee assets is gone.

#preflight 62d0591e562520a394bca1d1
#preflight 62d194f63c3df323904679c1
#jira UE-105313
#rb none

#ROBOMERGE-OWNER: max.chen
#ROBOMERGE-AUTHOR: ludovic.chabant
#ROBOMERGE-SOURCE: CL 21116312 via CL 21116339 via CL 21118051
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21142481 by max chen in ue5-main branch]
2022-07-17 22:45:06 -04:00
jordan hoffmann
0c729fbf28 Unshelved from pending changelist '20809968':
Additional right-click Blueprint graph context menu profiling.

#preflight 62be03913f0d6beee29e55e0

#ROBOMERGE-OWNER: jordan.hoffmann
#ROBOMERGE-AUTHOR: jordan.hoffmann
#ROBOMERGE-SOURCE: CL 20905335 via CL 20915206 via CL 20915216
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20917862 by jordan hoffmann in ue5-main branch]
2022-07-01 14:16:41 -04:00
thomas sarkanen
5080445454 Fix bad merge in CL 20892543
Removed settings delegate that came from another change

#rb none

#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20892986 via CL 20892991
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20896216 by thomas sarkanen in ue5-main branch]
2022-06-30 11:26:36 -04:00
thomas sarkanen
930c912205 Added BP action DB filtering
Applies optional filtering to the BP context menu and related UIs.

Primarily this is implemented at the BlueprintActionDatabase/Registrar level as permissions are mostly static. One additional filter has been added to BlueprintActionFilter to handle filtering out items from assets that cannot be referenced from *this* blueprint.

Added type filtering to the variable type tree to prevent creating disallowed variable types. This piggybacks on the already-existing FImportedPinTypeSelectorFilter.

Also added some auditing console commands: bp.AuditThreadSafeFunctions and bp.AuditFunctionCallsForBlueprint
Corrected FBlueprintEditorUtils::HasFunctionBlueprintThreadSafeMetaData to not track FUNC_BlueprintEvent flags for native functions.

#jira UE-156715
#rb Phillip.Kavan,Jason.Stasik
#preflight 62b9bedae77151e5996dd658

#ROBOMERGE-OWNER: thomas.sarkanen
#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20890474 via CL 20891658 via CL 20892543 via CL 20892549
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20896198 by thomas sarkanen in ue5-main branch]
2022-06-30 11:25:52 -04:00
marc audy
8ca5f6a8be [Backout] - CL20807495
[FYI] Thomas.Sarkanen
Original CL Desc
-----------------------------------------------------------------
Added BP action DB filtering

Applies optional filtering to the BP context menu and related UIs.

Primarily this is implemented at the BlueprintActionDatabase/Registrar level as permissions are mostly static. One additional filter has been added to BlueprintActionFilter to handle filtering out items from assets that cannot be referenced from *this* blueprint.

Added type filtering to the variable type tree to prevent creating disallowed variable types.

Also added some auditing console commands: bp.AuditThreadSafeFunctions and bp.AuditFunctionCallsForBlueprint
Corrected FBlueprintEditorUtils::HasFunctionBlueprintThreadSafeMetaData to not track FUNC_BlueprintEvent flags for native functions.

#jira UE-156715
#rb Phillip.Kavan,Jason.Stasik
#preflight 62b572f1970a8db33765bf83

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20813981 via CL 20863344 via CL 20871119 via CL 20871207
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20876885 by marc audy in ue5-main branch]
2022-06-29 12:27:43 -04:00
phillip kavan
39a3c72268 CIS fix (resolved merge issue).
#rnx
#jira UE-157625
#rb None (merge issue)
#preflight None

#ROBOMERGE-AUTHOR: phillip.kavan
#ROBOMERGE-SOURCE: CL 20817090 via CL 20817094
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20818691 by phillip kavan in ue5-main branch]
2022-06-24 18:54:13 -04:00
phillip kavan
198fbe8f64 Added BP action DB filtering
Applies optional filtering to the BP context menu and related UIs.

Primarily this is implemented at the BlueprintActionDatabase/Registrar level as permissions are mostly static. One additional filter has been added to BlueprintActionFilter to handle filtering out items from assets that cannot be referenced from *this* blueprint.

Added type filtering to the variable type tree to prevent creating disallowed variable types.

Also added some auditing console commands: bp.AuditThreadSafeFunctions and bp.AuditFunctionCallsForBlueprint
Corrected FBlueprintEditorUtils::HasFunctionBlueprintThreadSafeMetaData to not track FUNC_BlueprintEvent flags for native functions.

#jira UE-156715
#rb Phillip.Kavan,Jason.Stasik
#preflight 62b572f1970a8db33765bf83

#ROBOMERGE-OWNER: phillip.kavan
#ROBOMERGE-AUTHOR: thomas.sarkanen
#ROBOMERGE-SOURCE: CL 20807495 via CL 20815974 via CL 20816610 via CL 20816624
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20818683 by phillip kavan in ue5-main branch]
2022-06-24 18:53:46 -04:00
Phillip Kavan
8e3e596f9b Exclude node spawner actions for non-imported component types from the Blueprint graph context menu when Blueprint namespace editor features are enabled.
Change summary:
- Extended FBlueprintActionContext to include a weak ptr to the current IBlueprintEditor context.
- Added ENUM_CLASS_FLAGS() for the FBlueprintActionFilter::EFlags enumeration (for use as bitflags).
- Deprecated the current FBlueprintActionFilter constructor, replaced with a more explicitly-typed EFlags param.
- FBlueprintActionFilter now internally stores its filter flags. Also added FBlueprintActionFilter::HasAnyFlags/HasAllFlags().
- Minor refactor to a few action filter delegates to query the filter flags locally rather than add bool flags to delegate payloads.
- The FBlueprintActionFilter constructor now unsets the non-imported filter flag if Blueprint namespace editor settings are disabled.
- BlueprintActionFilterImpl::IsNonImportedObject() now utilizes the filter context rather than iterate the Blueprints array to find open asset editors.
- Added an override for UBlueprintComponentNodeSpawner::IsTemplateNodeFilteredOut(). This is now used to filter out any loaded or unloaded BP component types from the context menu.
- Cleaned up display inconsistencies in the menu UI spec between loaded vs. unloaded "Add Component" node spawner actions in the context menu.
- Added an FSoftObjectPath variant of IBlueprintEditor::IsNonImportedObject() (to support unloaded non-native component type entries which store the class object path). Implemented as FBlueprintEditor::IsNonImportedObject(FSoftObjectPath).
- Added an override for UK2Node_DynamicCast::IsActionFilteredOut() to exclude cast operator actions for non-native component types if they are not imported into the current editor context.
- Modified SBlueprintActionMenu, SBlueprintFavoritesPalette and SBlueprintLibraryPalette to include the current editor context in applicable action filter context(s).

#jira UE-149760
#rb Ben.Hoffman
#preflight 62753dd9e31cfc52d5bd0539

[CL 20077282 by Phillip Kavan in ue5-main branch]
2022-05-06 11:49:20 -04:00
Matt Peters
7ad238a806 AssetRegistry includes (Engine/Source): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270509a220f89f0ad573030

[CL 20016982 by Matt Peters in ue5-main branch]
2022-05-02 18:06:48 -04:00
dave jones2
939f991649 UE-146987 - Cleaned up the original fix for erroneous implicit casts in python script nodes.
Since UK2Node_ExecutePythonScript uses wildcards for its pins, it's dependent on its linked inputs. During node reconstruction, we were updating the python node's pins based on incorrect data. For example, one of the input nodes needed to change its pin type from real/double to real/float during reconstruction. However, this reconstruction occurred after the linked python node was reconstructed. As a result, the python node assumed that its linked input node was using a real/double type.

We can fix this by simply changing the priority of UK2Node_ExecutePythonScript to Low_UsesDependentWildcard. Additionally, this change reverts 19482561.

#rb jamie.dale
#preflight 625882d8010ebc5d4e8a5cc7
#jira UE-146987

[CL 19810564 by dave jones2 in ue5-main branch]
2022-04-19 12:18:56 -04:00
Phillip Kavan
f64e3e18d7 Some minor refactoring to assist with auto-importing external type object dependency namespaces into the Blueprint editor context in response to user actions.
Change summary:
- Moved base definition of UK2Node::HasExternalDependencies() up one level to UEdGraphNode (to avoid blind casts in a context where we may not necessarily have a UK2Node subtype).
- Updated subtype headers that override HasExternalDependencies() to relocate the declaration into the class declaration's 'UEdGraphNode overrides' section (for clarity).
- Reverted previous UBlueprintNodeSpawner::ImportTarget solution in favor of using node dependencies; this allows auto-import actions to scale more easily to all existing node subtypes and avoids data duplication.
- Modified SBlueprintActionMenu::OnActionSelected() to utilize the new method for determining which namespace(s) to auto-import after executing a node spawner action in response to a context menu item selection (UE-146803).
- Reverted FBlueprintNamespaceUtilities::GetPropertyValueNamespaces() back to its original 5.0 signature so that it uses a TSet<FString> for the output rather than a TArray<FString>; this fits in better with input to other APIs.
- Renamed FBlueprintEditor::FImportNamespaceParameters to FImportNamespaceExParameters (for clarity).
- Changed the 'FBlueprintEditor::FImportNamespaceParameters::AdditionalNamespaces' member to a TSet<FString> containing *all* namespaces to import rather than limiting to only additional ones.
- Reverted FBlueprintEditor::ImportNamespace() back to its original 5.0 signature and added/implemented FBlueprintEditor::ImportNamespaceEx() as the "extended" version that allows for batched imports and future customizations.
- Revised existing FBlueprintEditor::ImportNamespace() call sites to utilize and/or conform to the extended ImportNamespaceEx() API where appropriate.

#jira UE-146803
#rb Benjamin.Fox
#preflight 623cf3a433709ff50128e8d4

[CL 19505118 by Phillip Kavan in ue5-main branch]
2022-03-24 19:50:46 -04:00
Phillip Kavan
8bffee0ba1 Auto-import the associated namespace after selecting a non-imported action in the Blueprint graph context menu.
Change summary:
- Added UBlueprintNodeSpawner::ImportTarget to store/serialize an object reference to allow for resolving action namespace scope on selection.
- Modified UBlueprintFieldNodeSpawner::SetField() to determine and store the import target object reference for a field-based node spawner type.
- Modified FBlueprintNodeSpawnerFactory::MakeMacroNodeSpawner() to determine and store the import target object for a macro instance node spawner.
- Modified SBlueprintActionMenu::OnActionSelected() to auto-import the associated namespace after selecting an action item containing a valid node spawner.

#jira UE-146803
#rb Benjamin.Fox
#preflight 623b56df9304d833f40d422a

[CL 19485593 by Phillip Kavan in ue5-main branch]
2022-03-23 16:51:27 -04:00