Commit Graph

27 Commits

Author SHA1 Message Date
bob tellez
f4b2fb53a2 #UE Replace another usage of TryFindTypeSlow with FindFirstObject since this code deals with struct names instead of full object paths
[FYI] robert.manuszewski

#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 20440828 via CL 20440937 via CL 20440995
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20449454 by bob tellez in ue5-main branch]
2022-06-01 04:22:57 -04:00
robert manuszewski
d1443992e1 Deprecating ANY_PACKAGE.
This change consists of multiple changes:

Core:
- Deprecation of ANY_PACKAGE macro. Added ANY_PACKAGE_DEPRECATED macro which can still be used for backwards compatibility purposes (only used in CoreUObject)
- Deprecation of StaticFindObjectFast* functions that take bAnyPackage parameter
- Added UStruct::GetStructPathName function that returns FTopLevelAssetPath representing the path name (package + object FName, super quick compared to UObject::GetPathName) + wrapper UClass::GetClassPathName to make it look better when used with UClasses
- Added (Static)FindFirstObject* functions that find a first object given its Name (no Outer). These functions are used in places I consider valid to do global UObject (UClass) lookups like parsing command line parameters / checking for unique object names
- Added static UClass::TryFindType function which serves a similar purpose as FindFirstObject however it's going to throw a warning (with a callstack / maybe ensure in the future?) if short class name is provided. This function is used  in places that used to use short class names but now should have been converted to use path names to catch any potential regressions and or edge cases I missed.
- Added static UClass::TryConvertShortNameToPathName utility function
- Added static UClass::TryFixShortClassNameExportPath utility function
- Object text export paths will now also include class path (Texture2D'/Game/Textures/Grass.Grass' -> /Script/Engine.Texture2D'/Game/Textures/Grass.Grass')
- All places that manually generated object export paths for objects will now use FObjectPropertyBase::GetExportPath
- Added a new startup test that checks for short type names in UClass/FProperty MetaData values

AssetRegistry:
- Deprecated any member variables (FAssetData / FARFilter) or functions that use FNames to represent class names and replaced them with FTopLevelAssetPath
- Added new member variables and new function overloads that use FTopLevelAssetPath to represent class names
- This also applies to a few other modules' APIs to match AssetRegistry changes

Everything else:
- Updated code that used ANY_PACKAGE (depending on the use case) to use FindObject(nullptr, PathToObject), UClass::TryFindType (used when path name is expected, warns if it's a short name) or FindFirstObject (usually for finding types based on user input but there's been a few legitimate use cases not related to user input)
- Updated code that used AssetRegistry API to use FTopLevelAssetPaths and USomeClass::StaticClass()->GetClassPathName() instead of GetFName()
- Updated meta data and hardcoded FindObject(ANY_PACKAGE, "EEnumNameOrClassName") calls to use path names

#jira UE-99463
#rb many.people
[FYI] Marcus.Wassmer
#preflight 629248ec2256738f75de9b32

#codereviewnumbers 20320742, 20320791, 20320799, 20320756, 20320809, 20320830, 20320840, 20320846, 20320851, 20320863, 20320780, 20320765, 20320876, 20320786

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20430220 via CL 20433854 via CL 20435474 via CL 20435484
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v949-20362246)

[CL 20448496 by robert manuszewski in ue5-main branch]
2022-06-01 03:46:59 -04:00
vritvij kadam
089ac8ec7b Redirector support for DataTable row structs in the DataRegistry
#DataRegistry

#ROBOMERGE-AUTHOR: vritvij.kadam
#ROBOMERGE-SOURCE: CL 20302272 via CL 20302608 via CL 20302684
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20305769 by vritvij kadam in ue5-main branch]
2022-05-20 19:16:07 -04:00
Lauren Barnes
6248f8d412 Replacing legacy EditorStyle calls with AppStyle
#preflight 6272a74d2f6d177be3c6fdda
#rb Matt.Kuhlenschmidt

#ROBOMERGE-OWNER: Lauren.Barnes
#ROBOMERGE-AUTHOR: lauren.barnes
#ROBOMERGE-SOURCE: CL 20057269 via CL 20070159 via CL 20072035 via CL 20072203
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)
#ROBOMERGE-CONFLICT from-shelf

[CL 20105363 by Lauren Barnes in ue5-main branch]
2022-05-09 13:12:28 -04:00
Matt Peters
d64cf41728 AssetRegistry includes (Engine Plugins): change #include "AssetData.h" -> #include "AssetRegistry/AssetData.h", and similar for the other moved AssetRegistry headers.
#rb Zousar.Shaker
#rnx
#preflight 6270563191629533ec2b6f6e

[CL 20017756 by Matt Peters in ue5-main branch]
2022-05-02 18:59:38 -04:00
bob tellez
775bd1457f #DataRegistry If a data registry or data registry source is disregardforgc, then mark the objects it spawns as part of the root set to avoid violating disregardforgc assumptions
[FYI] Ben.Zeigler

#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 19176962 via CL 19177022 via CL 19177218 via CL 19177667 via CL 19177746 via CL 19179163
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19203409 by bob tellez in ue5-main branch]
2022-03-01 14:19:25 -05:00
aidan mcinerny
9bdc19724d #jira: none
Adding early out optimization to the Data Registry system so that we can skip lookups if we recieve a NAME_None.

#preflight 6217ea5abd28238bde8fa83b

#ROBOMERGE-AUTHOR: aidan.mcinerny
#ROBOMERGE-SOURCE: CL 19127534 via CL 19136113 via CL 19137154 via CL 19137491 via CL 19138536
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19155698 by aidan mcinerny in ue5-main branch]
2022-02-25 15:48:37 -05:00
marc audy
cff01aa9fa Added support for native FProperty setters and getters.
Setters and getters are native functions called by FProperties when setting property values with *_InContainer functions.
Setters and getter function names can be manually specified with Setter = Func and Getter = Func keywords inside of UPROEPRTY macro but they will also be automatically parsed if the name is not explicitly specified if the setter or getter function name matches SetPropertyName and GetPropertyName pattern.
The latter behavior can be disabled in UHT's DefaultEngine.ini by setting AutomaticSettersAndGetters=False.
ImportText and ExportTextItem functions have been deprecated and should be replaced with *_InContainer or *_Direct variants.

#rb Steve.Robb
#preflight 6210a377a83e0bcefd03d9e1

#ROBOMERGE-OWNER: marc.audy
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 19070318 via CL 19098059 via CL 19104650 via CL 19104661 via CL 19110012
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19147839 by marc audy in ue5-main branch]
2022-02-25 10:39:39 -05:00
marc audy
76ca93d9aa Fix Loctext conflicts
#jira UE-141420, UE-141421, UE-141469
#rb Ben.Hoffman
#lockdown aurel.cordonnier
#preflight 61fd6e55295dd9c101c6a3c7

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 18867726 in //UE5/Release-5.0/... via CL 18867771 via CL 18869248
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18869354 by marc audy in ue5-main branch]
2022-02-04 14:10:59 -05:00
sebastian nordgren
1791adb9a8 Deprecated bDisplayResetToDefault and the other checkboxes in IPropertyHandle::CreatePropertyNameWidget().
#jira UE-132670
#preflight 61a601ff9a226d9e8235b12e

[CL 18323004 by sebastian nordgren in ue5-main branch]
2021-11-30 06:04:48 -05:00
billy bramer
b582fa094a Hand merge of CL 18249022, fixing a non-unity build issue originating from CL 18248575
=====

- Fix non-unity build issue with cherry-picked integration from CL 18248575

#rb trivial

#ROBOMERGE-AUTHOR: billy.bramer
#ROBOMERGE-SOURCE: CL 18249027 via CL 18249029 via CL 18249030 via CL 18249116 via CL 18249132
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18249139 by billy bramer in ue5-release-engine-test branch]
2021-11-19 00:29:21 -05:00
ben zeigler
146064af8b #jira UE-126512 Fix data loss issue where opening data registry ids that aren't valid with the current settings
It now leaves the invalid data but puts up a warning image
[CODEREVIEW] billy.bramer

#ROBOMERGE-AUTHOR: ben.zeigler
#ROBOMERGE-SOURCE: CL 18244456 in //UE5/Release-5.0/... via CL 18244476
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18244549 by ben zeigler in ue5-release-engine-test branch]
2021-11-18 16:52:54 -05:00
aurel cordonnier
a6e741e007 Merge from Release-Engine-Staging @ 17915896 to Release-Engine-Test
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035

[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-25 20:05:28 -04:00
phillip kavan
1b6914ca4b Extends the class viewer module to support multiple custom class filters along with an optional associated view option flag.
Additional changes:
- Deprecates the previous method for specifying a singular custom class viewer filter and updates all existing occurrences of this pattern in engine code.
- Extends the property editor utilities interface to expose custom class filter(s) that can be applied to the class picker widget used for editing class property values.
- Adds an implementation of this interface to SDetailsView such that additional class filter(s) can now be configured to be applied to all underlying class property nodes.

#jira UE-108316
#rb Lauren.Barnes
#preflight 60c2102e8ae8960001110d50

#ROBOMERGE-OWNER: phillip.kavan
#ROBOMERGE-AUTHOR: phillip.kavan
#ROBOMERGE-SOURCE: CL 16623084 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v831-16623017)
#ROBOMERGE-CONFLICT from-shelf

[CL 16623246 by phillip kavan in ue5-release-engine-test branch]
2021-06-10 10:40:50 -04:00
ben zeigler
b340a593bb #jira UE-112151 Add warning when a data registry specific asset register fails
#rb none

#ROBOMERGE-SOURCE: CL 16370346 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)

[CL 16370388 by ben zeigler in ue5-release-engine-test branch]
2021-05-18 13:09:27 -04:00
ben zeigler
45f4b9f487 #jira UE-2848 Blueprint function category and display name cleanup pass:
Add spaces to overridden display names, it doesn't add them automatically
Move some functions out of Utilities into their own categories like Transformation, this improves the UX for the node picker and Utilities is for Core functionality
Simplify and combine some redundant categories
Clean up functions like IsValid to specify the type and attempt to unify case for math functions
#rb ben.hoffman

#ROBOMERGE-SOURCE: CL 16355176 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v804-16311228)

[CL 16355193 by ben zeigler in ue5-release-engine-test branch]
2021-05-17 13:27:10 -04:00
Lauren Barnes
39f1923ed0 Deprecating .Icon() as a slate attribute on SDockTab. By default, tab icons fall back to using the one for the tab spawner's menu item. SetTabIcon can be used in the edge cases where an icon needs to be set that doesn't match the default. Updating all found cases of .Icon() usage on SDockTab.
#jira UETOOL-3429
#preflight 60996a2bdd2e00000126ff25
#rb Matt.Kuhlenschmidt

[CL 16251489 by Lauren Barnes in ue5-main branch]
2021-05-10 14:19:15 -04:00
ben zeigler
2b1258dbf9 #jira UE-112290 Fix missing icon in DataRegistry editor, was renamed
Also fix unrecognized tab, and duplicate struct link in both registry and data table editor
#rb none

#ROBOMERGE-SOURCE: CL 15868470 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v786-15839533)

[CL 15868477 by ben zeigler in ue5-main branch]
2021-03-30 17:49:53 -04:00
Matt Peters
c3f0e0d5fb Change presave prototype:
Add PRAGMA_(DIS/EN)ABLE_DEPRECATION_WARNINGS around the deprecated function overrides and restore the deprecation attribute on the deprecated PreSave functions.
#rnx
#rb Steve.Robb, Devin.Doucette

[CL 15861711 by Matt Peters in ue5-main branch]
2021-03-30 10:01:48 -04:00
Matt Peters
e9982b416b Change presave prototype: temporarily remove deprecation to find the discrepancy with the farm build vs my local build.
#rb None - trivial
#rnx

[CL 15835892 by Matt Peters in ue5-main branch]
2021-03-25 19:39:18 -04:00
Matt Peters
fd97028c28 Change presave prototype to take an FObjectSaveContextRef to provide more information about the save parameters.
#rb Francis.Hurteau, Devin.Doucette
#rn Minor Cooking

[CL 15831839 by Matt Peters in ue5-main branch]
2021-03-25 16:51:36 -04:00
Patrick Boutot
17e2d4886e Slate: Convert SBorder attributes to SlateAttributes
#jira UE-109146
#rb vincent.gauthier
#preflight 605a0c8ade09250001e33a7d

[CL 15779227 by Patrick Boutot in ue5-main branch]
2021-03-23 12:33:14 -04:00
jamie dale
107f7b0f0c Audited use of FDetailsViewArgs::ObjectsUseNameArea
CL# 15481362 changed the behavior of ObjectsUseNameArea so that the object name was visible, and upon auditing the current use of ObjectsUseNameArea it was found that all but a few cases likely intended to use HideNameArea instead.

Breaking: This change also renames FDetailsViewArgs::bShowActorLabel to FDetailsViewArgs::bShowObjectLabel to reflect what it actually does.

#rb Brooke.Hubert

#ROBOMERGE-SOURCE: CL 15496125 in //UE5/Release-5.0-EarlyAccess/...
#ROBOMERGE-BOT: STARSHIP (Release-5.0-EarlyAccess -> Main) (v771-15082668)

[CL 15496134 by jamie dale in ue5-main branch]
2021-02-22 19:45:57 -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
cac1fe0019 Merge UE5/Release-Engine-Staging @ CL# 15299266 to UE5/Main
This represents UE4/Main @ CL# 15277572

[CL 15299962 by Marc Audy in ue5-main branch]
2021-02-03 14:57:28 -04:00