/// ------------------------------------------------------------------------------------ public SessionRecorderDlg(SessionRecorderDlgViewModel viewModel) : this() { if (_moreReliableDesignMode) { return; } _viewModel = viewModel; _viewModel.UpdateAction += delegate { if (InvokeRequired) { BeginInvoke((Action)UpdateDisplay); return; } UpdateDisplay(); }; _viewModel.Recorder.PeakLevelChanged += ((s, e) => _peakMeter.PeakLevel = e.Level); _viewModel.Recorder.RecordingProgress += HandleRecorderProgress; _peakMeter = AudioUtils.CreatePeakMeterControl(_panelPeakMeter); SetupRecordingDeviceButton(); LocalizeItemDlg.StringsLocalized += HandleStringsLocalized; }