UnityEditor.GraphicsSettingsWindow.TierSettingsEditor.OnGuiHorizontal C# (CSharp) Method

OnGuiHorizontal() private method

private OnGuiHorizontal ( BuildTargetGroup platform ) : void
platform BuildTargetGroup
return void
            internal void OnGuiHorizontal(BuildTargetGroup platform)
            {
                IEnumerator enumerator = Enum.GetValues(typeof(GraphicsTier)).GetEnumerator();
                try
                {
                    while (enumerator.MoveNext())
                    {
                        GraphicsTier current = (GraphicsTier) enumerator.Current;
                        bool flag = EditorGraphicsSettings.AreTierSettingsAutomatic(platform, current);
                        EditorGUI.BeginChangeCheck();
                        GUILayout.BeginHorizontal(new GUILayoutOption[0]);
                        EditorGUIUtility.labelWidth = 80f;
                        EditorGUILayout.LabelField(Styles.tierName[(int) current], EditorStyles.boldLabel, new GUILayoutOption[0]);
                        GUILayout.FlexibleSpace();
                        EditorGUIUtility.labelWidth = 75f;
                        flag = EditorGUILayout.Toggle(Styles.autoSettings, flag, new GUILayoutOption[0]);
                        GUILayout.EndHorizontal();
                        if (EditorGUI.EndChangeCheck())
                        {
                            EditorGraphicsSettings.RegisterUndoForGraphicsSettings();
                            EditorGraphicsSettings.MakeTierSettingsAutomatic(platform, current, flag);
                            EditorGraphicsSettings.OnUpdateTierSettingsImpl(platform, true);
                        }
                        using (new EditorGUI.DisabledScope(flag))
                        {
                            EditorGUI.indentLevel++;
                            EditorGUILayout.BeginHorizontal(new GUILayoutOption[0]);
                            EditorGUILayout.BeginVertical(new GUILayoutOption[0]);
                            EditorGUIUtility.labelWidth = 140f;
                            this.OnFieldLabelsGUI();
                            EditorGUILayout.EndVertical();
                            EditorGUILayout.BeginVertical(new GUILayoutOption[0]);
                            EditorGUIUtility.labelWidth = 50f;
                            this.OnTierGUI(platform, current);
                            EditorGUILayout.EndVertical();
                            GUILayout.EndHorizontal();
                            EditorGUI.indentLevel--;
                        }
                    }
                }
                finally
                {
                    IDisposable disposable = enumerator as IDisposable;
                    if (disposable != null)
                    {
                        disposable.Dispose();
                    }
                }
                EditorGUIUtility.labelWidth = 0f;
            }