Commit Graph

32 Commits

Author SHA1 Message Date
Jamie Dale
b36a494aeb Added support for nested collections
UETOOL-332 - Collections 2.0
UETOOL-369 - Want nested collections with collapsing

We now have version 2 collections which maintain a persistent GUID for each collection. Existing collections will be lazily updated to this version when they need to be re-saved.

This GUID is used by child collections to keep track their parents, and the collections view (as well as the quick asset management) now show a tree of collections. Collections in the main collection view tree can be re-parented via drag and drop.

Performing Content Browser searches against a given collection will also test to see if an object exists in child collections, and the asset view will now show you folder entries for child collections when viewing a parent (if folders are enabled in your Content Browser view settings).

[CL 2593321 by Jamie Dale in Main branch]
2015-06-19 07:33:02 -04:00
Jamie Dale
44ba3d1815 Fixed some issues using collections with SVN or Git as your SCC provider
UE-17109 - Collections cannot be created when using SVN as your SCC provider

The collection was trying to add itself to source control before the file had been created. Perforce allows this, but SVN and Git do not.

Additionally, SVN was trying to recursively commit any added parent folders when committing a file within those folders (required to avoid the commit operation failing), however that was failing to get the current SVN status of anything but the most immediate parent folder, causing the recusive check to fail.

[CL 2588523 by Jamie Dale in Main branch]
2015-06-16 09:25:36 -04:00
Jamie Dale
a7d4db758a Collections code clean up
UETOOL-332 - Collections 2.0

Removed some duplicated data from FCollection (AssetList and AssetSet) as they had to be manually kept in sync. Only AssetSet exists now, and is converted into an array and sorted before being written to disk (to keep the order consistent for diffing). DiskAssetList has also been converted into a set (now DiskAssetSet) as this is only ever used for lookup queries.

All manually memory management has been removed from FCollectionManager, and the array of maps to collections has been converted into a single map using FCollectionNameType as its key. This simplifies collection lookup code in most cases, and removes the need to manually track the total number of collections outside of the map (NumCollections has now been removed).

Renamed ICollectionManager::GetCollectionsContainingAsset to ICollectionManager::GetCollectionsContainingObject as the function checks for any objects, not just assets.

Renamed FCollection::IsAssetInCollection to FCollection::IsObjectInCollection as the function checks for any objects, not just assets.

Made ICollectionManager::IsCollectionEmpty const.

Replaced all appropriate loop usage with range-based-for, and replaced any NULL with nullptr.

[CL 2560621 by Jamie Dale in Main branch]
2015-05-21 07:43:16 -04:00
Saul Abreu
79a26091bf Fixed behavior on FString::ParseIntoArray (muliple delimiters overload) functionality to support optionally culling empty strings. Greatly simplified implementation logic. Output parameter now properly named and taken by reference.
#codereview Steve.Robb, Robert.Manuszewski

[CL 2466824 by Saul Abreu in Main branch]
2015-03-02 15:51:37 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Thomas Sarkanen
a5274d1b18 #summary Fixed up issues found when creating a new source control provider.
#ttp 331349 	Editor: Source Control: Some issues with creating new source control provider
#change 	Fixed up conflation of enum with bool in if() blocks when calling Execute().
#fix 	Fixed QueueStatusUpdate not checking for NULL source control state.
reviewed by 	Andrew.Brown

[CL 2049714 by Thomas Sarkanen in Main branch]
2014-04-23 19:31:56 -04:00
Tim Sweeney
324683ce78 Engine source (Main branch up to CL 2026164) 2014-03-14 14:13:41 -04:00