using System; namespace BizHawk.Client.ApiHawk { /// /// This class holds event data for BeforeQuickLoad event /// public sealed class BeforeQuickLoadEventArgs : EventArgs { internal BeforeQuickLoadEventArgs(string name) { Name = name; } /// /// Gets or sets value that defined if saved has been handled or not /// public bool Handled { get; set; } /// /// Gets quicksave name /// public string Name { get; } /// /// Gets slot used for quicksave /// public int Slot => int.Parse(Name.Substring(Name.Length - 1)); } /// /// This class holds event data for BeforeQuickSave event /// public sealed class BeforeQuickSaveEventArgs : EventArgs { internal BeforeQuickSaveEventArgs(string name) { Name = name; } /// /// Gets or sets value that defined if saved has been handled or not /// public bool Handled { get; set; } /// /// Gets quicksave name /// public string Name { get; } /// /// Gets slot used for quicksave /// public int Slot => int.Parse(Name.Substring(Name.Length - 1)); } /// /// This class holds event data for StateLoaded event /// public sealed class StateLoadedEventArgs: EventArgs { /// /// Initialize a new instance of /// /// User friendly name of loaded state internal StateLoadedEventArgs(string stateName) { Name = stateName; } /// /// Gets user friendly name of the loaded savestate /// public string Name { get; } } /// /// This class holds event data for StateSaved event /// public sealed class StateSavedEventArgs : EventArgs { /// /// Initialize a new instance of /// /// User friendly name of loaded state internal StateSavedEventArgs(string stateName) { Name = stateName; } /// /// Gets user friendly name of the loaded savestate /// public string Name { get; } } /// /// Represent a method that will handle the event raised before a quickload is done /// /// Object that raised the event /// Event arguments public delegate void BeforeQuickLoadEventHandler(object sender, BeforeQuickLoadEventArgs e); /// /// Represent a method that will handle the event raised before a quicksave is done /// /// Object that raised the event /// Event arguments public delegate void BeforeQuickSaveEventHandler(object sender, BeforeQuickSaveEventArgs e); /// /// Represent a method that will handle the event raised when a savestate is loaded /// /// Object that raised the event /// Event arguments public delegate void StateLoadedEventHandler(object sender, StateLoadedEventArgs e); /// /// Represent a method that will handle the event raised when a savestate is saved /// /// Object that raised the event /// Event arguments public delegate void StateSavedEventHandler(object sender, StateSavedEventArgs e); }