Commit Graph

161 Commits

Author SHA1 Message Date
bryan sefcik
b93a6cf7ed Pass 1 on editor include fixes:
Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.

#jira
#preflight 631e283bec5b0c765fc0ffdb

[CL 21960084 by bryan sefcik in ue5-main branch]
2022-09-11 18:33:06 -04:00
Robert Millar
1313cc865d FNames containing asset paths are deprecated. FSoftObjectPath or FTopLevelAssetPath should be used instead.
Fixups for class features in the editor.

#jira UE-161932
#rb ben.zeigler
#preflight 631a55942b7fe03eb6c27d74

[CL 21903450 by Robert Millar in ue5-main branch]
2022-09-08 17:06:00 -04:00
bryan sefcik
925161d3e2 Another IWYU pass on Engine/Source/Editor/...
#jira

[CL 21716486 by bryan sefcik in ue5-main branch]
2022-08-30 23:04:40 -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
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
dave belanger
c110d5f4de Fix class viewer filter asset reference check on a cooked BP (which only has the BPGC asset)
Log a warning if the BP class cannot be found (which can happen when an uncooked BP has been moved without being recompiled)
#rb Rex.Hill
#preflight 62d6bf0a1062f2e630392c66

#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 21163719 via CL 21164817 via CL 21172316 via CL 21174223 via CL 21180166
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21192270 by dave belanger in ue5-main branch]
2022-07-20 18:27:36 -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
Lauren Barnes
c4f2982b25 Adding BoldItalic and Italic font style to FStyleFonts, use cases in AnimCurve viewer and Class Viewer respectively
#preflight 62cf2131456e3727b1d50608
#rb aditya.ravichandran
#jira UE-143100
#jira UE-158618

[CL 21080225 by Lauren Barnes in ue5-main branch]
2022-07-13 16:40:47 -04:00
Matt Peters
803e794b36 AssetRegistryModule: Add TryGet function that can return null instead of asserting during Engine shutdown.
#jira UE-157056
#rb PJ.Kack
#rnx
#preflight 62b1d7fd827ccccb2cdec5a3

[CL 20758071 by Matt Peters in ue5-main branch]
2022-06-21 11:07:36 -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
sebastian nordgren
2a4d886834 Removed unnecessary inline forward declarations from ClassViewerModule.h.
#rb trivial
#rnx
#preflight 628e4d19f622d972b58a17b4

[CL 20365984 by sebastian nordgren in ue5-main branch]
2022-05-25 11:55:35 -04:00
robert manuszewski
f8a812a32f Converting hardcoded short class/enum names to pathnames ahead of ANY_PACKAGE removal
#rb trivial
#jira UE-99463
#preflight 6288fd998828ea88c8aef3d0

#ROBOMERGE-OWNER: robert.manuszewski
#ROBOMERGE-AUTHOR: robert.manuszewski
#ROBOMERGE-SOURCE: CL 20314896 via CL 20314897 via CL 20314903 via CL 20314904
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20315214 by robert manuszewski in ue5-main branch]
2022-05-22 10:30:02 -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
aditya ravichandran
fd8c7427fe ClassViewerFilter: Make the class Display Name searchable
#jira UE-148980
#rb lauren.barnes
#preflight 626bfcca53253f874bcfed3d

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 20029032 via CL 20031505 via CL 20031560 via CL 20031594
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20035083 by aditya ravichandran in ue5-main branch]
2022-05-03 19:48:30 -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
tom noonan
c9db409d04 Repopulating ClassViewer cache when scripts have finished compiling in the editor
[REVIEW] [at]dave.belanger, [at]markus.breyer, [at]tim.tillotson
#preflight 6238534fec68595f3b765664

#ROBOMERGE-AUTHOR: tom.noonan
#ROBOMERGE-SOURCE: CL 19450408 via CL 19451892 via CL 19453489 via CL 19456017 via CL 19456412
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v933-19451510)

[CL 19461500 by tom noonan in ue5-main branch]
2022-03-21 20:11:48 -04:00
jason stasik
6ea7870869 Refresh ClassViewers when global filter changes
#rb dave.belanger
#preflight 62168c46476ef5d8a2080bb2

#ROBOMERGE-AUTHOR: jason.stasik
#ROBOMERGE-SOURCE: CL 19100950 via CL 19107952 via CL 19107988 via CL 19108043 via CL 19110201
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19151626 by jason stasik in ue5-main branch]
2022-02-25 13:29:24 -05:00
ben hoffman
f65413b333 Remove an ensure that was in place to track down where REINST classes were being placed into the class viewer. The reason has been found and we know how to fix it so the ensure can be removed.
#jira UE-129601
#rb marc.audy
#preflight 6202e4db7e40979d33ba3bf5
#lockdown julien.marchand

#ROBOMERGE-AUTHOR: ben.hoffman
#ROBOMERGE-SOURCE: CL 18911492 in //UE5/Release-5.0/... via CL 18919343 via CL 18920536
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)

[CL 18920778 by ben hoffman in ue5-main branch]
2022-02-09 12:52:53 -05:00
dave belanger
2fd1a2b44e Fixes to properly show cooked blueprints in the class viewer
#rb Matt.Peters,Phillip.Kavan
#preflight 61f1775df8088a3d298ca305

#ROBOMERGE-AUTHOR: dave.belanger
#ROBOMERGE-SOURCE: CL 18742703 via CL 18744252 via CL 18744418 via CL 18744598 via CL 18745697 via CL 18746283
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18746508 by dave belanger in ue5-main branch]
2022-01-26 17:31:19 -05:00
ben hoffman
9752bef15c Prevent REINST classes from being allowed in a class viewer. This bug does not happen consistently, so I've added an ensure to hopefully track down how it is happening.
#jira UE-129601
#rb trivial
#rnx
#preflight 61eb3408e4313f36f02ce8cf

#ROBOMERGE-AUTHOR: ben.hoffman
#ROBOMERGE-SOURCE: CL 18699800 in //UE5/Release-5.0/... via CL 18699814 via CL 18699830
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v903-18687472)

[CL 18699845 by ben hoffman in ue5-main branch]
2022-01-21 19:00:39 -05:00
phillip kavan
4266aae5f3 Add non-imported class type filtering to the "Add Component" type selection UI in the Blueprint editor.
Additionally auto-import any namespace associated with the selected component class type when a new component is added.

Change summary:
- Modified the component type registry to internally create/store unloaded BP data to assist with unloaded BP component type filtering.
- Added FEditorClassUtils::GetImplementedInterfaceClassPathsFromAsset() to move BP interface asset tag processing into a shared utility API.
- Modified SComponentClassCombo to work with IClassViewFilter-style filtering and added a filter options menu (currently only visible when namespace filtering features are enabled via CVar).
- A few minor modifications/additions to SSubobjectEditor/SSubobjectBlueprintEditor to assist with interfacing with the owning FBlueprintEditor context for filtering, updating etc.

#jira UE-133294
#rb Ben.Hoffman
#preflight 61b7c0601a4451f7ba1d0c46

#ROBOMERGE-AUTHOR: phillip.kavan
#ROBOMERGE-SOURCE: CL 18449755 in //UE5/Release-5.0/... via CL 18449768
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v897-18405271)

[CL 18449772 by phillip kavan in ue5-release-engine-test branch]
2021-12-13 17:39:02 -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
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
matt peters
8b7bda67fe #jira UE-121508
FClassHierarchy::PopulateClassHierarcy: Refactor for robustness.
Instead of creating a tree for classes-from-blueprint and a tree for classes-from-loaded-UClass, create a single map from ClassPathName to node, and populate the data-from-blueprint and data-from-loaded-Uclass on the same node, and then create a tree from that map.
#rb JeanFrancois.Dube
#rnx

#ROBOMERGE-SOURCE: CL 17261364 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v855-17104924)

[CL 17262941 by matt peters in ue5-release-engine-test branch]
2021-08-22 22:12:31 -04:00
helge mathee
50ba7cd2cc SClassViewer: Skip hidden classes
Opening the class viewer widget was causing a crash for hidden classes created by Control Rig.

#rb audit
#jira na
[FYI] lauren.barnes

#ROBOMERGE-SOURCE: CL 17029201 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v845-17028103)

[CL 17029202 by helge mathee in ue5-release-engine-test branch]
2021-08-03 08:52:59 -04:00