public EditDefaultCodecHeader CreateEditDefaultCodecHeaderWindow() { if (_editDefaultCodecHeader != null) { return(_editDefaultCodecHeader); } _editDefaultCodecHeader = _editDefaultCodecHeaderCreator(); _editDefaultCodecHeader.Closed += new EventHandler(editDefaultCodecHeaderWindow_Closed); return(_editDefaultCodecHeader); }
public void AskChangeDefaultCodecHeader(FFmpegResult ffmpegResult, IWin32Window windowOwner) { if (ffmpegResult.Bitmap == null && !IsWindowOpen() && !_backgroundFileScanner.IsBusy) { // Check if it is a key frame. When true we should be able to decode it. IResultNode resultNode = ffmpegResult.SourcePacket; if (resultNode != null && resultNode.IsKeyframe()) { if (DialogResult.Yes == MessageBox.Show( "Defraser couldn't detect the video headers of this frame. Do you want to use a reference header to decode this frame?", "Header Not Found.", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2)) { EditDefaultCodecHeader editDefaultCodecHeader = CreateEditDefaultCodecHeaderWindow(); editDefaultCodecHeader.SelectCodec(ffmpegResult.SourcePacket.DataFormat); editDefaultCodecHeader.ShowDialog(windowOwner); } } } }
private void editDefaultCodecHeaderWindow_Closed(object sender, EventArgs e) { _editDefaultCodecHeader.Closed -= new EventHandler(editDefaultCodecHeaderWindow_Closed); _editDefaultCodecHeader = null; }