diff --git a/MPF.Core/UI/ViewModels/MainViewModel.cs b/MPF.Core/UI/ViewModels/MainViewModel.cs index 9f919008..75e54daa 100644 --- a/MPF.Core/UI/ViewModels/MainViewModel.cs +++ b/MPF.Core/UI/ViewModels/MainViewModel.cs @@ -1583,6 +1583,35 @@ namespace MPF.Core.UI.ViewModels this.DriveSpeed = speed; } + /// + /// Returns False if a given InternalProgram does not support a given MediaType + /// + public bool ProgramSupportsMedia(InternalProgram program, MediaType? media) + { + switch (program) + { + case InternalProgram.Redumper: + switch (media) + { + case MediaType.HDDVD: + return false; + case MediaType.BluRay: + return false; + default: + return true; + } + case InternalProgram.Aaru: + case InternalProgram.DiscImageCreator: + switch (media) + { + default: + return true; + } + default: + return true; + } + } + /// /// Determine if the dumping button should be enabled /// @@ -1591,7 +1620,8 @@ namespace MPF.Core.UI.ViewModels return Drives != null && Drives.Count > 0 && this.CurrentSystem != null - && this.CurrentMediaType != null; + && this.CurrentMediaType != null + && ProgramSupportsMedia(this.CurrentProgram, this.CurrentMediaType); } ///