private void SceneFileDragReceiver_OnDragComplete(object sender, System.EventArgs e) { bool wasSceneAdded = false; foreach (string path in DragAndDrop.paths) { if (!ScenePathProcessor.IsValidSceneItem(path)) { continue; } if (sceneManager.GetSceneByPath(path) != null) { continue; } AddNewScene(path, serializedSceneManager.SceneNodes, NodeEditor.GetNewNodePosition()); wasSceneAdded = true; } if (wasSceneAdded) { RefreshStatuses(); serializedSceneManager.SerializedManager.Update(); serializedSceneManager.SceneNodesObject.Update(); Repaint(); } }
private static bool SceneFileDragValidator(Object[] items, string[] paths) { foreach (string path in paths) { if (ScenePathProcessor.IsValidSceneItem(path)) { return(true); } } return(false); }
private bool IsValidDrag(UnityEngine.Object[] selectedObjects, string[] selectedPaths) { string extension = System.IO.Path.GetExtension(selectedPaths[0]); // Ignore folders if (string.IsNullOrEmpty(extension)) { return(false); } return(ScenePathProcessor.IsValidSceneItem(selectedPaths[0])); }