From 44edf387a673f27b0fc79625f6217aa811904fa1 Mon Sep 17 00:00:00 2001 From: Matt Nadareski Date: Mon, 30 Nov 2020 16:12:54 -0800 Subject: [PATCH] Relabel labels depending on media type --- MPF.Avalonia/DiscInformationWindow.axaml | 42 ++++++------ MPF.Avalonia/DiscInformationWindow.axaml.cs | 76 ++++++++++++++------- MPF/Windows/DiscInformationWindow.xaml | 42 ++++++------ MPF/Windows/DiscInformationWindow.xaml.cs | 76 ++++++++++++++------- 4 files changed, 148 insertions(+), 88 deletions(-) diff --git a/MPF.Avalonia/DiscInformationWindow.axaml b/MPF.Avalonia/DiscInformationWindow.axaml index 1ea3ed5d..086352c9 100644 --- a/MPF.Avalonia/DiscInformationWindow.axaml +++ b/MPF.Avalonia/DiscInformationWindow.axaml @@ -13,19 +13,19 @@ - + - + - + - + - + @@ -34,7 +34,7 @@ - + @@ -43,7 +43,7 @@ - + @@ -52,50 +52,50 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + diff --git a/MPF.Avalonia/DiscInformationWindow.axaml.cs b/MPF.Avalonia/DiscInformationWindow.axaml.cs index f2f81c42..c2667554 100644 --- a/MPF.Avalonia/DiscInformationWindow.axaml.cs +++ b/MPF.Avalonia/DiscInformationWindow.axaml.cs @@ -58,39 +58,69 @@ namespace MPF.Avalonia PopulateCategories(); PopulateRegions(); PopulateLanguages(); - DisableFieldsIfNeeded(); + ManipulateFields(); } #region Helpers /// - /// Disable fields that aren't applicable to the current disc + /// Manipulate fields based on the current disc /// - private void DisableFieldsIfNeeded() + private void ManipulateFields() { - // Only disable for single-layer discs - if (SubmissionInfo?.SizeAndChecksums?.Layerbreak == default(long)) + // Different media types mean different fields available + switch (SubmissionInfo?.CommonDiscInfo.Media) { - this.Find("L1MasteringRingTextBox").IsEnabled = false; - this.Find("L1MasteringRingTextBox").Background = Brushes.Gray; + case MediaType.CDROM: + case MediaType.GDROM: + this.Find("L0MasteringRingTextBlock").Text = "Data-Side Mastering Ring"; + this.Find("L0MasteringSIDTextBlock").Text = "Data-Side Mastering SID"; + this.Find("L0ToolstampTextBlock").Text = "Data-Side Toolstamp/Mastering Code"; + this.Find("L0MouldSIDTextBlock").Text = "Data-Side Mould SID"; + this.Find("L0AdditionalMouldTextBlock").Text = "Data-Side Additional Mould"; + this.Find("L1MasteringRingTextBlock").Text = "Label-Side Mastering Ring"; + this.Find("L1MasteringSIDTextBlock").Text = "Label-Side Mastering SID"; + this.Find("L1ToolstampTextBlock").Text = "Label-Side Toolstamp/Mastering Code"; + this.Find("L1MouldSIDTextBlock").Text = "Label-Side Mould SID"; + this.Find("L1AdditionalMouldTextBlock").Text = "Label-Side Additional Mould"; + break; - this.Find("L1MasteringSIDTextBox").IsEnabled = false; - this.Find("L1MasteringSIDTextBox").Background = Brushes.Gray; + case MediaType.DVD: + case MediaType.HDDVD: + case MediaType.BluRay: + case MediaType.NintendoGameCubeGameDisc: + case MediaType.NintendoWiiOpticalDisc: + case MediaType.NintendoWiiUOpticalDisc: + // Single-layer discs should read the same as CDs + if (SubmissionInfo?.SizeAndChecksums?.Layerbreak == default(long)) + { + this.Find("L0MasteringRingTextBlock").Text = "Data-Side Mastering Ring"; + this.Find("L0MasteringSIDTextBlock").Text = "Data-Side Mastering SID"; + this.Find("L0ToolstampTextBlock").Text = "Data-Side Toolstamp/Mastering Code"; + this.Find("L0MouldSIDTextBlock").Text = "Data-Side Mould SID"; + this.Find("L0AdditionalMouldTextBlock").Text = "Data-Side Additional Mould"; + this.Find("L1MasteringRingTextBlock").Text = "Label-Side Mastering Ring"; + this.Find("L1MasteringSIDTextBlock").Text = "Label-Side Mastering SID"; + this.Find("L1ToolstampTextBlock").Text = "Label-Side Toolstamp/Mastering Code"; + this.Find("L1MouldSIDTextBlock").Text = "Label-Side Mould SID"; + this.Find("L1AdditionalMouldTextBlock").Text = "Label-Side Additional Mould"; + } + // Double-layer discs should have different naming + else + { + this.Find("L0MasteringRingTextBlock").Text = "Layer 0 Mastering Ring"; + this.Find("L0MasteringSIDTextBlock").Text = "Layer 0 Mastering SID"; + this.Find("L0ToolstampTextBlock").Text = "Layer 0 Toolstamp/Mastering Code"; + this.Find("L0MouldSIDTextBlock").Text = "Data-Side Mould SID"; + this.Find("L0AdditionalMouldTextBlock").Text = "Data-Side Additional Mould"; + this.Find("L1MasteringRingTextBlock").Text = "Layer 1 Mastering Ring"; + this.Find("L1MasteringSIDTextBlock").Text = "Layer 1 Mastering SID"; + this.Find("L1ToolstampTextBlock").Text = "Layer 1 Toolstamp/Mastering Code"; + this.Find("L1MouldSIDTextBlock").Text = "Label-Side Mould SID"; + this.Find("L1AdditionalMouldTextBlock").Text = "Label-Side Additional Mould"; + } - this.Find("L1ToolstampTextBox").IsEnabled = false; - this.Find("L1ToolstampTextBox").Background = Brushes.Gray; - - // DVD, HD-DVD, and BD should all allow for label-side moulds - if (SubmissionInfo?.CommonDiscInfo.Media != MediaType.DVD - && SubmissionInfo?.CommonDiscInfo.Media != MediaType.HDDVD - && SubmissionInfo?.CommonDiscInfo.Media != MediaType.BluRay) - { - this.Find("L1MouldSIDTextBox").IsEnabled = false; - this.Find("L1MouldSIDTextBox").Background = Brushes.Gray; - } - - this.Find("L1AdditionalMouldTextBox").IsEnabled = false; - this.Find("L1AdditionalMouldTextBox").Background = Brushes.Gray; + break; } } diff --git a/MPF/Windows/DiscInformationWindow.xaml b/MPF/Windows/DiscInformationWindow.xaml index 410cad75..7a070cfb 100644 --- a/MPF/Windows/DiscInformationWindow.xaml +++ b/MPF/Windows/DiscInformationWindow.xaml @@ -47,19 +47,19 @@ -