Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/13/10 06:41:56 (14 years ago)
Author:
swagner
Message:

Implemented ReadOnlyView property for items (#969).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Collections/3.3/ReadOnlyObservableSet.cs

    r3019 r3317  
    3434
    3535    #region Properties
     36    public bool ReadOnlyView {
     37      get { return true; }
     38      set { throw new NotSupportedException(); }
     39    }
     40
    3641    public int Count {
    3742      get { return set.Count; }
     
    136141    }
    137142
     143    event EventHandler IObservableCollection<T>.ReadOnlyViewChanged {
     144      add { }
     145      remove { }
     146    }
     147
    138148    [field: NonSerialized]
    139149    public event CollectionItemsChangedEventHandler<T> ItemsAdded;
    140150    protected virtual void OnItemsAdded(IEnumerable<T> items) {
    141       if (ItemsAdded != null)
    142         ItemsAdded(this, new CollectionItemsChangedEventArgs<T>(items));
     151      CollectionItemsChangedEventHandler<T> handler = ItemsAdded;
     152      if (handler != null) handler(this, new CollectionItemsChangedEventArgs<T>(items));
    143153    }
    144154
     
    146156    public event CollectionItemsChangedEventHandler<T> ItemsRemoved;
    147157    protected virtual void OnItemsRemoved(IEnumerable<T> items) {
    148       if (ItemsRemoved != null)
    149         ItemsRemoved(this, new CollectionItemsChangedEventArgs<T>(items));
     158      CollectionItemsChangedEventHandler<T> handler = ItemsRemoved;
     159      if (handler != null) handler(this, new CollectionItemsChangedEventArgs<T>(items));
    150160    }
    151161
     
    153163    public event CollectionItemsChangedEventHandler<T> CollectionReset;
    154164    protected virtual void OnCollectionReset(IEnumerable<T> items, IEnumerable<T> oldItems) {
    155       if (CollectionReset != null)
    156         CollectionReset(this, new CollectionItemsChangedEventArgs<T>(items, oldItems));
     165      CollectionItemsChangedEventHandler<T> handler = CollectionReset;
     166      if (handler != null) handler(this, new CollectionItemsChangedEventArgs<T>(items, oldItems));
    157167    }
    158168
     
    160170    public event PropertyChangedEventHandler PropertyChanged;
    161171    protected virtual void OnPropertyChanged(string propertyName) {
    162       if (PropertyChanged != null)
    163         PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
     172      PropertyChangedEventHandler handler = PropertyChanged;
     173      if (handler != null) handler(this, new PropertyChangedEventArgs(propertyName));
    164174    }
    165175
Note: See TracChangeset for help on using the changeset viewer.