#jira UE-115383
#review-16367561 @lauren.barnes
FLayoutSaveRestore
- DuplicateConfig added to handle JSON files when loading an existing layout as well.
- MigrateConfig updated to handle JSON files.
- GetSectionFromConfig and SetSectionFromConfig now also handle JSON files.
#preflight 60a529417370d30001542482
[CL 16387468 by sebastian nordgren in ue5-main branch]
For now did not deprecate usage of AddMenuSeparator in menu builders due to the extreme number of fiiles this touches
[CODEREVIEW] rex.hill
#ROBOMERGE-SOURCE: CL 12669820 via CL 12669822 via CL 12669823
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)
[CL 12671630 by matt kuhlenschmidt in Main branch]
Avoid creating 300 empty keyboard bindings without description.
Thanks matt for the initial CL!
#rb none
[FYI] Chris.Gagnon, Matt.Kuhlenschmidt
#ROBOMERGE-SOURCE: CL 11583691 in //UE4/Release-4.25/... via CL 11583692
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)
[CL 11585524 by gines hidalgo in Main branch]
Bug fixed: Editor used to stall on Mac after key up, mouse up. Real issue: Every time a key is pressed on Mac, all menus are re-generated, making it very slow. Workaround: Disabled capability to know whether a UI layout was being currently selected to speed up the generation of the 3 layout menus.
#rb none
#lockdown cristina.riveron
#ROBOMERGE-SOURCE: CL 10983337 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v632-10940481)
[CL 10983339 by gines hidalgo in Main branch]
#rnx
#rb none
#ROBOMERGE-SOURCE: CL 10869241 via CL 10869527 via CL 10869904
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870586 by ryan durand in Main branch]
#jira UE-84627
Bug fixed: The "Save Layout As..." button (in "Window" --> "Save Layout" --> "Save Layout As...") was not localizing the text of the Layout Description field, only the one from the Layout Name field. It should localize both texts automatically. Fixed.
#rb jamie.dale
#lockdown cristina.riveron
#ROBOMERGE-SOURCE: CL 10291651 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v593-10286020)
[CL 10291653 by gines hidalgo in Main branch]
Bug fixed: The "Save Layout As..." button (in "Window" --> "Save Layout" --> "Save Layout As...") was not localizing the text of the Layout Description field, only the one from the Layout Name field. It should localize both texts automatically. Fixed.
#rb none
[CL 10289192 by Gines Hidalgo in Dev-Editor branch]
Bug fix: Close Asset Editors warning while loading layout had 2 identical options: No and Cancel. Removed the Cancel option to avoid the duplicated option.
#rb none
[CL 10125714 by Gines Hidalgo in Dev-Editor branch]
Fixing regression warning created by CL # 10110416
#rb none
#ROBOMERGE-SOURCE: CL 10114589 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v587-10111126)
[CL 10114597 by gines hidalgo in Main branch]
#jira UE-80859
Bug fixed: Loading an Editor Layout used to close all open sub-editors. Now, a new Dialog warning window is displayed if any sub-editor instance or PIE/SIE are opened when the user tries to load a new layout, asking whether he want to continue loading the layout (that would lead to automatically close+- those without saving them).
Note: Previously, all the load options were disabled while PIE was running. However, this could be confusing for the user, who might not know why they are disabled and not associate it with PIE being running (Although it was shown in the Load Layout tooltip, but people is not likely to read those...). Instead, this warning is merged with the one for the opened asset editors.
This is a quick fix is for 4.24, to avoid deep code changes. However, for later versions, the following tasks should be done as well:
- Investigate whether PIE or the sub-editor can be maintained opened, rather than closing them when a new layout is loaded.
#rb chris.gagnon
#ROBOMERGE-SOURCE: CL 10108290 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v586-10095595)
[CL 10108291 by gines hidalgo in Main branch]
Bug fixed: Loading an Editor Layout used to close all open sub-editors. Now, a new Dialog warning window is displayed if any sub-editor instance or PIE/SIE are opened when the user tries to load a new layout, asking whether he want to continue loading the layout (that would lead to automatically close+- those without saving them).
Note: Previously, all the load options were disabled while PIE was running. However, this could be confusing for the user, who might not know why they are disabled and not associate it with PIE being running (Although it was shown in the Load Layout tooltip, but people is not likely to read those...). Instead, this warning is merged with the one for the opened asset editors.
This is a quick fix is for 4.24, to avoid deep code changes. However, for later versions, the following tasks should be done as well:
- Investigate whether PIE or the sub-editor can be maintained opened, rather than closing them when a new layout is loaded.
#rb chris.gagnon
[CL 10108258 by Gines Hidalgo in Dev-Editor branch]
#jira UE-80569
#jira UE-80575
#jira UE-80577
New features (they are very related to each other, so they have been integrated together):
1) UE-80569: When the user attempts to save a custom layout, we open a Slate SWidget save dialog that no longer allows them to enter the file path where the layout will be saved, but instead the Layout Name and (optionally) Description. The file name will automatically be generated from the displayed layout name.
2) UE-80575: When attempting to save a custom layout, we prevent the OS save dialog. Since the user cannot actually save a layout anywhere other than the default save location, this streamlines the workflow and minimize confusion. Instead, the Slate SWidget detailed in point 1 is used, where the user can introduce only the displayed layout name, and the file name and its directory are automatically generated (fixed directory).
3) UE-80577: After 1 and 2, it is unclear where the layout is saved. Thus, when saving a custom layout, we provide an Editor toast notifying the user of their custom layout's save location. It is analog to the one provided when a user takes a screenshot within the Editor.
In addition, the possible messages displayed to the user when the layout file was not successfully copied have also been improved (higher details and fixed some grammar typos).
Some general and additional considerations about the new Slate layout save dialog:
1) The "Save" button will be disabled when the introduced file name is empty or an error occurs (e.g., name is too long). If any error occurs, the dialog will display the error message as well, analog to "File" --> "Save current as...".
2) An Override/Cancel dialog will be displayed if the user selects a file name that matches another existing one.
3) An automatic NSLOCTEXT key and namespace fields are generated for each profile created. This is abstracted from the user, who does not need to know about this. Translations come later from a LocRes file that we generate for the engine. Thus, only the profile files that we have included in P4 might be translated.
Some potential issues / observations:
1) The export layout remains with the old OS save dialog (as it can be saved in different directories). This makes the appearance of both of them very different, but it also makes export similar to import.
#rb rex.hill
#ROBOMERGE-SOURCE: CL 10089258 in //UE4/Release-4.24/...
#ROBOMERGE-BOT: RELEASE (Release-4.24 -> Main) (v574-10069753)
[CL 10089279 by gines hidalgo in Main branch]
#jira UE-80575
#jira UE-80577
New features (they are very related to each other, so they have been integrated together):
1) UE-80569: When the user attempts to save a custom layout, we open a Slate SWidget save dialog that no longer allows them to enter the file path where the layout will be saved, but instead the Layout Name and (optionally) Description. The file name will automatically be generated from the displayed layout name.
2) UE-80575: When attempting to save a custom layout, we prevent the OS save dialog. Since the user cannot actually save a layout anywhere other than the default save location, this streamlines the workflow and minimize confusion. Instead, the Slate SWidget detailed in point 1 is used, where the user can introduce only the displayed layout name, and the file name and its directory are automatically generated (fixed directory).
3) UE-80577: After 1 and 2, it is unclear where the layout is saved. Thus, when saving a custom layout, we provide an Editor toast notifying the user of their custom layout's save location. It is analog to the one provided when a user takes a screenshot within the Editor.
In addition, the possible messages displayed to the user when the layout file was not successfully copied have also been improved (higher details and fixed some grammar typos).
Some general and additional considerations about the new Slate layout save dialog:
1) The "Save" button will be disabled when the introduced file name is empty or an error occurs (e.g., name is too long). If any error occurs, the dialog will display the error message as well, analog to "File" --> "Save current as...".
2) An Override/Cancel dialog will be displayed if the user selects a file name that matches another existing one.
3) An automatic NSLOCTEXT key and namespace fields are generated for each profile created. This is abstracted from the user, who does not need to know about this. Translations come later from a LocRes file that we generate for the engine. Thus, only the profile files that we have included in P4 might be translated.
Some potential issues / observations:
1) The export layout remains with the old OS save dialog (as it can be saved in different directories). This makes the appearance of both of them very different, but it also makes export similar to import.
#rb rex.hill
[CL 10088684 by Gines Hidalgo in Dev-Editor branch]
#jira UE-80865
Made layout name and description dialog more clear by replacing the Yes/No/Cancel answers by Preserve Values / Clear Values / Cancel.
Also allow SCustomDialog to be used outside the UnrealEd module (by using UNREALED_API) and fixed some compiling errors on its commented example.
#rb rex.hill
[CL 9667288 by Gines Hidalgo in 4.24 branch]