public ListAdapterWithAddNotifications(IList <T> source, ItemAddedEventHandler addedEventHandler, AddingItemEventHandler addingEventHandler) { this.Source = source; if (addingEventHandler != null) { this.AddingItem += addingEventHandler; // Fire events for existing source items, removing them as necessary source .Where(x => !ShouldIncludeItem(x)) .ToList() .ForEach(x => source.Remove(x)); } if (addedEventHandler != null) { this.ItemAdded += addedEventHandler; // Fire events for existing source items foreach (var item in source) { OnItemAdded(item); } } }
public CovariantCollectionAdapterWithAddNotifications( ICollection <TDerived> source, ItemAddedEventHandler addedEventHandler, AddingItemEventHandler addingEventHandler) : base(source) { if (addingEventHandler != null) { AddingItem += addingEventHandler; // Fire events for existing source items, removing them as necessary source .Where(x => !ShouldIncludeItem(x)) .ToList() .ForEach(x => source.Remove(x)); } if (addedEventHandler != null) { ItemAdded += addedEventHandler; // Fire events for existing source items foreach (var item in source) { OnItemAdded(item); } } }
public void Enqueue(T item) { queue.Enqueue(item); ItemAddedEventHandler handler = ItemAddedEvent; if (handler != null) { handler(); } }
protected void OnItemAddedEvent(object objSender, ItemAddedEventArgs <TObjectType> objArguments) { if (Initializing == false) { ItemAddedEventHandler <TObjectType> objHandler = ItemAddedEventAsync; if (objHandler != null) { AsyncHelper.FireAndForget(objHandler, objSender, objArguments); } objHandler = ItemAddedEvent; if (objHandler != null) { objHandler(objSender, objArguments); } } }
public CustomCollection(ItemAddedEventHandler handler) { myHandler = handler; }
public static void RegisterItemEvents([NotNull] DependencyObject ownerWindow, [CanBeNull] ItemAddedEventHandler added = null, [CanBeNull] ItemDeletedEventHandler deleted = null, [CanBeNull] ItemDuplicatedEventHandler duplicated = null, [CanBeNull] ItemModifiedEventHandler modified = null, [CanBeNull] ItemMovedEventHandler moved = null, [CanBeNull] ItemRenamedEventHandler renamed = null, [CanBeNull] ItemsSavedEventHandler saved = null, [CanBeNull] ItemXmlPastedEventHandler xmlPasted = null, [CanBeNull] ItemSerializedEventHandler serialized = null) { Assert.ArgumentNotNull(ownerWindow, nameof(ownerWindow)); if (added != null) { ItemAdded += added; } if (deleted != null) { ItemDeleted += deleted; } if (duplicated != null) { ItemDuplicated += duplicated; } if (modified != null) { ItemModified += modified; } if (moved != null) { ItemMoved += moved; } if (renamed != null) { ItemRenamed += renamed; } if (saved != null) { ItemsSaved += saved; } if (xmlPasted != null) { ItemXmlPasted += xmlPasted; } if (serialized != null) { ItemSerialized += serialized; } UnloadedEventHandler unloaded = null; unloaded = delegate(object sender, object o) { if (!ownerWindow.IsContainedIn(o)) { return; } if (added != null) { ItemAdded -= added; } if (deleted != null) { ItemDeleted -= deleted; } if (duplicated != null) { ItemDuplicated -= duplicated; } if (modified != null) { ItemModified -= modified; } if (moved != null) { ItemMoved -= moved; } if (renamed != null) { ItemRenamed -= renamed; } if (saved != null) { ItemsSaved -= saved; } if (xmlPasted != null) { ItemXmlPasted -= xmlPasted; } if (serialized != null) { ItemSerialized -= serialized; } Unloaded -= unloaded; }; Unloaded += unloaded; }
public ListAdapterWithAddNotifications(IList <T> source, ItemAddedEventHandler addedEventHandler) : this(source, addedEventHandler, null) { }
public CovariantIListAdapterWithAddNotifications(IList <TDerived> source, ItemAddedEventHandler addedEventHandler) : this(source, addedEventHandler, null) { }
public CollectionAdapterWithAddNotifications(ICollection <T> source, ItemAddedEventHandler addedEventHandler) : this(source, addedEventHandler, null) { }