public ItemDropArgs(object[] dragItems, object dropTarget, ItemDropAction action, bool isExternal) { DragItems = dragItems; DropTarget = dropTarget; Action = action; IsExternal = isExternal; }
public ItemDropCancelArgs( object[] dragItems, object dropTarget, ItemDropAction action, bool isExternal, PointerEventData pointerEventData) : base(dragItems, dropTarget, action, isExternal, pointerEventData) { }
public ItemDropArgs( object[] dragItems, object dropTarget, ItemDropAction action, bool isExternal, PointerEventData pointerEventData) { this.DragItems = dragItems; this.DropTarget = dropTarget; this.Action = action; this.IsExternal = isExternal; this.PointerEventData = pointerEventData; }
protected virtual void OnDrag(PointerEventData pointerEventData) { object[] dragObjects = Editor.DragDrop.DragObjects; m_treeView.ExternalItemDrag(pointerEventData.position); m_lastDropAction = m_treeView.DropAction; if (CanDrop(dragObjects)) { Editor.DragDrop.SetCursor(KnownCursor.DropAllowed); } else { Editor.DragDrop.SetCursor(KnownCursor.DropNotAllowed); m_treeView.ClearTarget(); } }
private void ExecuteDropItemAction(String techTypeString, GameObject gameObject) { Optional <TechType> opTechType = ApiHelper.TechType(techTypeString); if (opTechType.IsEmpty()) { Console.WriteLine("Attempted to drop unknown tech type: " + techTypeString); return; } TechType techType = opTechType.Get(); Console.WriteLine("Performing drop action for tech type: " + techType); ItemDropAction itemDropAction = ItemDropAction.FromTechType(techType); itemDropAction.ProcessDroppedItem(gameObject); }
protected override void Drop( ItemContainerData[] dragItems, ItemContainerData dropTarget, ItemDropAction action) { TreeViewItemContainerData parent = (TreeViewItemContainerData)dropTarget; switch (action) { case ItemDropAction.SetLastChild: for (int index = 0; index < dragItems.Length; ++index) { TreeViewItemContainerData dragItem = (TreeViewItemContainerData)dragItems[index]; if (parent == null || parent != dragItem && !parent.IsDescendantOf(dragItem)) { this.SetParent(parent, dragItem); } else { break; } } break; case ItemDropAction.SetPrevSibling: for (int index = 0; index < dragItems.Length; ++index) { this.SetPrevSiblingInternal((ItemContainerData)parent, dragItems[index]); } break; case ItemDropAction.SetNextSibling: for (int index = dragItems.Length - 1; index >= 0; --index) { this.SetNextSiblingInternal((ItemContainerData)parent, dragItems[index]); } break; } this.UpdateSelectedItemIndex(); }
public override void SetPosition(Vector2 position) { if(Item == null) { return; } RectTransform rt = Item.RectTransform; TreeViewItem tvItem = (TreeViewItem)Item; Vector2 localPoint; Camera camera = null; if(ParentCanvas.renderMode == RenderMode.WorldSpace) { camera = m_treeView.Camera; } if(RectTransformUtility.ScreenPointToLocalPointInRectangle(rt, position, camera, out localPoint)) { if (localPoint.y > -rt.rect.height / 4) { Action = ItemDropAction.SetPrevSibling; RectTransform.position = rt.position; } else if (localPoint.y < rt.rect.height / 4 - rt.rect.height && !tvItem.HasChildren) { Action = ItemDropAction.SetNextSibling; RectTransform.position = rt.position - new Vector3(0, rt.rect.height, 0); } else { Action = ItemDropAction.SetLastChild; RectTransform.position = rt.position; } } }
protected override void Drop( ItemContainer[] dragItems, ItemContainer dropTarget, ItemDropAction action) { TreeViewItem treeViewItem = (TreeViewItem)dropTarget; switch (action) { case ItemDropAction.SetLastChild: for (int index = 0; index < dragItems.Length; ++index) { TreeViewItem dragItem = (TreeViewItem)dragItems[index]; if (Object.op_Inequality((Object)treeViewItem, (Object)dragItem)) { dragItem.Parent = treeViewItem; } } break; case ItemDropAction.SetPrevSibling: for (int index = 0; index < dragItems.Length; ++index) { this.SetPrevSibling((ItemContainer)treeViewItem, dragItems[index]); } break; case ItemDropAction.SetNextSibling: for (int index = dragItems.Length - 1; index >= 0; --index) { this.SetNextSibling((ItemContainer)treeViewItem, dragItems[index]); } break; } this.UpdateSelectedItemIndex(); }
protected override void Drop(ItemContainer[] dragItems, ItemContainer dropTarget, ItemDropAction action) { TreeViewItem tvDropTarget = (TreeViewItem)dropTarget; if (action == ItemDropAction.SetLastChild) { for (int i = 0; i < dragItems.Length; ++i) { TreeViewItem tvDragItem = (TreeViewItem)dragItems[i]; tvDragItem.Parent = tvDropTarget; } } else if (action == ItemDropAction.SetPrevSibling) { for (int i = 0; i < dragItems.Length; ++i) { TreeViewItem tvDragItem = (TreeViewItem)dragItems[i]; TreeViewItem dragItemChild = tvDragItem.FirstChild(); DropItemBefore(tvDropTarget, tvDragItem); if (dragItemChild != null) { MoveSubtree(tvDragItem, dragItemChild); } tvDragItem.Parent = tvDropTarget.Parent; } } else if (action == ItemDropAction.SetNextSibling) { for (int i = dragItems.Length - 1; i >= 0; --i) { TreeViewItem tvDragItem = (TreeViewItem)dragItems[i]; TreeViewItem dragItemChild = tvDragItem.FirstChild(); DropItemAfter(tvDropTarget, tvDragItem); if (dragItemChild != null) { MoveSubtree(tvDragItem, dragItemChild); } tvDragItem.Parent = tvDropTarget.Parent; } } UpdateSelectedItemIndex(); }
protected override void Drop(ItemContainerData[] dragItems, ItemContainerData dropTarget, ItemDropAction action) { TreeViewItemContainerData tvDropTarget = (TreeViewItemContainerData)dropTarget; if (action == ItemDropAction.SetLastChild) { for (int i = 0; i < dragItems.Length; ++i) { TreeViewItemContainerData dragItemData = (TreeViewItemContainerData)dragItems[i]; if (tvDropTarget == null || tvDropTarget != dragItemData && !tvDropTarget.IsDescendantOf(dragItemData)) //disallow self parenting { SetParent(tvDropTarget, dragItemData); } else { break; } } } else if (action == ItemDropAction.SetPrevSibling) { for (int i = 0; i < dragItems.Length; ++i) { SetPrevSiblingInternal(tvDropTarget, dragItems[i]); } } else if (action == ItemDropAction.SetNextSibling) { for (int i = dragItems.Length - 1; i >= 0; --i) { SetNextSiblingInternal(tvDropTarget, dragItems[i]); } } UpdateSelectedItemIndex(); }
public ListDropCommand(ItemDropArgs _args) { this.target = (ObjectCtrl)_args.DropTarget; this.action = _args.Action; this.infos = ((IEnumerable <object>)_args.DragItems).Select <object, ListDropCommand.Info>((Func <object, ListDropCommand.Info>)(v => new ListDropCommand.Info((ObjectCtrl)v))).ToArray <ListDropCommand.Info>(); }
public override void SetPosition(Vector2 position) { if (Object.op_Equality((Object)this.Item, (Object)null)) { return; } if (!this.m_treeView.CanReparent) { base.SetPosition(position); } else { RectTransform rectTransform1 = this.Item.RectTransform; TreeViewItem treeViewItem = (TreeViewItem)this.Item; Camera camera = (Camera)null; if (this.ParentCanvas.get_renderMode() == 2 || this.ParentCanvas.get_renderMode() == 1) { camera = this.m_treeView.Camera; } if (!this.m_treeView.CanReorder) { if (!treeViewItem.CanDrop) { return; } this.Action = ItemDropAction.SetLastChild; ((Transform)this.RectTransform).set_position(((Transform)rectTransform1).get_position()); } else { Vector2 vector2; if (!RectTransformUtility.ScreenPointToLocalPointInRectangle(rectTransform1, position, camera, ref vector2)) { return; } // ISSUE: variable of the null type __Null y1 = vector2.y; Rect rect1 = rectTransform1.get_rect(); double num1 = -(double)((Rect) ref rect1).get_height() / 4.0; if (y1 > num1) { this.Action = ItemDropAction.SetPrevSibling; ((Transform)this.RectTransform).set_position(((Transform)rectTransform1).get_position()); } else { // ISSUE: variable of the null type __Null y2 = vector2.y; Rect rect2 = rectTransform1.get_rect(); double num2 = (double)((Rect) ref rect2).get_height() / 4.0; Rect rect3 = rectTransform1.get_rect(); double height = (double)((Rect) ref rect3).get_height(); double num3 = num2 - height; if (y2 < num3 && !treeViewItem.HasChildren) { this.Action = ItemDropAction.SetNextSibling; ((Transform)this.RectTransform).set_position(((Transform)rectTransform1).get_position()); RectTransform rectTransform2 = this.RectTransform; Vector3 localPosition = ((Transform)this.RectTransform).get_localPosition(); Rect rect4 = rectTransform1.get_rect(); Vector3 vector3_1 = new Vector3(0.0f, (float)((double)((Rect) ref rect4).get_height() * (double)this.ParentCanvas.get_scaleFactor()), 0.0f); Vector3 vector3_2 = Vector3.op_Subtraction(localPosition, vector3_1); ((Transform)rectTransform2).set_localPosition(vector3_2); } else { if (!treeViewItem.CanDrop) { return; } this.Action = ItemDropAction.SetLastChild; ((Transform)this.RectTransform).set_position(((Transform)rectTransform1).get_position()); } } } } }
public TreeReparentingEventArgs(T draggingItem, T target, ItemDropAction action) : base(draggingItem, target, action) { }
public TreeReparentEventArgs(T draggingItem, T target, ItemDropAction action) { DraggingItem = draggingItem; Target = target; Action = action; }
protected virtual bool InvokeOnReparenting(object draggingItem, object target, ItemDropAction action) { throw new NotImplementedException("Make sure to override InvokeOnReparenting!"); }
public override void SetPosition(Vector2 position) { if (Item == null) { return; } if (!m_treeView.CanReparent) { base.SetPosition(position); return; } RectTransform rt = Item.RectTransform; TreeViewItem tvItem = (TreeViewItem)Item; Vector2 localPoint; Camera camera = null; if (ParentCanvas.renderMode == RenderMode.WorldSpace || ParentCanvas.renderMode == RenderMode.ScreenSpaceCamera) { camera = m_treeView.Camera; } if (!m_treeView.CanReorder) { if (!tvItem.CanDrop) { return; } Action = ItemDropAction.SetLastChild; RectTransform.position = rt.position; } else { if (RectTransformUtility.ScreenPointToLocalPointInRectangle(rt, position, camera, out localPoint)) { if (localPoint.y > -rt.rect.height / 4) { Action = ItemDropAction.SetPrevSibling; RectTransform.position = rt.position; } else if (localPoint.y < rt.rect.height / 4 - rt.rect.height && !tvItem.HasChildren) { Action = ItemDropAction.SetNextSibling; RectTransform.position = rt.position + Vector3.Scale(Vector3.down * rt.rect.height, ParentCanvas.transform.localScale); } else { if (!tvItem.CanDrop) { return; } Action = ItemDropAction.SetLastChild; RectTransform.position = rt.position; } } } }