- Removed conversion/creation of temporary strings when sorting.
- Removed several branching operations.
- Used Stricmp rather than operator<() as it tells if the string is <> or == in a single operation.
- Sorted the 'Last Modified' column using FDateTime rather that the FText/FString.
- Mesured before/after the change with Insight, in average, the sorting 15 now times faster. (avg 2.4 ms for 7600 items).
- Do not sort by default, waited until the user decide to sort to enable the feature.
#rb Patrick.Enfedaque
#jira UE-139957 - Changelists window refreshes excessively (Partially adressing this issue).
#preflight 63500e398176062ea7e3f6ed
[CL 22635606 by patrick laflamme in ue5-main branch]
Optimized Collection code invoked at each source control update to avoid comparing large set to detect if the in-memory collection is different from the collection on disk.
#rb Julien.StJean
#preflight 6346e2cf663dafe4162e8c9e
[CL 22505265 by patrick laflamme in ue5-main branch]
- Deleted files will show up in the Uncontrolled Changelists when a Source Control provider is selected
- Deleted files won't show up if SCC is disabled but will still be tracked in case SCC is renabled
#jira UE-164493
#rb luc.eygasier
#preflight 633af0bcba39998ce83121b4
[CL 22322389 by patrick enfedaque in ue5-main branch]
- Implemented the UnsavedAssetTrackers plugin and enabled it by default.
- Added the 'Unsaved' button to the Editor taskbars to display the number of unsaved packages along with a warning icon if warning are associated with one of the unsaved files.
- Updated the 'Save Content' package to display warnings if one of the packages has warnings.
- Added a class to monitor and periodically update the source controlled status of a collection of files/packages.
- Changed the default value of PromptForCheckoutOnAssetModification settings to False because the Unsaved button flow is complementary (and the popup was noisy for OFPA users).
- Updated the changelist window to use the soure control file status monitor.
#jira UE-163734 - Implement the 'Unsaved' Editor Taskbar Button
#rb Patrick.Enfedaque
#preflight 633ae915b12b8af5fde80f7c
[CL 22322224 by patrick laflamme in ue5-main branch]
- Use same code to retrieve asset display information then FFileTreeItem
#rb patrick.laflamme
#preflight 6336cec7e72271755f0e7bea
[CL 22272707 by patrick enfedaque in ue5-main branch]
#rb wouter.burgers, patrick.laflamme
#preflight 63301d3d665f6b8f7fab0066
RESOLUTION: Resolved conflict with IsAtLatestRevision() and GetNumLocalChanges()
[CL 22193646 by marco anastasi in ue5-main branch]
- Implemented sorting and searching for the new columns.
- Added a FUpdateStatus request to the source control provider when the user selects a changelist. This gets the users that checked out the files along with extra file status.
Added support to enable/disable changelist window columns for 'Type', 'Last Saved' and 'User' columns and persisted the settings.
Added tooltips over the changelist row that display the content of a column. Useful when the value is clipped because the column is too small.
Added tooltips over the changelist row header.
Prevented creation of useless temporary strings in PerforceSourceControlOperations.cpp
#rb Patrick.Enfedaque
#preflight 6323613367163bf6600d4fc6
[CL 22040806 by patrick laflamme in ue5-main branch]
- The P4 default changelist cannot be saved, so a new changelist is created and all the files in the default changelist are moved in the new CL.
#rb Patrick.Enfedaque
#preflight 631f34f98c5f7af11bc3464b
[CL 21973981 by patrick laflamme in ue5-main branch]
Changed the color of the uncontrolled changelist from gray to orange
Added an icon in the to the file status column header.
#jira UE-155216 - Make the selected changelist view (list of files in a CL) searchable.
#jira UE-155213 - Make the list of changelists searchable.
#rb Patrick.Enfedaque
#preflight 631b8c332b7fe03eb601ec03
[CL 21973932 by patrick laflamme in ue5-main branch]
- In the 'Submit' window, renamed the 'Apply' button to 'Save' button.
- If the user saves with the 'default' changelist, a new changelist is created with the user description and files are moved into that changelist.
- If the user saves with any other changelist, ony the description is edited.
#rb Luc.Eygasier
#preflight 631a13a2304480f8f85aba2c
[CL 21909342 by patrick laflamme in ue5-main branch]
- Moved all source control table row widgets found in SSourceControlChangelists.cpp into a separated files SSourceControlChangelistRows.h/.cpp
- Moved content SFileTableRow.h into SSourceControlChangelistRows.h/.cpp and deleted the file.
- Created column Id constants for the changelist files "Icon", "Name", "Path", "Type" rather than using hardcoded string.
- Moved functions shared by the SSourceCOntrolChangeslists.cpp and SSourceControlChangelistRows.cpp into SSourceControlCommon.h/.cpp.
#rb Luc.Eygasier
#preflight 6317ab57f448dc6e583f2132
[CL 21862849 by patrick laflamme in ue5-main branch]