示例#1
0
 public void EnterState_None()
 {
     Dragged          = null;
     ModelOfDragged   = null;
     PlaceholderModel = null;
     State            = DragState.NONE;
 }
示例#2
0
        bool DraggableItem.IDragDropListener.OnPrepareToDragItem(DraggableItem item)
        {
            var dragged = GetItemViewsHolderIfVisible(item.RT);

            if (dragged == null)
            {
                return(false);
            }

            int index          = dragged.ItemIndex;
            var modelOfDragged = Data[index];

            Debug.Log("Dragging with id " + modelOfDragged.id + ", ItemIndex " + index);

            // Modifying the list manually, because RemoveItemWithViewsHolder will do a Remove itself
            Data.List.RemoveAt(index);

            RemoveItemWithViewsHolder(dragged, true, false);
            UpdateScaleOfVisibleItems(dragged);

            // Insert back an empty slot in its place, with the same size
            var emptyModel = new EmptyModel();

            _DragManager.EnterState_PreparingForDrag(dragged, modelOfDragged, emptyModel);

            InsertPlaceholderAtNewIndex(index);

            return(true);
        }
示例#3
0
        public void EnterState_PreparingForDrag(MyViewsHolder dragged, MyModel modelOfDragged, EmptyModel placeholderModel)
        {
            Dragged          = dragged;
            ModelOfDragged   = modelOfDragged;
            PlaceholderModel = placeholderModel;

            State = DragState.PREPARING_FOR_DRAG;
        }