185 lines
5.1 KiB
C#
185 lines
5.1 KiB
C#
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
using UnityEditor;
|
|
using System;
|
|
|
|
namespace UnityEditor.Performance.ProfileAnalyzer
|
|
{
|
|
internal class Columns
|
|
{
|
|
int[] m_ColumnWidth = new int[4];
|
|
|
|
public Columns(int a, int b, int c, int d)
|
|
{
|
|
SetColumnSizes(a, b, c, d);
|
|
}
|
|
|
|
public void SetColumnSizes(int a, int b, int c, int d)
|
|
{
|
|
m_ColumnWidth[0] = a;
|
|
m_ColumnWidth[1] = b;
|
|
m_ColumnWidth[2] = c;
|
|
m_ColumnWidth[3] = d;
|
|
}
|
|
|
|
public int GetColumnWidth(int n)
|
|
{
|
|
if (n < 0 || n >= m_ColumnWidth.Length)
|
|
return 0;
|
|
|
|
return m_ColumnWidth[n];
|
|
}
|
|
|
|
public void Draw(int n, string col)
|
|
{
|
|
if (n < 0 || n >= m_ColumnWidth.Length || m_ColumnWidth[n] <= 0)
|
|
EditorGUILayout.LabelField(col);
|
|
|
|
EditorGUILayout.LabelField(col, GUILayout.Width(m_ColumnWidth[n]));
|
|
}
|
|
|
|
public void Draw(int n, float value)
|
|
{
|
|
Draw(n, string.Format("{0:f2}", value));
|
|
}
|
|
|
|
public void Draw2(string col1, string col2)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw2(string label, float value)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, label);
|
|
Draw(1, value);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw3(string col1, string col2, string col3)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
Draw(2, col3);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw3(string col1, float value2, float value3)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, value2);
|
|
Draw(2, value3);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4(string col1, string col2, string col3, string col4)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
Draw(2, col3);
|
|
Draw(3, col4);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4Diff(string col1, float left, float right)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, left);
|
|
Draw(2, right);
|
|
Draw(3, right - left);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4(string col1, float value2, float value3, float value4)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, value2);
|
|
Draw(2, value3);
|
|
Draw(3, value4);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
// GUIContent versions
|
|
public void Draw(int n, GUIContent col)
|
|
{
|
|
if (n < 0 || n >= m_ColumnWidth.Length || m_ColumnWidth[n] <= 0)
|
|
EditorGUILayout.LabelField(col);
|
|
|
|
EditorGUILayout.LabelField(col, GUILayout.Width(m_ColumnWidth[n]));
|
|
}
|
|
|
|
public void Draw2(GUIContent col1, GUIContent col2)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw2(GUIContent label, float value)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, label);
|
|
Draw(1, value);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw3(GUIContent col1, GUIContent col2, GUIContent col3)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
Draw(2, col3);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw3(GUIContent col1, float value2, float value3)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, value2);
|
|
Draw(2, value3);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4(GUIContent col1, GUIContent col2, GUIContent col3, GUIContent col4)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, col2);
|
|
Draw(2, col3);
|
|
Draw(3, col4);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4Diff(GUIContent col1, float left, float right)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, left);
|
|
Draw(2, right);
|
|
Draw(3, right - left);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
|
|
public void Draw4(GUIContent col1, float value2, float value3, float value4)
|
|
{
|
|
EditorGUILayout.BeginHorizontal();
|
|
Draw(0, col1);
|
|
Draw(1, value2);
|
|
Draw(2, value3);
|
|
Draw(3, value4);
|
|
EditorGUILayout.EndHorizontal();
|
|
}
|
|
}
|
|
}
|