UnityEditor.ProceduralMaterialInspector.TextureSizeGUI C# (CSharp) Method

TextureSizeGUI() protected method

protected TextureSizeGUI ( ) : void
return void
        protected void TextureSizeGUI()
        {
            int num = EditorGUILayout.BeginPlatformGrouping(BuildPlayerWindow.GetValidPlatforms().ToArray(), this.m_Styles.defaultPlatform);
            ProceduralPlatformSetting setting = this.m_PlatformSettings[num + 1];
            ProceduralPlatformSetting setting2 = setting;
            bool flag = true;
            if (setting.name != "")
            {
                EditorGUI.BeginChangeCheck();
                flag = GUILayout.Toggle(setting.overridden, "Override for " + setting.name, new GUILayoutOption[0]);
                if (EditorGUI.EndChangeCheck())
                {
                    if (flag)
                    {
                        setting.SetOverride(this.m_PlatformSettings[0]);
                    }
                    else
                    {
                        setting.ClearOverride(this.m_PlatformSettings[0]);
                    }
                }
            }
            using (new EditorGUI.DisabledScope(!flag))
            {
                if (!this.m_AllowTextureSizeModification)
                {
                    GUILayout.Label("This ProceduralMaterial was published with a fixed size.", EditorStyles.wordWrappedLabel, new GUILayoutOption[0]);
                }
                using (new EditorGUI.DisabledScope(!this.m_AllowTextureSizeModification))
                {
                    EditorGUI.BeginChangeCheck();
                    setting2.maxTextureWidth = EditorGUILayout.IntPopup(this.m_Styles.targetWidth.text, setting2.maxTextureWidth, kMaxTextureSizeStrings, kMaxTextureSizeValues, new GUILayoutOption[0]);
                    setting2.maxTextureHeight = EditorGUILayout.IntPopup(this.m_Styles.targetHeight.text, setting2.maxTextureHeight, kMaxTextureSizeStrings, kMaxTextureSizeValues, new GUILayoutOption[0]);
                    if (EditorGUI.EndChangeCheck() && setting2.isDefault)
                    {
                        foreach (ProceduralPlatformSetting setting3 in this.m_PlatformSettings)
                        {
                            if (!setting3.isDefault && !setting3.overridden)
                            {
                                setting3.maxTextureWidth = setting2.maxTextureWidth;
                                setting3.maxTextureHeight = setting2.maxTextureHeight;
                            }
                        }
                    }
                }
                EditorGUI.BeginChangeCheck();
                int textureFormat = setting2.textureFormat;
                if ((textureFormat < 0) || (textureFormat >= kTextureFormatStrings.Length))
                {
                    Debug.LogError("Invalid TextureFormat");
                }
                textureFormat = EditorGUILayout.IntPopup(this.m_Styles.textureFormat.text, textureFormat, kTextureFormatStrings, kTextureFormatValues, new GUILayoutOption[0]);
                if (EditorGUI.EndChangeCheck())
                {
                    setting2.textureFormat = textureFormat;
                    if (setting2.isDefault)
                    {
                        foreach (ProceduralPlatformSetting setting4 in this.m_PlatformSettings)
                        {
                            if (!setting4.isDefault && !setting4.overridden)
                            {
                                setting4.textureFormat = setting2.textureFormat;
                            }
                        }
                    }
                }
                EditorGUI.BeginChangeCheck();
                setting2.m_LoadBehavior = EditorGUILayout.IntPopup(this.m_Styles.loadBehavior.text, setting2.m_LoadBehavior, kMaxLoadBehaviorStrings, kMaxLoadBehaviorValues, new GUILayoutOption[0]);
                if (EditorGUI.EndChangeCheck() && setting2.isDefault)
                {
                    foreach (ProceduralPlatformSetting setting5 in this.m_PlatformSettings)
                    {
                        if (!setting5.isDefault && !setting5.overridden)
                        {
                            setting5.m_LoadBehavior = setting2.m_LoadBehavior;
                        }
                    }
                }
                GUILayout.Space(5f);
                using (new EditorGUI.DisabledScope(!this.HasModified()))
                {
                    GUILayout.BeginHorizontal(new GUILayoutOption[0]);
                    GUILayout.FlexibleSpace();
                    if (GUILayout.Button("Revert", new GUILayoutOption[0]))
                    {
                        this.ResetValues();
                    }
                    if (GUILayout.Button("Apply", new GUILayoutOption[0]))
                    {
                        this.Apply();
                        this.ReimportSubstances();
                        this.ResetValues();
                    }
                    GUILayout.EndHorizontal();
                }
                GUILayout.Space(5f);
                EditorGUILayout.EndPlatformGrouping();
            }
        }