Commit Graph

161 Commits

Author SHA1 Message Date
JeanFrancois Dube
ebba4df748 Scene Outliner: refactored actor pin API to be batched, so we can pin actors all at once instead of doing the operation one by one.
#rb patrick.enfedaque, richard.malo
#preflight 628faefee17a02240dd5dfe3
#rnx

[CL 20391677 by JeanFrancois Dube in ue5-main branch]
2022-05-27 07:18:07 -04:00
Richard Malo
223c790fef ActorFolder Improvements :
- Optimized FFolder resolving to UActorFolder : now uses and maintains an acceleration table
- Favor creation of FFolder using ActorFolderGuid when available
- FFolder creation now always passes a Root Object to facilitate Root Object ptr resolving (even when it's the main world)
- Fixed Duplicate Hierarchy when using Actor Folders and target level is different
- Fixed copy/paste actor from Persistent to LevelInstance not loosing actor folder
- Fixed mark for delete of an Actor Folder that could generate duplicates
- Modified fix of duplicate Actor Folders in a level : instead of renaming duplicates, mark for delete all duplicates except one and redirect children to the one we keep

#jira UE-150566
#rb patrick.enfedaque, jeanfrancois.dube
#preflight 6284101f486700b561a555ff

[CL 20346124 by Richard Malo in ue5-main branch]
2022-05-24 06:58:06 -04:00
aditya ravichandran
632ef3784e Outliner:
Port ActorBrowsingMode over to the new Editor Config system to have separate settings for each outliner
Enable Stacked Hierarchy Headers by default
Add the ability to disable framing selection
Add the ability to get the most recently used outliner from the level editor
Fix a bug where renaming an item on one outliner would sometimes execute the rename on a different outliner

#rb richard.malo
#jira UETOOL-5014
#preflight 627aa9811e74993343331221

[CL 20126651 by aditya ravichandran in ue5-main branch]
2022-05-10 14:20:42 -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
sebastian nordgren
8eafe4f70e Editor configs now correctly diff against the CDO when serializing.
Previously, I had assumed that FProperty::InitializeValue() would initialize a simple member (eg. a float) to the correct value, but this appears not to be the case, rather values are zero-initialized and the CDO stores the correct default values. In the case of structs, InitializeStruct() does in fact initialize correctly.

However, this means that we can't use GetMutableDefault() to get an instance of the UObject, since then we're changing what we're diffing against and serialize no values. Changed the usages of this pattern to use singletons instead.

#jira UE-141150
#review-19900014 @lauren.barnes, @aditya.ravichandran
#preflight 6267fa44a021c91a50f26a65

[CL 19919719 by sebastian nordgren in ue5-main branch]
2022-04-26 10:20:56 -04:00
aditya ravichandran
3983909f5f [Backout] - CL19078664
[FYI] aditya.ravichandran
Original CL Desc
-----------------------------------------------------------------
Outliner: Fix a crash caused by duplication of items in the outliner when you performed multiple operations on an item too quickly
#jira UE-141695
[FYI] Max.Chen
#rb Lauren.Barnes

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 19116144 via CL 19116247 via CL 19116252 via CL 19116260 via CL 19117369
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19153367 by aditya ravichandran in ue5-main branch]
2022-02-25 14:36:53 -05:00
aditya ravichandran
c3612973da Outliner: Fix a crash caused by duplication of items in the outliner when you performed multiple operations on an item too quickly
#jira UE-141695
[FYI] Max.Chen
#rb Lauren.Barnes

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 19078664 via CL 19078906 via CL 19088084 via CL 19088146 via CL 19089482
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v921-19075845)

[CL 19131499 by aditya ravichandran in ue5-main branch]
2022-02-24 19:04:04 -05:00
Richard Malo
970239c168 Data Layer picking mode now hides custom toolbar used by default Data Layer mode.
#rb patrick.enfedaque
#preflight 620ebcadc91bcd0017ab09bd

[CL 19048734 by Richard Malo in ue5-main branch]
2022-02-18 06:51:27 -05:00
vincent beauchemin
00965af9e8 Add feature to move actors from data layer(s) to another data layer in the Data Layers Outliner
* This is perform on Left Alt down.
* Mouse cursor is changed during the operation.
* SceneOutliner CreateDragDropOperation has now info on FPointerEvent.

#rb richard.malo
#preflight 620d2bb501253d2e19175c1c

[CL 19016197 by vincent beauchemin in ue5-main branch]
2022-02-16 11:58:08 -05:00
aditya ravichandran
fd9e968445 Add functionality to STreeView to display the hierarchy of items stacked at the top
Enable said functionality for the Outliner
#jira UE-132613
#rb Lauren.Barnes
#preflight 620bcd22483ff0ae5ebd2f86

[CL 18996953 by aditya ravichandran in ue5-main branch]
2022-02-15 11:19:12 -05:00
richard malo
eebc0ff2a8 Added a ColumnPermissionList to the scene outliner module.
#rb patrick.enfedaque
#preflight 620588a8057375a80298a2e8

#ROBOMERGE-AUTHOR: richard.malo
#ROBOMERGE-SOURCE: CL 18951521 via CL 18952157 via CL 18953008 via CL 18953265 via CL 18954870 via CL 18955375
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v917-18934589)

[CL 18958277 by richard malo in ue5-main branch]
2022-02-11 14:41:31 -05:00
roey borsteinas
04a45b0f72 SceneOutliner: Fixed an issue where, under certain circumstances, multiple child entries representing the same object could be added to a scene outliner tree item.
The child pointer would eventually lose refcounts and lead to a stale entry in the children set and cause a validity check to fail.

Additionally, move and remove will now access the existing item in the tree rather than directly using the passed tree item reference since these are sometimes temporary objects.

#rb patrick.enfedaque
#preflight 61f84ffd41414fb013da90ca

[CL 18797466 by roey borsteinas in ue5-main branch]
2022-01-31 16:24:31 -05:00
patrick enfedaque
ff36d54c11 SceneOutliner: refactor FindParent/CreateParentItem into one method (shared logic)
#rb richard.malo
#preflight 61dc4bd0c73b7e46b2944a5b

#ROBOMERGE-AUTHOR: patrick.enfedaque
#ROBOMERGE-SOURCE: CL 18559674 in //UE5/Release-5.0/... via CL 18559687
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18559703 by patrick enfedaque in ue5-release-engine-test branch]
2022-01-10 10:14:29 -05:00
richard malo
481f65fe16 New Actor Folders objects.
- When enabled, folders are actual objects : modifying a folder won't affect actors (more compliant with OFPA).
- Enabled by default for World Partition and Level Instances.
- Can be enabled on regular levels (experimental feature 'Use Actor Folder Objects').
- If Level uses OFPA, ActorFolders will also be saved in their own package (but will use __ExternalObjects__ root folder).
- In a future refactoring, external actors will also be moved in the same root folder.
- Generalized saving object in an external package (different from its outer package)
- World outliner supports old folders and new actor folder objects : Levels using the actor folder objects will show a root Level node (like Level Instances).
#rb patrick.enfedaque, jeanfrancois.dube
#preflight 61d84b356511bc498e5cb858

#ROBOMERGE-AUTHOR: richard.malo
#ROBOMERGE-SOURCE: CL 18543443 in //UE5/Release-5.0/... via CL 18543482
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)

[CL 18543525 by richard malo in ue5-release-engine-test branch]
2022-01-07 10:01:19 -05:00
richard malo
f51c7f1495 Added buttons to quick add/remove selected actors to/from DataLayers.
#jira UE-135851
#rb patrick.enfedaque
#preflight 61a023f3801b361978ecd850

#ROBOMERGE-AUTHOR: richard.malo
#ROBOMERGE-SOURCE: CL 18299248 in //UE5/Release-5.0/... via CL 18299254
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18299275 by richard malo in ue5-release-engine-test branch]
2021-11-26 07:07:00 -05:00
richard malo
41b81f0c91 Added support for Level Instances to have a folder hierarchy in the World Outliner. Actor Folders can now have a root object which serves as a context for folder hierarchy.
#jira UE-134605
#rb patrick.enfedaque
#preflight 619d3a42cb49ea94934aa11d

#ROBOMERGE-AUTHOR: richard.malo
#ROBOMERGE-SOURCE: CL 18273663 in //UE5/Release-5.0/... via CL 18273683
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)

[CL 18273700 by richard malo in ue5-release-engine-test branch]
2021-11-23 14:43:39 -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
aditya ravichandran
56dbea7198 Add Expand/Collapse all option to the Outliner Settings menu
#jira UE-132618
#rb lauren.barnes
#preflight 618c3446026d8c8fe924487e

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 18150331 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v889-18060218)

[CL 18150437 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-11 09:40:22 -05:00
aditya ravichandran
27e9f29ed2 Fix Static Analysis Error in Scene Outliner
#jira FORT-429393

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 18140010 in //UE5/Release-5.0/... via CL 18140028
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18140041 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-10 17:45:43 -05:00
aditya ravichandran
b898fb5380 Fix a bug in SceneOutliner that would sometimes cause all actors in the tree to be selected when you tried to select a filtered out search
#jira UE-132614

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-COMMAND: FNMain
#ROBOMERGE-SOURCE: CL 18130399 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Release-Engine-Staging Release-5.0
#ROBOMERGE[bot1]: Main

[CL 18130429 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-10 10:34:50 -05:00
aditya ravichandran
820377198c Outliner column visibility is now saved across sessions
#jira UE-127396
#rb sebastian.nordgren
#preflight 61896e87be21c713680f7b03

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 18105061 in //UE5/Release-5.0/... via CL 18106179
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18106231 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-09 10:56:37 -05:00
aditya ravichandran
fdd29041ed Change Log in Scene Outliner for non localized column names from Error to Info
#jira FORT-422693
#rb trivial

#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 18092671 in //UE5/Release-5.0/... via CL 18092746
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v889-18060218)
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18092772 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-08 16:06:38 -05:00
roey borsteinas
525b47f2ad SceneOutliner: fixed selection being reset when level change occured.
#jira UE-116799
#rb patrick.enfedaque

#ROBOMERGE-AUTHOR: roey.borsteinas
#ROBOMERGE-SOURCE: CL 18091411 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v889-18060218)

[CL 18091501 by roey borsteinas in ue5-release-engine-test branch]
2021-11-08 14:42:44 -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
aditya ravichandran
05c26766e8 Add localization support for Outliner column names
#rb lauren.barnes
#preflight 6182a9c7dd10170001fe78cd

#ROBOMERGE-OWNER: aditya.ravichandran
#ROBOMERGE-AUTHOR: aditya.ravichandran
#ROBOMERGE-SOURCE: CL 18035953 in //UE5/Release-5.0/... via CL 18035992
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v885-17909292)
#ROBOMERGE-CONFLICT from-shelf
#ROBOMERGE[STARSHIP]: UE5-Main

[CL 18036212 by aditya ravichandran in ue5-release-engine-test branch]
2021-11-03 12:57:29 -04:00