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);
}