void ReadSourceSettings(SourceSettings settings) { SuspendLayout(); radioButtonLetterBox.Checked = settings.SourceAspectFit == SourceAspectFit.LetterBox; radioButtonStrech.Checked = settings.SourceAspectFit == SourceAspectFit.Strech; radioButtonSourceBased.Checked = !settings.FixedResolution; radioButtonOutputBased.Checked = settings.FixedResolution; textWidth.Text = settings.ResolutionWidth.ToString(); textHeight.Text = settings.ResolutionHeight.ToString(); textWidthMulti.Text = settings.MultiplyerWidth.ToString(); textHeightMulti.Text = settings.MultiplyerHeight.ToString(); customMulti = !TrySelectWidthHeightFromList(listBoxSource, settings.MultiplyerWidth, settings.MultiplyerHeight); customResolution = !TrySelectWidthHeightFromList(listBoxOutput, settings.ResolutionWidth, settings.ResolutionHeight); UpdateEnabled(); ResumeLayout(); }
void Apply(bool store) { var settings = new SourceSettings(); var audioSettings = new AudioSettings(); WriteSourceSettings(ref settings); WriteAudioSettings(ref audioSettings); if (OnApply != null) { OnApply(settings, audioSettings, store); } }
// TODO : Implment Strech // TODO : Implement Mute void ApplySettings(SourceSettings sourceSettings, AudioSettings audioSettings) { VMRAspectRatioMode aspectRatioMode = sourceSettings.SourceAspectFit == SourceAspectFit.LetterBox ? VMRAspectRatioMode.LetterBox : VMRAspectRatioMode.None; if (aspectRatioControl != null) { aspectRatioControl.SetAspectRatioMode(aspectRatioMode); } if (aspectRatioControl9 != null) { aspectRatioControl9.SetAspectRatioMode(aspectRatioMode); } }
void WriteSourceSettings(ref SourceSettings settings) { settings.SourceAspectFit = radioButtonLetterBox.Checked ? SourceAspectFit.LetterBox : SourceAspectFit.Strech; settings.FixedResolution = radioButtonOutputBased.Checked; GetWidthHeight(listBoxSource, textWidthMulti, textHeightMulti, out settings.MultiplyerWidth, out settings.MultiplyerHeight); GetWidthHeight(listBoxOutput, textWidth, textHeight, out settings.ResolutionWidth, out settings.ResolutionHeight); }
void SettingsApply(SourceSettings settings, AudioSettings audioSettings, bool store) { ApplySettings(settings, audioSettings); if (store) { if (activeSource != null) { Program.State.SetSettings(activeSource.Name, settings); } if (activeAudio != null) { Program.State.SetSettings(activeAudio.Name, audioSettings); } Program.State.SaveSettings(); } }
void ApplySettings(SourceSettings settings, AudioSettings audioSettings) { SuspendLayout(); var size = ClientSize; if (settings.FixedResolution) { size.Width = settings.ResolutionWidth; size.Height = settings.ResolutionHeight; } else if (captureView.SourceWidth != 0 && captureView.SourceHeight != 0) { size.Width = settings.MultiplyerWidth * captureView.SourceWidth; size.Height = settings.MultiplyerHeight * captureView.SourceHeight; } ClientSize = size; captureView.SourceSettings = settings; captureView.AudioSettings = audioSettings; ResumeLayout(); }