public void Drop(DropInfo dropInfo) { if (dropInfo.DragInfo.SourceCollection == _owner.SelectedTanks) { var insertIndex = dropInfo.InsertIndex; foreach (var tank in dropInfo.GetEnumerableData <TankVM>()) { insertIndex = this.MoveTankItem(tank, insertIndex) + 1; } } else { var insertIndex = dropInfo.InsertIndex; foreach (var unikey in dropInfo.GetEnumerableData <TankUnikey>()) { var tank = _owner.GetTankVM(unikey); if (tank != null && !_owner.SelectedTanks.Contains(tank)) { _owner.SelectedTanks.Insert(insertIndex, tank); ++insertIndex; } } } }
public void Drop(DropInfo dropInfo) { if (dropInfo.DragInfo.SourceCollection == _owner.SelectedStats) { var stats = dropInfo.GetEnumerableData <StatInfoVM>().ToList(); if (_owner.CanRemoveStat(stats)) { _owner.RemoveStat(stats); } } }
public void Drop(DropInfo dropInfo) { var insertIndex = _owner.ColumnMode.Mode == StatComparer.ColumnMode.Stats ? dropInfo.InsertIndex : _owner.TanksManager.SelectedTanks.Count; foreach (var unikey in dropInfo.GetEnumerableData <TankUnikey>()) { var tank = _owner.TanksManager.GetTankVM(unikey); if (tank != null && !_owner.TanksManager.SelectedTanks.Contains(tank)) { _owner.TanksManager.SelectedTanks.Insert(insertIndex, tank); ++insertIndex; } } }
public void DragOver(DropInfo dropInfo) { if (dropInfo.GetEnumerableData <TankUnikey>().Count() > 0) { dropInfo.Effects = DragDropEffects.Copy; if (_owner.ColumnMode.Mode == StatComparer.ColumnMode.Stats) { dropInfo.DropTargetAdorner = DropTargetAdorners.Insert; } } else { dropInfo.Effects = DragDropEffects.None; } }
public void Drop(DropInfo dropInfo) { if (dropInfo.DragInfo.SourceCollection == _owner.SelectedStats) { var insertIndex = dropInfo.InsertIndex; foreach (var stat in dropInfo.GetEnumerableData <StatInfoVM>()) { this.MoveStatItem(stat, insertIndex); ++insertIndex; } } else if (_owner.CanAddStat(dropInfo.Data)) { _owner.AddStat(dropInfo.Data, dropInfo.InsertIndex); } }
public void DragOver(DropInfo dropInfo) { if (dropInfo.DragInfo.SourceCollection == _owner.SelectedTanks) { dropInfo.DropTargetAdorner = DropTargetAdorners.Insert; dropInfo.Effects = DragDropEffects.Move; } else if (dropInfo.GetEnumerableData <TankUnikey>().Count() > 0) { dropInfo.DropTargetAdorner = DropTargetAdorners.Insert; dropInfo.Effects = DragDropEffects.Copy; } else { dropInfo.Effects = DragDropEffects.None; } }