32 Commits

Author SHA1 Message Date
logan buchy
b7bd751d59 Update workflows for when not using Collection Setting AutoCommitOnSave
* Only AddToCollection, RemoveFromCollection, SetColor and Reparent will not commit to perforce server if setting is off
* Creating collections notably must commit otherwise it will not be added to a source control working set
* Tunnelled the behaviour of submitting to SCC through the Internal helper function as it does not have the context to decide what workflow is running.

#rb brooke.hubert, robert.millar

[CL 32496181 by logan buchy in 5.4 branch]
2024-03-26 00:30:18 -04:00
rex hill
9c1763e44b Optimize collection manager by allowing batch remove
#rb logan.buchy

[CL 30930698 by rex hill in 5.4 branch]
2024-01-26 13:01:58 -05: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
bryan sefcik
a3dddc6630 Pass 1 on Developer 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 631e281694758d0bf2ea1399

[CL 21960082 by bryan sefcik in ue5-main branch]
2022-09-11 18:32:18 -04:00
bob tellez
3c018f315a #UE Add commandline option to avoid following redirectors in collections during startup. You sometimes want to make collections of redirectors when audting content
#ROBOMERGE-AUTHOR: bob.tellez
#ROBOMERGE-SOURCE: CL 18327503 via CL 18327514 via CL 18327529 via CL 18328464 via CL 18328574
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18328663 by bob tellez in ue5-release-engine-test branch]
2021-11-30 14:20:47 -05:00
dan phillips
c4168d9c60 Added missing includes and forward declarations
Supplied by David.Bollo of The Coalition.
Fixes some non unity compile errors

[FYI] David.Bollo
#jira none

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

[CL 17206608 by dan phillips in ue5-release-engine-test branch]
2021-08-17 17:47:10 -04:00
andriy tylychko
6bf3101dcd deprecated FTicker and family and replaced by thread-safe FTSTicker
#jira UE-120090
#rb francis.hurteau


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

[CL 17176374 by andriy tylychko in ue5-release-engine-test branch]
2021-08-16 11:09:22 -04:00
ryan durand
471d972e62 Updating copyright for Engine Developer.
#rnx
#rb none


#ROBOMERGE-SOURCE: CL 10869240 via CL 10869516 via CL 10869902
#ROBOMERGE-BOT: (v613-10869866)

[CL 10870584 by ryan durand in Main branch]
2019-12-26 15:32:37 -05: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
Chris Gagnon
8fc25ea18e Merging //UE4/Dev-Main to Dev-Editor (//UE4/Dev-Editor)
#rb none

[CL 4676797 by Chris Gagnon in Dev-Editor branch]
2019-01-02 14:54:39 -05:00
Chris Gagnon
ee128848b8 Added control over the collection paths in the asset tooltips.
Also Added wrapping for cases where an asset is in many collections.

#jira UE-65692
#rb Lauren.Ridge

[CL 4504474 by Chris Gagnon in Dev-Editor branch]
2018-10-24 17:22:01 -04:00
Marc Audy
af90b7bcd4 Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main) @ 4395008
#rb
#rnx
#lockdown Nick.Penwarden

[CL 4395058 by Marc Audy in Main branch]
2018-09-25 10:11:35 -04:00
Ben Marsh
13d012685f Merging copyright update from 4.19 branch.
#rb none
#rnx
#jira

[CL 3818977 by Ben Marsh in Staging-4.19 branch]
2018-01-02 15:30:26 -05:00
Ben Marsh
20bf0eb6a1 Updating copyright notices to 2017 (copying from //Tasks/UE4/Dev-Copyright-2017).
#rb none
#lockdown Nick.Penwarden

[CL 3226823 by Ben Marsh in Main branch]
2016-12-08 08:52:44 -05:00
Ben Marsh
4ba423868f Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3209340)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 3209340 on 2016/11/23 by Ben.Marsh

	Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.

	Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.

	  * Every header now includes everything it needs to compile.
	        * There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
	        * There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
	  * Every .cpp file includes its matching .h file first.
	        * This helps validate that each header is including everything it needs to compile.
	  * No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
	        * You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
	        * There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
	  * No engine code explicitly includes a precompiled header any more.
	        * We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
	        * PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.

	Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.

[CL 3209342 by Ben Marsh in Main branch]
2016-11-23 15:48:37 -05:00
Matthew Griffin
bb70b349ce Merging CL 2804086 from //UE4/Release-4.11 to Dev-Main (//UE4/Dev-Main) to isolate copyright update
#lockdown Nick.Penwarden

[CL 2819020 by Matthew Griffin in Main branch]
2016-01-07 08:17:16 -05:00
Andrew Grant
9abcacfd1b Merging Engine code from Orion at CL2744789 through //depot/UE4-To-//UE4/Main
[CL 2745726 by Andrew Grant in Main branch]
2015-10-28 19:18:20 -04:00
Jamie Dale
90630176ef Dynamic collections can now be referenced in the Content Browser text filters
UETOOL-332 - Collections 2.0
UETOOL-401 - Add support for dynamic collections

You can now reference both static and dynamic collections in the Content Browser text filter, including recursive references (the evaluator guards against cyclic collection references).

The text filter now recursively gathers up any dynamic collection references when the filter text is changed. These are then tested depth first as sub-expressions against each object, to see whether the object is "contained" within the given dynamic collection.

[CL 2615416 by Jamie Dale in Main branch]
2015-07-09 14:24:02 -04:00
Jamie Dale
0dfe00d0fc Added support for dynamic collections
UETOOL-332 - Collections 2.0
UETOOL-401 - Add support for dynamic collections

These collections can be created from a text search in the Content Browser, and allow you to store a search query so it can be reused or shared.

They have some limitations compared to static collections:
- As they never know what objects they actually contain, they can't be displayed in the "Collections" list in asset tooltips.
- They cannot contain child collections.

[CL 2615029 by Jamie Dale in Main branch]
2015-07-09 09:59:51 -04:00
Jamie Dale
85fb8fe67f Added file watchers to detect when collections are changed outside of the collection manager
UE-17782 - Editor must be restarted for New Collections to appear after syncing

These use FFileCache to avoid detecting changes that are made by the collection manager itself.

This also fixes some issues when merging collection sets together, and fixes some places where UI wouldn't update when a collection was changed due to an update or merge.

[CL 2612319 by Jamie Dale in Main branch]
2015-07-07 10:31:39 -04:00
Jamie Dale
ab2cdf3e8d Made the collection manager caching lazy
This used to maintain an up-to-date cache as soon as a change happened. This lead to extra complexity in some cases, and often would keep caches up-to-date that weren't currently even being used.

Adding, removing, or updating a collection will now just mark the relevant parts of the cache as dirty so that they can be updated (using a well defined, safe, full update) the next time something requests them.

[CL 2610959 by Jamie Dale in Main branch]
2015-07-06 09:40:48 -04:00
Jamie Dale
4db4811f22 Added status information to collections
This shows a little colored pip to the right of the collection items, where each color means:
  Grey   - Up-to-date and empty
  Green  - Up-to-date and not empty
  Blue   - Has local changes
  Orange - Not at the latest revision
  Red    - Checked out by another user, in a conflicted state, or missing its source control provider

This also adds an "Update" and "Save" option to the collections context menu. Typically these won't be needed as collections mostly manage themselves, but since we now show when a collection is out-of-date or dirty, it makes sense to allow the user to take action to correct these states without having to leave the editor.

[CL 2610477 by Jamie Dale in Main branch]
2015-07-03 13:54:34 -04:00
Jamie Dale
cfd8ea19ed Added stricter validation for collection names
UE-17561 - Collections allow for several special characters that are not normally allowed
UE-17549 - User gets no warning for invalid Characters when naming a Collection
UE-17538 - Add a Character limit for naming a collection

The list of valid characters now matches that of assets and folders in the Content Browser, and the user is informed when they try and use an invalid character.

The collection name is also now restricted to NAME_SIZE to avoid a crash if a user entered a name that was too long.

[CL 2609261 by Jamie Dale in Main branch]
2015-07-02 12:20:22 -04:00
Jamie Dale
8d23fe9db1 Added support for navigating collections using the path breadcumbs in the Content Browser
UE-17646 - Collections don't display bread crumb path when nested

[CL 2607575 by Jamie Dale in Main branch]
2015-07-01 11:36:19 -04:00
Jamie Dale
8e1264a232 Made collections robust against moving or renaming assets and classes
UETOOL-332 - Collections 2.0
UETOOL-373 - Check robustness of Collections 2.0

The collection manager will now fix-up any references to redirectors within its collections once the asset registry has finished discovering all the available assets. It also adds a watcher so it can pick up any moves or deletes as they happen.

All of this fix-up is applied to the in-memory copy of the collection, and doesn't get persisted to disk until it needs to be (because referenced redirectors are being deleted). This helps to minimize issues with source control availability and shared/private collections.

This change also makes sure that objects that are being referenced by a collection will leave a redirector behind, and also adds some extra context (such as the collection name) to some of the source control errors that may be reported when saving a collection.

[CL 2602519 by Jamie Dale in Main branch]
2015-06-26 13:13:02 -04:00