public TriggerOnEntry Subscribe(PropertyChangedEventHandler handler, TriggerPath path) { var e = new TriggerOnEntryNotifier(handler, this, path); _triggerOnEntries.Add(e); return(e); }
//public ITriggerEntry GetTrigger(Action<object, ExtendedPropertyChangedEventArgs> handler) //{ // var entry = new TriggerEntryNotifier(this, handler); // _triggerEntries.Add(entry); // return entry; //} public ITriggerEntry BuildTrigger(TriggerPath path, EventHandler <ExtendedPropertyChangedEventArgs> handler) { var entry = new TriggerEntryNotifierWithPath(this, path, handler); //_triggerEntries.Add(entry); return(entry); }
public TriggerEntryCollectionWithPath(IPropertyEntry propertyEntry, TriggerPath path, EventHandler <ExtendedPropertyChangedEventArgs> handler) : base(propertyEntry, handler) { _path = path; PropertyEntry.Link(OnPropertyChangedWithPath); }
public WeakTriggerEntryNotifierWithPath(IPropertyEntry propertyEntry, TriggerPath path, EventHandler <ExtendedPropertyChangedEventArgs> handler) : base(propertyEntry, handler) { _path = path; propertyEntry.Link(OnPropertyChangedWithPath); }
public void Subscribe(INotifierProperty triggeredProperty, INotifierProperty targetProperty, TriggerPath path) { GetPropertyEntry(targetProperty).Subscribe(GetPropertyEntry(triggeredProperty).OnTrigger, path); }
public void Subscribe(PropertyChangedEventHandler handler, TriggerPath path) { Debug.Assert(path != null); GetPropertyEntry(_class.GetProperty(path.PropertyName)).Subscribe(handler, path.Next); }