Controller-Slide-Presenter/SlidePresenter/SlideSwitcher.cs

22 lines
No EOL
600 B
C#

using SwitchSlidePresenter.InputSender;
namespace SwitchSlidePresenter;
public class SlideSwitcher : IDisposable {
private readonly IGamepadReader? _reader;
private readonly IInputSender _inputSender = new WindowsInputSender();
public SlideSwitcher(IGamepadReader? reader) {
_reader = reader;
_reader.NextSlide += NextSlide;
_reader.PrevSlide += PreviousSlide;
}
public void Dispose() {
_reader.NextSlide -= NextSlide;
_reader.PrevSlide -= PreviousSlide;
}
private void NextSlide() => _inputSender.NextSlide();
private void PreviousSlide() => _inputSender.PreviousSlide();
}