diff options
Diffstat (limited to 'Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplatePostProcessor.cs')
-rw-r--r-- | Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplatePostProcessor.cs | 157 |
1 files changed, 0 insertions, 157 deletions
diff --git a/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplatePostProcessor.cs b/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplatePostProcessor.cs deleted file mode 100644 index e9ee8c71..00000000 --- a/Assets/AmplifyShaderEditor/Plugins/Editor/Templates/TemplatePostProcessor.cs +++ /dev/null @@ -1,157 +0,0 @@ -// Amplify Shader Editor - Visual Shader Editing Tool -// Copyright (c) Amplify Creations, Lda <info@amplify.pt> - -using UnityEditor; -using UnityEngine; -using System.IO; -using System.Security.AccessControl; -using System.Security.Principal; -using System.Text.RegularExpressions; -using Debug = UnityEngine.Debug; - -namespace AmplifyShaderEditor -{ - public sealed class TemplatePostProcessor : AssetPostprocessor - { - public static TemplatesManager DummyManager; - public static void Destroy() - { - if( DummyManager != null ) - { - DummyManager.Destroy(); - ScriptableObject.DestroyImmediate( DummyManager ); - DummyManager = null; - } - } - - static void OnPostprocessAllAssets( string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths ) - { - TemplatesManager templatesManager; - bool firstTimeDummyFlag = false; - if( UIUtils.CurrentWindow == null ) - { - if( DummyManager == null ) - { - DummyManager = ScriptableObject.CreateInstance<TemplatesManager>(); - DummyManager.hideFlags = HideFlags.HideAndDontSave; - firstTimeDummyFlag = true; - } - templatesManager = DummyManager; - } - else - { - Destroy(); - templatesManager = UIUtils.CurrentWindow.TemplatesManagerInstance; - } - - if( templatesManager == null ) - { - return; - } - - if( !templatesManager.Initialized ) - { - templatesManager.Init(); - } - - bool refreshMenuItems = false; - for( int i = 0; i < importedAssets.Length; i++ ) - { - if( TemplateHelperFunctions.CheckIfTemplate( importedAssets[ i ] ) ) - { - string guid = AssetDatabase.AssetPathToGUID( importedAssets[ i ] ); - TemplateDataParent templateData = templatesManager.GetTemplate( guid ); - if( templateData != null ) - { - refreshMenuItems = templateData.Reload() || refreshMenuItems || firstTimeDummyFlag; - int windowCount = IOUtils.AllOpenedWindows.Count; - AmplifyShaderEditorWindow currWindow = UIUtils.CurrentWindow; - for( int windowIdx = 0; windowIdx < windowCount; windowIdx++ ) - { - if( IOUtils.AllOpenedWindows[ windowIdx ].OutsideGraph.CurrentCanvasMode == NodeAvailability.TemplateShader ) - { - if( IOUtils.AllOpenedWindows[ windowIdx ].OutsideGraph.MultiPassMasterNodes.NodesList[ 0 ].CurrentTemplate == templateData ) - { - UIUtils.CurrentWindow = IOUtils.AllOpenedWindows[ windowIdx ]; - IOUtils.AllOpenedWindows[ windowIdx ].OutsideGraph.ForceMultiPassMasterNodesRefresh(); - } - } - } - UIUtils.CurrentWindow = currWindow; - } - else - { - refreshMenuItems = true; - string name = TemplatesManager.OfficialTemplates.ContainsKey( guid ) ? TemplatesManager.OfficialTemplates[ guid ] : string.Empty; - TemplateMultiPass mp = TemplateMultiPass.CreateInstance<TemplateMultiPass>(); - mp.Init( name, guid, true ); - templatesManager.AddTemplate( mp ); - } - } - } - - if( deletedAssets.Length > 0 ) - { - if( deletedAssets[ 0 ].IndexOf( Constants.InvalidPostProcessDatapath ) < 0 ) - { - for( int i = 0; i < deletedAssets.Length; i++ ) - { - string guid = AssetDatabase.AssetPathToGUID( deletedAssets[ i ] ); - TemplateDataParent templateData = templatesManager.GetTemplate( guid ); - if( templateData != null ) - { - // Close any window using that template - int windowCount = IOUtils.AllOpenedWindows.Count; - for( int windowIdx = 0; windowIdx < windowCount; windowIdx++ ) - { - TemplateMasterNode masterNode = IOUtils.AllOpenedWindows[ windowIdx ].CurrentGraph.CurrentMasterNode as TemplateMasterNode; - if( masterNode != null && masterNode.CurrentTemplate.GUID.Equals( templateData.GUID ) ) - { - IOUtils.AllOpenedWindows[ windowIdx ].Close(); - } - } - - templatesManager.RemoveTemplate( templateData ); - refreshMenuItems = true; - } - } - } - } - - //for ( int i = 0; i < movedAssets.Length; i++ ) - //{ - // if ( TemplateHelperFunctions.CheckIfTemplate( movedAssets[ i ] ) ) - // { - // refreshMenuItems = true; - // break; - // } - //} - - //for ( int i = 0; i < movedFromAssetPaths.Length; i++ ) - //{ - // if ( TemplateHelperFunctions.CheckIfTemplate( movedFromAssetPaths[ i ] ) ) - // { - // refreshMenuItems = true; - // break; - // } - //} - - if( refreshMenuItems ) - { - //UnityEngine.Debug.Log( "Refresh Menu Items" ); - refreshMenuItems = false; - templatesManager.CreateTemplateMenuItems(); - - AmplifyShaderEditorWindow currWindow = UIUtils.CurrentWindow; - - int windowCount = IOUtils.AllOpenedWindows.Count; - for( int windowIdx = 0; windowIdx < windowCount; windowIdx++ ) - { - UIUtils.CurrentWindow = IOUtils.AllOpenedWindows[ windowIdx ]; - IOUtils.AllOpenedWindows[ windowIdx ].CurrentGraph.ForceCategoryRefresh(); - } - UIUtils.CurrentWindow = currWindow; - } - } - } -} |