public void UpdateProgress(int complete, int total)
 {
     Debug.Assert(complete <= total, "Progress completed has exceeded total!");
     // Don't let completed progress exceed the total
     this.complete = Math.Min(complete, total);
     this.total    = total;
     parent.ProgressUpdated();
 }