PKHeX/PKHeX.Core/Saves/Storage/SlotChangeInfo.cs
Kurt 232427d002 Rework slot interactivity a little
decentralize some logic, individual view providers now provide the
details rather than detecting from a huge array.

#1925
2018-05-05 08:07:22 -07:00

32 lines
980 B
C#

namespace PKHeX.Core
{
public class SlotChangeInfo
{
public bool LeftMouseIsDown { get; set; }
public bool RightMouseIsDown { get; set; }
public bool DragDropInProgress { get; set; }
public object Cursor { get; set; }
public string CurrentPath { get; set; }
public SlotChange Source { get; set; }
public SlotChange Destination { get; set; }
private readonly byte[] BlankData;
public SlotChangeInfo(SaveFile sav)
{
BlankData = sav.BlankPKM.EncryptedPartyData;
Reset();
}
public bool SameSlot => Source.Slot == Destination.Slot && Source.Box == Destination.Box;
public void Reset()
{
LeftMouseIsDown = RightMouseIsDown = DragDropInProgress = false;
Source = new SlotChange { OriginalData = BlankData };
Destination = new SlotChange();
Cursor = CurrentPath = null;
}
}
}