void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) { if (!Editor.DragDrop.InProgress) { return; } object dragObject = Editor.DragDrop.DragObjects[0]; Type type = null; if (dragObject is ExposeToEditor) { ExposeToEditor exposeToEditor = (ExposeToEditor)dragObject; GameObject go = exposeToEditor.gameObject; type = ToType(go); } else if (dragObject is GameObject) { type = ToType((GameObject)dragObject); } else if (dragObject is AssetItem) { AssetItem assetItem = (AssetItem)dragObject; IProject project = IOC.Resolve <IProject>(); type = project.ToType(assetItem); } if (type != null && MemberInfoType.IsAssignableFrom(type)) { Editor.DragDrop.Drop -= OnDrop; Editor.DragDrop.Drop += OnDrop; ShowDragHighlight(); Editor.DragDrop.SetCursor(Utils.KnownCursor.DropAllowed); } }
//private void OnGlobalBeginDrag() //{ // if(m_isPointerOver) // { // if (DragDrop.DragObject != null && MemberInfoType.IsAssignableFrom(DragDrop.DragObject.GetType())) // { // ShowDragHighlight(); // } // } //} //private void OnGlobalDrop() //{ // if (m_isPointerOver) // { // if (DragDrop.DragObject != null && MemberInfoType.IsAssignableFrom(DragDrop.DragObject.GetType())) // { // SetValue(DragDrop.DragObject); // EndEdit(); // SetInputField(DragDrop.DragObject); // HideDragHighlight(); // } // } //} void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) { m_isPointerOver = true; if (DragDrop.DragObject != null && MemberInfoType.IsAssignableFrom(DragDrop.DragObject.GetType())) { ShowDragHighlight(); } }
private void OnGlobalBeginDrag() { if (m_isPointerOver) { if (DragDrop.DragItem != null && MemberInfoType.IsAssignableFrom(DragDrop.DragItem.GetType())) { ShowDragHighlight(); } } }
private void OnGlobalDrop() { if (m_isPointerOver) { if (DragDrop.DragItem != null && MemberInfoType.IsAssignableFrom(DragDrop.DragItem.GetType())) { SetValue(DragDrop.DragItem); EndEdit(); SetInputField(DragDrop.DragItem); HideDragHighlight(); } } }
void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) { if (!Editor.DragDrop.InProgress) { return; } object dragObject = Editor.DragDrop.DragObjects[0]; Type type = m_loader.GetObjectType(dragObject, MemberInfoType); if (type != null && MemberInfoType.IsAssignableFrom(type)) { Editor.DragDrop.Drop -= OnDrop; Editor.DragDrop.Drop += OnDrop; ShowDragHighlight(); Editor.DragDrop.SetCursor(Utils.KnownCursor.DropAllowed); } }
void IPointerEnterHandler.OnPointerEnter(PointerEventData eventData) { if (Editor.DragDrop.InProgress && Editor.DragDrop.DragObjects[0] != null && MemberInfoType.IsAssignableFrom(Editor.DragDrop.DragObjects[0].GetType())) { Editor.DragDrop.Drop -= OnDrop; Editor.DragDrop.Drop += OnDrop; ShowDragHighlight(); } }