private void Indexer_ProgressChanged(object sender, ProgressChangedEventArgs e)
{
IndexingProgress ip = (IndexingProgress)e.UserState;
if (!String.IsNullOrEmpty(ip.Message))
{
textBox.AppendText(ip.Message + Environment.NewLine);
}
if (!String.IsNullOrEmpty(ip.ETA))
{
labelETA.Text = String.Format(Properties.Resources.ETA, ip.ETA);
}
if (e.ProgressPercentage > 0)
{
progressBar.Value = e.ProgressPercentage;
}
if (ip.IndexingState == IndexingProgress.State.Failure)
{
btnDone.Text = Properties.Resources.CloseIndexingForm;
}
if (ip.IndexingState == IndexingProgress.State.Finished)
{
indexingRunning = false;
labelETA.Text = Properties.Resources.IndexingDoneETA;
DialogResult = btnDone.Enabled ? DialogResult.OK : DialogResult.Abort;
Close();
}
}