Beispiel #1
0
 private void OnControlFindReferencesGUI()
 {
     EditorGUILayout.BeginHorizontal();
     findPath = EditorGUILayout.TextField(FindPathStr, findPath);
     if (GUILayout.Button(FolderStr, GUILayout.MaxWidth(50)))
     {
         var path = EditorUtility.OpenFolderPanel(FindPathStr, findPath, EmptyStr);
         if (!string.IsNullOrEmpty(path))
         {
             findPath = path;
         }
     }
     EditorGUILayout.EndHorizontal();
     if (GUILayout.Button(FindReferencesStr))
     {
         AssetsUtility.FindReferencesInPath(Selection.activeObject, findPath);
         AssetsUtility.OnFindAssetsCompleted += OnFindAssetsCompleted;
     }
 }
Beispiel #2
0
 private void DoMoveAssets()
 {
     foreach (var kvp in moveAssetObjects)
     {
         moveAssetObjects.Remove(kvp.Key);
         break;
     }
     foreach (var kvp in moveAssetObjects)
     {
         AssetsUtility.MoveAssets(kvp.Key, kvp.Value.ToArray());
         break;
     }
     if (moveAssetObjects.Count <= 0)
     {
         AssetsUtility.OnMoveAssetsCompleted -= DoMoveAssets;
         AssetsUtility.OnMoveAssetsCanceled  -= DoMoveAssets;
         CancelMoveAssets();
     }
 }
Beispiel #3
0
 private void OnControlAnalysisAssetGUI()
 {
     EditorGUILayout.BeginHorizontal();
     searchPath = EditorGUILayout.TextField(SearchPathStr, searchPath);
     if (GUILayout.Button(FolderStr, GUILayout.MaxWidth(50)))
     {
         var path = EditorUtility.OpenFolderPanel(SearchPathStr, searchPath, EmptyStr);
         if (!string.IsNullOrEmpty(path))
         {
             searchPath = path;
         }
     }
     EditorGUILayout.EndHorizontal();
     EditorGUI.BeginDisabledGroup(!AssetsUtility.IsAnalysable(Selection.activeObject));
     if (GUILayout.Button(AnalysisObjectStr))
     {
         AssetsUtility.AnalysisAsset(Selection.activeObject, searchPath);
         AssetsUtility.OnMatchAssetsCompleted += OnMatchAssetsCompleted;
     }
     EditorGUI.EndDisabledGroup();
 }
Beispiel #4
0
 public static void ClearActions()
 {
     AssetsUtility.ClearAssets <StateMachineAction>();
 }
Beispiel #5
0
 public static void RemoveSelectActions()
 {
     AssetsUtility.RemoveSelectAssets <StateMachineAction>();
 }
Beispiel #6
0
        private void OnControlMatchedAssetsGUI()
        {
            string movePathKey;

            System.Type type, lastType = null;
            foreach (var assetObject in matchedAssets)
            {
                type = assetObject.GetType();
                if (lastType != null && type != lastType)
                {
                    EditorGUILayout.Space();
                    EditorGUILayout.Space();
                }
                if (lastType == null || type != lastType)
                {
                    movePathKey = MovePathKey + type.Name;
                    if (!movePaths.ContainsKey(movePathKey))
                    {
                        if (EditorPrefs.HasKey(movePathKey))
                        {
                            movePaths.Add(movePathKey, EditorPrefs.GetString(movePathKey));
                        }
                        else
                        {
                            movePaths.Add(movePathKey, Application.dataPath);
                        }
                    }
                    EditorGUILayout.LabelField(string.Format(MovePathStr, type.Name));
                    EditorGUILayout.BeginHorizontal();
                    movePaths[movePathKey] = EditorGUILayout.TextField(movePaths[movePathKey]);
                    if (GUILayout.Button(FolderStr, GUILayout.MaxWidth(50)))
                    {
                        var path = EditorUtility.OpenFolderPanel(string.Format(MovePathStr, type.Name), movePaths[movePathKey], EmptyStr);
                        if (!string.IsNullOrEmpty(path))
                        {
                            movePaths[movePathKey] = path;
                        }
                    }
                    EditorGUILayout.EndHorizontal();
                }
                else
                {
                    EditorGUILayout.LabelField(EmptyStr);
                }
                lastType = type;
            }

            if (GUILayout.Button(StartMoveStr))
            {
                moveAssetObjects.Clear();

                foreach (var assetObject in matchedAssets)
                {
                    type        = assetObject.GetType();
                    movePathKey = MovePathKey + type.Name;

                    if (!moveAssetObjects.ContainsKey(movePaths[movePathKey]))
                    {
                        moveAssetObjects.Add(movePaths[movePathKey], new List <Object>());
                    }
                    moveAssetObjects[movePaths[movePathKey]].Add(assetObject);
                }

                AssetsUtility.OnMoveAssetsCompleted += DoMoveAssets;
                AssetsUtility.OnMoveAssetsCanceled  += DoMoveAssets;

                foreach (var kvp in moveAssetObjects)
                {
                    AssetsUtility.MoveAssets(kvp.Key, kvp.Value.ToArray());
                    break;
                }
            }
            if (GUILayout.Button(CancelMoveStr))
            {
                CancelMoveAssets();
            }
        }