Index: src/DeltaShell/DeltaShell.Gui/Forms/ProgressDialog/ActivityInfo.cs =================================================================== diff -u -r8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9 -r5fc71a385897af92ccb092f2f969b5709afab85a --- src/DeltaShell/DeltaShell.Gui/Forms/ProgressDialog/ActivityInfo.cs (.../ActivityInfo.cs) (revision 8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9) +++ src/DeltaShell/DeltaShell.Gui/Forms/ProgressDialog/ActivityInfo.cs (.../ActivityInfo.cs) (revision 5fc71a385897af92ccb092f2f969b5709afab85a) @@ -10,10 +10,23 @@ /// Class wrapper an IActivity to make it bindable and evented etc. /// Used in progressdialog only /// - internal class ActivityInfo:INotifyPropertyChanged + internal class ActivityInfo : INotifyPropertyChanged { + public event PropertyChangedEventHandler PropertyChanged; private readonly IActivity activity; + public ActivityInfo(IActivity activity) + { + this.activity = activity; + + activity.ProgressChanged += ActivityInfoProgressChanged; + + if (this.activity is INotifyPropertyChanged) + { + (this.activity as INotifyPropertyChanged).PropertyChanged += ActivityInfoPropertyChanged; + } + } + public string ProgressText { get @@ -48,36 +61,26 @@ } } - public ActivityInfo(IActivity activity) + private void ActivityInfoPropertyChanged(object sender, PropertyChangedEventArgs e) { - this.activity = activity; - - activity.ProgressChanged += ActivityInfoProgressChanged; - - if (this.activity is INotifyPropertyChanged) + //a name change changes the wrapper name + if (e.PropertyName == TypeUtils.GetMemberName(() => Name)) { - (this.activity as INotifyPropertyChanged).PropertyChanged += ActivityInfoPropertyChanged; + OnPropertyChanged(TypeUtils.GetMemberName(() => Name)); } } - void ActivityInfoPropertyChanged(object sender, PropertyChangedEventArgs e) + private void ActivityInfoProgressChanged(object sender, EventArgs e) { - //a name change changes the wrapper name - if (e.PropertyName == TypeUtils.GetMemberName(() => Name)) - OnPropertyChanged(TypeUtils.GetMemberName(()=>Name)); - } - - void ActivityInfoProgressChanged(object sender, EventArgs e) - { OnPropertyChanged(TypeUtils.GetMemberName(() => ProgressText)); } private void OnPropertyChanged(string propertyName) { if (PropertyChanged != null) + { PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); + } } - - public event PropertyChangedEventHandler PropertyChanged; } } \ No newline at end of file