protected DescriptorBase(Authentication authentication, object target, DescriptorTypes descriptorTypes) { this.authentication = authentication; this.target = target; this.descriptorTypes = descriptorTypes; if (this.descriptorTypes.HasFlag(DescriptorTypes.IsSubscriptable) == true) { this.notifier = new DescriptorPropertyNotifier(this); this.Dispatcher.InvokeAsync(this.notifier.Save); } }
protected DescriptorTreeItemBase(Authentication authentication, T descriptor, object owner) { this.authentication = authentication; this.descriptor = descriptor; this.descriptor.PropertyChanged += Descriptor_PropertyChanged; this.descriptor.Disposed += Descriptor_Disposed; this.notifier = new DescriptorPropertyNotifier(this, item => this.NotifyOfPropertyChange(item)); this.Dispatcher.InvokeAsync(this.notifier.Save); this.Target = descriptor.Target; this.Owner = owner; }
protected DescriptorBase(Authentication authentication, object target, IDescriptorBase referenceTarget, bool isSubscriptable) { this.authentication = authentication; this.referenceTarget = referenceTarget; this.target = target; this.descriptorTypes = isSubscriptable == true ? DescriptorTypes.IsSubscriptable : DescriptorTypes.None; this.Initialize(); if (this.descriptorTypes.HasFlag(DescriptorTypes.IsSubscriptable) == true) { this.notifier = new DescriptorPropertyNotifier(this); this.Dispatcher.InvokeAsync(this.notifier.Save); this.referenceTarget.PropertyChanged += ReferenceTarget_PropertyChanged; this.referenceTarget.Disposed += ReferenceTarget_Disposed; } }