2019-10-04 01:29:53 +00:00
|
|
|
|
using PKHeX.Core;
|
|
|
|
|
|
|
|
|
|
namespace PKHeX.WinForms.Controls
|
|
|
|
|
{
|
2019-10-04 02:09:02 +00:00
|
|
|
|
public sealed class SlotChangeInfo<TCursor, TImageSource>
|
2019-10-04 01:29:53 +00:00
|
|
|
|
{
|
|
|
|
|
public bool LeftMouseIsDown { get; set; }
|
|
|
|
|
public bool DragDropInProgress { get; set; }
|
|
|
|
|
|
|
|
|
|
public TCursor Cursor { get; set; }
|
|
|
|
|
public string CurrentPath { get; set; }
|
|
|
|
|
|
|
|
|
|
public SlotViewInfo<TImageSource> Source { get; set; }
|
|
|
|
|
public SlotViewInfo<TImageSource> Destination { get; set; }
|
|
|
|
|
|
|
|
|
|
public SlotChangeInfo()
|
|
|
|
|
{
|
|
|
|
|
Reset();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void Reset()
|
|
|
|
|
{
|
|
|
|
|
LeftMouseIsDown = DragDropInProgress = false;
|
|
|
|
|
CurrentPath = null;
|
|
|
|
|
Cursor = default;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public bool SameLocation => Source?.Equals(Destination) ?? false;
|
|
|
|
|
public bool DragIsParty => Source?.Slot is SlotInfoParty || Destination?.Slot is SlotInfoParty;
|
|
|
|
|
}
|
|
|
|
|
}
|