Example #1
0
        private void UpdateDragAndDrop()
        {
            var e = Event.current;

            switch (e.type)
            {
            case EventType.DragUpdated:
            case EventType.DragPerform:

                var validate = false;

                if (!string.IsNullOrEmpty(headerView.Category))
                {
                    if (headerView.Category == ExternalResources.ShareCategoryName)
                    {
                        validate = assetManagement.IsShareResourcesTarget(DragAndDrop.objectReferences);
                    }
                    else
                    {
                        validate = assetManagement.IsExternalResourcesTarget(DragAndDrop.objectReferences);
                    }
                }

                DragAndDrop.visualMode = validate ? DragAndDropVisualMode.Copy : DragAndDropVisualMode.Rejected;

                if (e.type == EventType.DragPerform)
                {
                    DragAndDrop.AcceptDrag();
                    DragAndDrop.activeControlID = 0;

                    if (validate)
                    {
                        OnDragAndDrop(DragAndDrop.objectReferences);
                    }
                }

                break;
            }
        }