Make summaries and graphs collapsible. Summaries can start collapsed if specified in xml via the "collapsed" attribute.
Add a new HtmlSection helper class to assist with this.
We may later want to extend this functionality to add a top level hierarchy to the report, allowing us to have high level sections with multiple summaries in them.
[FYI] tyler.staples
[CL 30660748 by ben woodhouse in ue5-main branch]
Support is provided for Summary classes via XElement extension helper methods, which now take an optional XmlVariableMappings param which handles the variable resolving. GetAttribute, GetSafeAttribute and GetValue support this.
Non metadata variables are also supported in theory e.g ${MyVariable}, but support for populating these does not exist yet
Various cleanup/refactoring and fixups of old code
#tests Passes Test cases with identical results (if no changes to the XML)
[FYI] tyler.staples
[CL 29912786 by ben woodhouse in ue5-main branch]
Adds the following params:
-sortColumnsByDiff : sorts columns by the max of its diff scores (use with -addDiffRows)
Note: Diff score corresponds to the value of a column's diff row; the sign is reversed if LowIsBad
-columnDiffDisplayThreshold <value> : if specified, hides columns with max abs diff value below this threshold
Also: added some helpers to summary tables to find aggregate columns . Added a isCountColumn accessor to avoid string compares
[CL 25982885 by ben woodhouse in ue5-main branch]
+ Additional column filters can now be created by implementing ISummaryTableColumnFilter and adding it to the list in Program.MakeAdditionalColumnFilters.
+ Moved stat threshold checks into an additional filter.
+ Added a column filter to hide metadata columns.
+ Added a column filter to only show columns where the most recent build has regressed by more than a given threshold.
+ You can now use 'debugShowFilteredColumns' to have columns be grayed out instead of removed. Hovering over them will show the reason they were filtered out (which filter and the reason). This is for debugging purposes and sanity checks to make sure you're not missing important information, especially when iterating on new filters. Some additional settings were added to SummaryTableColumn to support this.
+ Filters can also mark individual cells as 'invalid' to indicate they are not taken into consideration for that filter. These are grayed out with a tooltip when debugShowFilteredColumns is enabled. Currently this does not work in collated views.
+ Added the ability to set tooltips for column headers.
+ Added the ability to add a color modifier for the entire column or individual cells.
#rb ben.woodhouse
[CL 22890943 by tyler staples in ue5-main branch]
This allows setting colourThresholds globally for an entire column, overriding other settings.
Also added support for specifiying the actual colours and if they should be lerped between or not.
Note: lerpColours isn't currently serialized to prc files.
#rb ben.woodhouse
[CL 22712141 by tyler staples in ue5-main branch]
This allows you to define a list of value thresholds for a column and the bucket names that correspond with each threshold. When present the corresponding bucket name will be displayed in the column instead of/with the value.
#rb ben.woodhouse
[CL 22670762 by tyler staples in ue5-main branch]
+ 'default' now only exists as an argument and not an actual state as default means use what is defined in the summary table xml file.
+ Removed the 'Default' TableColorizeMode value and added a 'Budget' value which represents budget coloring.
#rb ben.woodhouse
[CL 22662548 by tyler staples in ue5-main branch]
- Adding a diff row no longer disables colorization (unless colorizeMode is explicitly set to off)
- More formatting improvements for transposed tables
#ROBOMERGE-AUTHOR: ben.woodhouse
#ROBOMERGE-SOURCE: CL 21238557 via CL 21238558 via CL 21239577
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
[CL 21239660 by ben woodhouse in ue5-main branch]