Commit Graph

120 Commits

Author SHA1 Message Date
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
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
phillip kavan
b2fe29cdc1 Fixes for dtor typos that attempted to unregister handlers from the wrong delegate interface on editor shutdown.
#jira None
#rb None (trivial)

#ROBOMERGE-AUTHOR: phillip.kavan
#ROBOMERGE-SOURCE: CL 18242483 in //UE5/Release-5.0/... via CL 18242512
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18243005 by phillip kavan in ue5-release-engine-test branch]
2021-11-18 15:27:23 -05:00
Marc Audy
0c3be2b6ad Merge Release-Engine-Staging to Test @ CL# 18240298
[CL 18241953 by Marc Audy in ue5-release-engine-test branch]
2021-11-18 14:37:34 -05:00
helge mathee
4d9051f0b1 Control Rig: Refactor details panel groups to sections
#jira UE-134548 UE-134560
#rb jack.cai mike.beach
#preflight https://horde.devtools.epicgames.com/job/618d3611857f308d8568874b

#ROBOMERGE-AUTHOR: helge.mathee
#ROBOMERGE-SOURCE: CL 18152273 in //UE5/Release-5.0/... via CL 18152382
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18152447 by helge mathee in ue5-release-engine-test branch]
2021-11-11 11:47:13 -05:00
aurel cordonnier
7f517562d5 Merge from Release-Engine-Staging @ 17438845 to Release-Engine-Test
This represents UE4/Main @17430120 and Dev-PerfTest @17437669

[CL 17439044 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-06 12:23:53 -04:00
ben zeigler
7cc5e791eb #jira UE-103154 Auto-promote Set Struct Member node to default category so it's next to Break struct in node menu, and refactor logic into StructOperation
Promote Resolve Soft Reference to the default category and change title to Make when going the opposite direction
Move the UDN documentation node out of the top level category because end users never want it
#rb ben.hoffman

[CL 16270114 by ben zeigler in ue5-main branch]
2021-05-11 10:58:41 -04:00
Tim Smith
a2237e050d LiveCoding Re-instancing
LIMITATIONS:

1) Re-instancing will only update UClass instance data.
2) Adding and removing properties should only be done towards the end of a class or structure and can not be followed by complex data types.
3) Adding and removing properties from a base class should not be done if a derived class contains complex data types.

KNOWN ISSUES:

1) Changes to enumerations and structures will not be reflected in existing blueprints.  However, adding new nodes to the blueprint will show the updated enumeration or structure.
2) If a class contains an enumeration or structure as a member, the class will not be re-instanced if enumeration or structure is changed.

CHANGES:

1) LiveCodingServer
1a) Modified to always execute certain static instances during load.
1b) Modified to exclude the _Statics static structures to avoid patching to old copies.

2) Added support for LiveCoding reinstancing
2a) Refactored deferred registration system for UClass, UEnum, and UScriptStruct to use a common system that works for normal game, hot reload and live coding.
2b) Type specific version check data is possible (i.e. enum doesn't have a size)
2c) Single registration static for UClass
2d) Single registration class for all types that is just a blind forward to API.
2e) Static and dynamic registrations use different API entry points to avoid having overloaded argument lists that just apply to one or the other.
2f) Shims for older API

3) New common "Reload" system to avoid using HotReload code.
3a) Support common delegates regardless of who is reloading/reinstancing.
3b) Re-instancing code moved from HotReload to Kismet2 (where the bulk of the re-instance code already existed).
3c) Modified PyWrapper to use new helper class instead of depending on HotRelaod
3d) Added WITH_RELOAD which is defined if HotReload or LiveCoding is enabled.
3e) Modifed existing code to use new #define and delegates.

Robert did the review on the changes covered by Part 2.  Remaining changes are all straightforward.

#rb robert.manuszewski
#jira UE-74493

[CL 15736777 by Tim Smith in ue5-main branch]
2021-03-18 08:13:59 -04:00
Marc Audy
9753392e2b Merge UE5/RES CL# 15462083 to UE5/Main
This represents UE4/Main @ 15414221

[CL 15463811 by Marc Audy in ue5-main branch]
2021-02-18 18:13:28 -04:00
Marc Audy
7379fa99c5 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14229157
[CL 14233282 by Marc Audy in ue5-main branch]
2020-09-01 14:07:48 -04:00
ben hoffman
75fceb4c3a Blueprints: Add the CONNECT_RESPONSE_MAKE_WITH_PROMOTION to the EdGraphSchema, along with the TryCreatePromotedConnection to allow type promotion as an option.
#jira UE-94217
#rb michael.noland
#rnx

[CL 14176825 by ben hoffman in ue5-main branch]
2020-08-24 19:55:49 -04:00
robert manuszewski
b7568cc694 Fix for UE-90683: You can no longer delete conflicting variables
Refactored FindField into FindUField and FindFProperty to avoid confusion caused by the fact that FindField<UField> will no longer return FProperties.

#jira UE-90683
#rb Steve.Robb
#tests Basic editor functionality test, cooked and ran PC client and server, bot soak tests for two hours

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 12190998 in //UE4/Release-4.25/... via CL 12190999
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v661-12148976)

[CL 12191300 by robert manuszewski in Main branch]
2020-03-15 10:33:45 -04:00
Phillip Kavan
478247d07f Remove legacy "always compile on save" code path for LSBPs.
#jira UE-87775
#rb Dan.OConnor

[CL 11206568 by Phillip Kavan in Dev-Framework branch]
2020-02-03 11:11:27 -05:00
Phillip Kavan
2da902f9c8 Fix an editor crash caused by leaking Blueprint context menu actions for new sublevel script actors.
#jira UE-87506
#rb Marc.Audy

[CL 11177969 by Phillip Kavan in Dev-Framework branch]
2020-01-30 11:11:12 -05:00
ryan durand
627baf970a Updating copyright for Engine Editor.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870586 by ryan durand in Main branch]
2019-12-26 15:33:43 -05:00
Robert Manuszewski
7b6f840f7f Copying //UE4/Dev-Core @ 10708550 to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 10708666 by Robert Manuszewski in Main branch]
2019-12-13 11:07:03 -05:00
fred kimberley
ff831fa808 Merging using //UE4/Dev-Framework_to_//UE4/Release-4.24
Member references now store information about the class that owns the reference.
Field and variable node spawners now optionally take the class that will own the nodes that they spawn.

#jira UE-80887
#rb Michael.Noland

#ROBOMERGE-SOURCE: CL 9949141 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v558-9892490)

[CL 9949175 by fred kimberley in Main branch]
2019-10-31 17:59:47 -04:00
thomas sarkanen
473c492c99 Fixed skeleton animation notifies not showing up until an animation asset is opened
Animation notifies do not show up in actor BPs any more, but unrelated to this change.

#jira UE-47933 - Animation Notifies only appear if you open an animation blueprint before you open a Actor blueprint
#rb Jurre.deBaare

#ROBOMERGE-SOURCE: CL 9745600 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v542-9736015)

[CL 9745604 by thomas sarkanen in Main branch]
2019-10-22 10:37:03 -04:00
andrew rodham
9914c9cd98 Editor: Various fixes relating to deleting assets with editors open for subobjects of those assets
This change comprises 3 changes:
  1. Added handling of blueprints contained within assets to BlueprintActionDatabase. When an asset containing a blueprint was to be deleted, it's inner BP would not get added to the PendingDelete array resulting in the BP actions showing up as references during the delete.
  2. Changed UAssetEditorSubsystem::CloseAllEditorsForAsset to close all editors that relate to the specified asset (including editors for subobjects of the asset)
  3. Reverted change made in 6836393 as this is now handled more generically by CloseAllEditorsForAsset
  4. Ensure that LevelSequence SequenceDirector blueprints do not have RF_Standalone as this cases them to be missed by UObject::TagSubobjects, and subsequently considered an external reference when deleting the object

#jira UE-80972
#jira UE-72689
#rb Jamie.Dale, Phillip.Kavan, Matt.Hoffman

#ROBOMERGE-SOURCE: CL 9732290 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v539-9700858)

[CL 9732291 by andrew rodham in Main branch]
2019-10-21 11:03:48 -04:00
phillip kavan
c2fadbd41b Potential fix for occasional crashes in the wild on BP action database tick.
#jira UE-80341
#rb Dan.OConnor

#ROBOMERGE-SOURCE: CL 9698502 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v538-9681622)

[CL 9698519 by phillip kavan in Main branch]
2019-10-18 16:15:19 -04:00
Phillip Kavan
ff23b56aa8 Fix a memory leak in the Blueprint action database after a map load in the editor.
#jira UE-81839
#rb Marc.Audy

[CL 9663078 by Phillip Kavan in 4.24 branch]
2019-10-17 17:05:49 -04:00
Chris Gagnon
8ab0638182 Copying //UE4/Dev-Editor to Dev-Main (//UE4/Dev-Main) for 4.24
#rb none

[CL 9325047 by Chris Gagnon in Main branch]
2019-10-01 20:41:42 -04:00
Fred Kimberley
23619b8516 Added a sidecar data structure to hold data that is constant for all members of the same class. This data will now be stored per class instead of being stored per instance. This can result in substantial memory savings for classes that have many instances and constant data. Good candidates for identify this type of data are member variables that are marked as EditDefaultsOnly and BlueprintReadOnly.
#rb Michael.Noland
#jira UE-80589

[CL 8899817 by Fred Kimberley in Dev-Framework branch]
2019-09-19 15:39:36 -04:00
Marc Audy
f3f7604cd4 Merge UE4/Main to Dev-Framework @ 7329145
#rb
#rnx

[CL 7415594 by Marc Audy in Dev-Framework branch]
2019-07-17 12:57:46 -04:00