public static MultiColumnHeaderState CreateDefaultMultiColumnHeaderState(ProfilerFrameDataMultiColumnHeader.Column[] columns, int defaultSortColumn)
        {
            var headerColumns = new MultiColumnHeaderState.Column[columns.Length];

            for (var i = 0; i < columns.Length; ++i)
            {
                var width                 = 80;
                var minWidth              = 50;
                var maxWidth              = 1000000f;
                var autoResize            = false;
                var allowToggleVisibility = true;
                switch (columns[i].profilerColumn)
                {
                case HierarchyFrameDataView.columnName:
                    width                 = 200;
                    minWidth              = 200;
                    autoResize            = true;
                    allowToggleVisibility = false;
                    break;

                case HierarchyFrameDataView.columnWarningCount:
                    width    = 25;
                    minWidth = 25;
                    maxWidth = 25;
                    break;
                }

                var headerColumn = new MultiColumnHeaderState.Column
                {
                    headerContent         = columns[i].headerLabel,
                    headerTextAlignment   = TextAlignment.Left,
                    sortingArrowAlignment = TextAlignment.Right,
                    width                 = width,
                    minWidth              = minWidth,
                    maxWidth              = maxWidth,
                    autoResize            = autoResize,
                    allowToggleVisibility = allowToggleVisibility,
                    sortedAscending       = i == 0
                };
                headerColumns[i] = headerColumn;
            }

            var state = new MultiColumnHeaderState(headerColumns)
            {
                sortedColumnIndex = ProfilerFrameDataMultiColumnHeader.GetMultiColumnHeaderIndex(columns, defaultSortColumn),
            };

            return(state);
        }
Exemple #2
0
 public static MultiColumnHeaderState CreateDefaultMultiColumnHeaderState(ProfilerFrameDataMultiColumnHeader.Column[] columns, ProfilerColumn defaultSortColumn)
 {
     MultiColumnHeaderState.Column[] array = new MultiColumnHeaderState.Column[columns.Length];
     for (int i = 0; i < columns.Length; i++)
     {
         int            num                   = 80;
         int            num2                  = 50;
         float          maxWidth              = 1000000f;
         bool           autoResize            = false;
         bool           allowToggleVisibility = true;
         ProfilerColumn profilerColumn        = columns[i].profilerColumn;
         if (profilerColumn != ProfilerColumn.FunctionName)
         {
             if (profilerColumn == ProfilerColumn.WarningCount)
             {
                 num      = 25;
                 num2     = 25;
                 maxWidth = 25f;
             }
         }
         else
         {
             num                   = 200;
             num2                  = 200;
             autoResize            = true;
             allowToggleVisibility = false;
         }
         MultiColumnHeaderState.Column column = new MultiColumnHeaderState.Column
         {
             headerContent         = columns[i].headerLabel,
             headerTextAlignment   = TextAlignment.Left,
             sortingArrowAlignment = TextAlignment.Right,
             width                 = (float)num,
             minWidth              = (float)num2,
             maxWidth              = maxWidth,
             autoResize            = autoResize,
             allowToggleVisibility = allowToggleVisibility,
             sortedAscending       = (i == 0)
         };
         array[i] = column;
     }
     return(new MultiColumnHeaderState(array)
     {
         sortedColumnIndex = ProfilerFrameDataMultiColumnHeader.GetMultiColumnHeaderIndex(columns, defaultSortColumn)
     });
 }