Commit Graph

148 Commits

Author SHA1 Message Date
nick darnell
e85b0cd48c AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions. IAssetTypeActions is woefully inadiquit now. It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class. We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset. We could introduce a replacement in the class, but that would just get inherited, causing other issues. So instead the parallel UObject based AssetDefinition now exists. In large part it will probably be very similar to the other one, but several things in it probably need to chnage. For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.
Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37

[CL 23083536 by nick darnell in ue5-main branch]
2022-11-10 13:13:41 -05:00
bob tellez
635e0d776e [Backout] - CL23068129 and 23069638
[FYI] Nick.Darnell
Original CL Desc
-----------------------------------------------------------------
AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions.  IAssetTypeActions is woefully inadiquit now.  It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class.  We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset.  We could introduce a replacement in the class, but that would just get inherited, causing other issues.  So instead the parallel UObject based AssetDefinition now exists.  In large part it will probably be very similar to the other one, but several things in it probably need to chnage.  For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.

Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37

[CL 23072024 by bob tellez in ue5-main branch]
2022-11-10 01:18:44 -05:00
nick darnell
fd6f4a29b1 AssetDefinition - This is the seed of a long term replacement of IAssetTypeActions. IAssetTypeActions is woefully inadiquit now. It puts a lot of functionality in one place, which wouldn't be a terrible thing, except for the GetActions, and some of the menu stuff being built into this class. We need to make an effort to not have to load every single asset just to open the context menu you have selected, to-wit, a previous CL made it so that summoning the menu no longer *Had* to load the assets, however several remaining issues remained with the Blueprint Utility Actions, and the fact that we don't "KNOW" if we need to call GetActions for an asset. We could introduce a replacement in the class, but that would just get inherited, causing other issues. So instead the parallel UObject based AssetDefinition now exists. In large part it will probably be very similar to the other one, but several things in it probably need to chnage. For now there is a bridging concept in the form of the AssetDefinitionAssetTypeProxy.
Several amounts of effort went into the newer design of UAssetDefinition to make it easier to change over time, more things are structs now for input and output so additional parameters can be added.

AssetDefinition module is an editor module instead of being a developer module.
AssetDefinition does not include a myraid of things it shouldn't such as the blueprint module and UnrealEd.

#jira UE-165574
#preflight 636c0ec4d0174259cca85e37
[REVIEW]

[CL 23072002 by nick darnell in ue5-main branch]
2022-11-10 01:17:07 -05:00
nick darnell
e90951a442 Editor - Blutility - AssetActionUtilities and ActorActionUtilties no longer load on right click in the Content Browser. Their information is now cached in tag data and we don't load them for real until we actually run the menu options. The GetSupportedClass() has been deprecated, there is now an array of classes you can provide in the Class Defaults. We will now exclude blutilities in developer folders that are not yours.
This is part 1 of a larger refactor to try and stop loading content on right click in the content browser.


#jira UE-165574

[CL 22865625 by nick darnell in ue5-main branch]
2022-10-31 12:40:48 -04:00
nick darnell
8b48634e45 Editor - Fixing a Context Menu regression. The old code did not in fact load everything always, there was a carveout for WP levels, to prevent them from loading by using AssetViewUtils::LoadAssetsIfNeeded, which prevented loading those assets in particular. So I've corrected the fallback code to no longer load everything before returning the selected assets they now return the results of AssetViewUtils::LoadAssetsIfNeeded as was previously the case. There are also now overloads for loading assets that take load tags on the context menu context.
[REVIEW] [at]Patrick.Enfedaque

[CL 22810706 by nick darnell in ue5-main branch]
2022-10-27 11:20:49 -04:00
dave belanger
e11f56ceb2 IContentBrowserSingleton delegate to control whether the public/private state can be changed on a given asset
#rb Scott.Nelson
#preflight 635899e4555771b141aab074

[CL 22803463 by dave belanger in ue5-main branch]
2022-10-26 23:17:13 -04:00
nick darnell
954d29b9f5 Editor - Beginning the process to no longer make loading all assets you right click in the content browser. The first step, is setting up the code to have a deprecation flag DEPRECATE_ASSET_TYPE_ACTIONS_NEEDING_LOADED_OBJECTS, this will make it illegal to implement GetActions on all AssetTypeAction implementations. Checked in disabled, enable it locally to begin trying to implement the recommended method detailed in the IAssetTypeActions header. WIP. One of the things this change does is outlaw (regardless of deprecation) the HasActions() function, this function is no longer used at all, and so we may as well remove its implementation, it also works well as a canary in finding other samples and things that need to be upgraded.
#jira UE-165574
[REVIEW] [at]Rex.Hill, [at]Lauren.Barnes
#preflight 63483c43ad0f7e2f20e44910

[CL 22534452 by nick darnell in ue5-main branch]
2022-10-14 16:59:41 -04:00
robert millar
e6857190f2 Updating collection manager interface to use FSoftObjectPath for the paths of assets and objects rather than FName.
#jira UE-161932
#rb julien.stjean
#preflight https://horde.devtools.epicgames.com/job/6324e773f258fccf98de78cf

[CL 22064625 by robert millar in ue5-main branch]
2022-09-16 20:57:34 -04:00
robert millar
5516f8d0d4 FNames containing asset paths are deprecated. FSoftObjectPath or FTopLevelAssetPath should be used instead.
Fixups for editor support classes for content browser code.

#jira UE-161932
#rb jason.stasik,jamie.dale
#preflight 631bd2a0d31788ea3ac03570

[CL 21935588 by robert millar in ue5-main branch]
2022-09-10 00:02:37 -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
scott nelson
e8f45f5813 AssetPrivatizeModel and Dialogue
#rb Lauren.Barnes, Brooke.Hubert, Julien.StJean
#preflight 6303b55ca45b007ea246007d

[CL 21511558 by scott nelson in ue5-main branch]
2022-08-23 12:52:04 -04:00
jamie dale
2b6fad0ae2 Treat generated class assets as immutable
#rb Rex.Hill, Jason.Stasik
#rnx

#ROBOMERGE-OWNER: jamie.dale
#ROBOMERGE-AUTHOR: jamie.dale
#ROBOMERGE-SOURCE: CL 20627582 via CL 20627615 via CL 20627698 via CL 20627704
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v955-20579017)

[CL 20636216 by jamie dale in ue5-main branch]
2022-06-13 18:36:10 -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
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
scott nelson
68b08f6fbe [VK] Update UX to toggle Public/Private asset state to use radio buttons
#rb Jason.Stasik
#preflight 625f0016d412434587ffc000

#ROBOMERGE-AUTHOR: scott.nelson
#ROBOMERGE-SOURCE: CL 19818081 via CL 19821452 via CL 19822253 via CL 19822529
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v940-19807014)

[CL 19827855 by scott nelson in ue5-main branch]
2022-04-20 08:20:21 -04:00
scott nelson
176e8c30df Fix issue with multi select in Content Browser when toggling Private Public state of an asset
- Added in bulk set Public set Private when more than one asset is selected in the Content Browser
- Additionally added in caching mechanism for selected file Public asset editability

#preflight 621fca28e15c51d8c50a90bf
#rb Rex.Hill

#ROBOMERGE-AUTHOR: scott.nelson
#ROBOMERGE-SOURCE: CL 19230234 via CL 19235956 via CL 19238861 via CL 19238938 via CL 19245822
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v924-19243027)

[CL 19247030 by scott nelson in ue5-main branch]
2022-03-03 13:14:36 -05:00
scott nelson
f0faa5fe67 [VK] Add Public Asset UX Phase 1
- Allows for toggling an individual Asset's Public/Private state in the Content Browser by adding/removing the flag PKG_NotExternallyReferenceable
- Content Browser Tooltips now show Asset states (Public, Private, Read Only)
- Includes CVar ContentBrowser_EnablePublicAssetFeatureCVar to hide UI until we reach MVP
#preflight 61fc3281af01d3caef1ee7bb
#rb Francis.Hurteau

#ROBOMERGE-AUTHOR: scott.nelson
#ROBOMERGE-SOURCE: CL 18853374 via CL 18855692 via CL 18855705 via CL 18855722 via CL 18857313 via CL 18857594
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)

[CL 18857607 by scott nelson in ue5-main branch]
2022-02-03 20:01:38 -05:00
aurel cordonnier
fc542f6cfd Merge from Release-Engine-Staging @ 18081189 to Release-Engine-Test
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971

[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
2021-11-07 23:43:01 -05:00
aurel cordonnier
a12d56ff31 Merge from Release-Engine-Staging @ 17791557 to Release-Engine-Test
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485

[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
2021-10-12 21:21:22 -04:00
aurel cordonnier
69fe095547 Merge from Release-Engine-Staging @ 17636544 to Release-Engine-Test
This represents UE4/Main @17638339 and Dev-PerfTest @17636504

[CL 17638842 by aurel cordonnier in ue5-release-engine-test branch]
2021-09-27 19:54:25 -04:00
Marc Audy
f02d489290 Update Release-Engine-Test from Release-Engine-Staging @ 16264272
[CL 16264458 by Marc Audy in ue5-release-engine-test branch]
2021-05-11 01:10:20 -04:00
UnrealBot
8afb476248 Branch snapshot for CL 16260158
[CL 16260158 in ue5-release-engine-staging branch]
2021-10-05 20:06:24 +00:00
geoff evans
0fad8a1a6d Batch up dispatch of files and folders to Explorer/Finder/File Manager into groups of 10
Unify ContentBrowser "Explore" / "Show in Explorer" logic across several user endpoints

#jira UETOOL-2325
#rb brandon.schaefer,francis.hurteau

[CL 14423933 by geoff evans in ue5-main branch]
2020-10-05 16:10:14 -04:00
Marc Audy
11f5b21210 Merging //UE5/Release-Engine-Staging @ 13752110 to Main (//UE5/Main)
#rnx

[CL 13753156 by Marc Audy in ue5-main branch]
2020-06-23 18:40:00 -04:00
Matt Kuhlenschmidt
ecc0ab19ed Removed bad namespace based enum forward declare which upsets clang.
To remove the enum property editors can now only create standalone mode property editor toolkits which is the only thing they supported anyway.

[CL 13546866 by Matt Kuhlenschmidt in ue5-main branch]
2020-05-26 12:33:34 -04:00