using KaraokePlayer.Enums; using KaraokePlayer.Interfaces; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace KaraokePlayer.Classes { public class ControllerStateChangedEventArgs: EventArgs { public ControllerStateChangedEventArgs(PlayerState state ) { State = state; } public PlayerState State { get; } } public class ControllerSongChangedEventArgs { public ControllerSongChangedEventArgs(ISong song) { ShouldPlay = true; Song = song; } public ControllerSongChangedEventArgs(bool shouldPlay, ISong song) { ShouldPlay = shouldPlay; Song = song; } public ISong Song { get; } public bool ShouldPlay { get; } } public delegate void ControllerStateChangedEventHandler(ControllerStateChangedEventArgs args); public delegate void ControllerSongChangedEventHandler(ControllerSongChangedEventArgs args); public delegate void ControllerPlayQueueChangedEventHandler(); }