private void audioProfile_SelectedProfileChanged(object sender, EventArgs e) { if (lastCodec == AudCodecSettings.EncoderType) return; lastCodec = AudCodecSettings.EncoderType; Util.ChangeItemsKeepingSelectedSame(audioContainer, AudioEncoderProvider.GetSupportedOutput(lastCodec)); }
public void InitializeDropdowns() { audioCodec.Items.Clear(); audioCodec.Items.AddRange(MainForm.Instance.PackageSystem.AudioSettingsProviders.ValuesArray); try { audioCodec.SelectedItem = MainForm.Instance.PackageSystem.AudioSettingsProviders["NAAC"]; } catch (Exception) { try { audioCodec.SelectedIndex = 0; } catch (Exception) { MessageBox.Show("No valid audio codecs are set up", "No valid audio codecs", MessageBoxButtons.OK, MessageBoxIcon.Error); } } fileTypeHandler = new FileTypeHandler <AudioType>(audioContainer, audioCodec, new FileTypeHandler <AudioType> .SupportedOutputGetter(delegate { return(audioEncoderProvider.GetSupportedOutput(codecHandler.CurrentSettingsProvider.EncoderType)); })); codecHandler = new MultipleConfigurersHandler <AudioCodecSettings, string[], AudioCodec, AudioEncoderType>(audioCodec); profileHandler = new ProfilesControlHandler <AudioCodecSettings, string[]>("Audio", MainForm.Instance, profileControl1, codecHandler.EditSettings, new InfoGetter <string[]>(delegate { return(new string[] { AudioInput, AudioOutput }); }), codecHandler.Getter, codecHandler.Setter); codecHandler.Register(profileHandler); fileTypeHandler.RefreshFiletypes(); }