void OnCreateComplete(object sender, RunWorkerCompletedEventArgs e) { m_progress_dialog.Dispose(); m_main.Activate(); if (null == m_pending_error) { Settings.Default.appLastCreatedArchive = m_arc_name; m_main.Dispatcher.Invoke(() => { m_main.ChangePosition(new DirectoryPosition(m_arc_name)); }); } else { if (m_pending_error is OperationCanceledException) { m_main.SetStatusText(m_pending_error.Message); } else { m_main.PopupError(m_pending_error.Message, guiStrings.TextCreateArchiveError); } } }