More refactoring: UserDefinedWriter is now a more typical IAudioDest, that has it's own UserDefinedEncoderSettings

This commit is contained in:
Grigory Chudov
2013-04-09 20:51:13 -04:00
parent e3d0c595c0
commit 218dad5c45
9 changed files with 127 additions and 131 deletions

View File

@@ -2469,11 +2469,11 @@ namespace JDP
{
string defaultMode;
encoder.settings.GetSupportedModes(out defaultMode);
encoder.EncoderMode = defaultMode;
encoder.settings.EncoderMode = defaultMode;
}
trackBarEncoderMode.Maximum = modes.Length - 1;
trackBarEncoderMode.Value = encoder.EncoderModeIndex == -1 ? modes.Length - 1 : encoder.EncoderModeIndex;
labelEncoderMode.Text = encoder.EncoderMode;
labelEncoderMode.Text = encoder.settings.EncoderMode;
labelEncoderMinMode.Text = modes[0];
labelEncoderMaxMode.Text = modes[modes.Length - 1];
trackBarEncoderMode.Visible = true;
@@ -2487,8 +2487,8 @@ namespace JDP
{
CUEToolsUDC encoder = comboBoxEncoder.SelectedItem as CUEToolsUDC;
string[] modes = encoder.SupportedModes;
encoder.EncoderMode = modes[trackBarEncoderMode.Value];
labelEncoderMode.Text = encoder.EncoderMode;
encoder.settings.EncoderMode = modes[trackBarEncoderMode.Value];
labelEncoderMode.Text = encoder.settings.EncoderMode;
}
//private void toolStripButton1_Click(object sender, EventArgs e)

View File

@@ -471,22 +471,14 @@ namespace JDP
CUEToolsFormat format = _config.formats[encoder.extension]; // _config.formats.TryGetValue(encoder.extension, out format)
labelEncoderExtension.Visible = true;
comboBoxEncoderExtension.Visible = true;
comboBoxEncoderExtension.Enabled = encoder.path != null;
groupBoxExternalEncoder.Visible = encoder.path != null;
comboBoxEncoderExtension.Enabled = encoder.CanBeDeleted;
groupBoxExternalEncoder.Visible = encoder.CanBeDeleted;
checkBoxEncoderLossless.Enabled = format != null && format.allowLossless && format.allowLossy;
if (!checkBoxEncoderLossless.Enabled && format != null && encoder.Lossless != format.allowLossless)
encoder.Lossless = format.allowLossless;
if (encoder.settingsSerializer != null)
{
propertyGridEncoderSettings.Visible = encoder != null && encoder.settingsSerializer != null;
propertyGridEncoderSettings.SelectedObject = encoder.settings;
}
else
{
propertyGridEncoderSettings.Visible = false;
propertyGridEncoderSettings.SelectedObject = null;
}
foreach (KeyValuePair<string, CUEToolsFormat> fmtEntry in _config.formats)
propertyGridEncoderSettings.Visible = !encoder.CanBeDeleted;
propertyGridEncoderSettings.SelectedObject = encoder.CanBeDeleted ? null : encoder.settings;
if (!checkBoxEncoderLossless.Enabled && format != null && encoder.Lossless != format.allowLossless)
encoder.Lossless = format.allowLossless;
foreach (KeyValuePair<string, CUEToolsFormat> fmtEntry in _config.formats)
{
CUEToolsFormat fmt = fmtEntry.Value;
if (fmt.encoderLossless == encoder && (fmt.extension != encoder.extension || !encoder.Lossless))