Esempio n. 1
0
        public async Task CancelTransaction()
        {
            await _transaction.Cancel();

            TransactionEnded?.Invoke(this, new MudDragAndDropTransactionFinishedEventArgs <T>(_transaction));
            _transaction = null;
        }
Esempio n. 2
0
        public async Task CommitTransaction(string dropzoneIdentifier, bool reorderIsAllowed)
        {
            await _transaction.Commit();

            var index = -1;

            if (reorderIsAllowed == true)
            {
                index = GetTransactionIndex() + 1;
                if (_transaction.SourceZoneIdentifier == _transaction.CurrentZone && IsItemMovedDownwards() == true)
                {
                    index -= 1;
                }
            }

            await ItemDropped.InvokeAsync(new MudItemDropInfo <T>(_transaction.Item, dropzoneIdentifier, index));

            TransactionEnded?.Invoke(this, new MudDragAndDropTransactionFinishedEventArgs <T>(dropzoneIdentifier, true, _transaction));
            _transaction = null;
        }
Esempio n. 3
0
 public MudDragAndDropTransactionFinishedEventArgs(string destinationDropzoneIdentifier, bool success, MudDragAndDropItemTransaction <T> transaction)
 {
     Item    = transaction.Item;
     Success = success;
     OriginatedDropzoneIdentifier  = transaction.SourceZoneIdentifier;
     DestinationDropzoneIdentifier = destinationDropzoneIdentifier;
     OriginIndex      = transaction.SourceIndex;
     DestinationIndex = transaction.Index;
 }
Esempio n. 4
0
 public void StartTransaction(T item, string identifier, int index, Func <Task> commitCallback, Func <Task> cancelCallback)
 {
     _transaction = new MudDragAndDropItemTransaction <T>(item, identifier, index, commitCallback, cancelCallback);
     TransactionStarted?.Invoke(this, _transaction);
 }
Esempio n. 5
0
 public MudDragAndDropTransactionFinishedEventArgs(MudDragAndDropItemTransaction <T> transaction) :
     this(string.Empty, false, transaction)
 {
 }