UnityEditor.ProceduralTextureInspector.OnDisable C# (CSharp) Method

OnDisable() protected method

protected OnDisable ( ) : void
return void
        protected override void OnDisable()
        {
            base.OnDisable();
            if ((!EditorApplication.isPlaying && !InternalEditorUtility.ignoreInspectorChanges) && this.m_MightHaveModified)
            {
                this.m_MightHaveModified = false;
                string[] strArray = new string[base.targets.GetLength(0)];
                int num = 0;
                foreach (ProceduralTexture texture in base.targets)
                {
                    SubstanceImporter atPath = AssetImporter.GetAtPath(AssetDatabase.GetAssetPath(texture)) as SubstanceImporter;
                    if (atPath != null)
                    {
                        atPath.OnTextureInformationsChanged(texture);
                    }
                    string assetPath = AssetDatabase.GetAssetPath(texture.GetProceduralMaterial());
                    bool flag = false;
                    for (int j = 0; j < num; j++)
                    {
                        if (strArray[j] == assetPath)
                        {
                            flag = true;
                            break;
                        }
                    }
                    if (!flag)
                    {
                        strArray[num++] = assetPath;
                    }
                }
                for (int i = 0; i < num; i++)
                {
                    SubstanceImporter importer2 = AssetImporter.GetAtPath(strArray[i]) as SubstanceImporter;
                    if ((importer2 != null) && EditorUtility.IsDirty(importer2.GetInstanceID()))
                    {
                        AssetDatabase.ImportAsset(strArray[i], ImportAssetOptions.ForceUncompressedImport);
                    }
                }
            }
        }