Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
09/14/12 18:58:15 (12 years ago)
Author:
gkronber
Message:

#1847 merged r8205:8635 from trunk into branch

Location:
branches/GP-MoveOperators
Files:
7 edited
3 copied

Legend:

Unmodified
Added
Removed
  • branches/GP-MoveOperators

  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/CollectionItemsChangedEventArgs.cs

    r7259 r8660  
    2222using System;
    2323using System.Collections.Generic;
     24using System.Linq;
    2425
    2526namespace HeuristicLab.Collections {
     
    3637    public CollectionItemsChangedEventArgs(IEnumerable<T> items) {
    3738      this.items = items;
    38       this.oldItems = null;
     39      this.oldItems = Enumerable.Empty<T>();
    3940    }
    4041    public CollectionItemsChangedEventArgs(IEnumerable<T> items, IEnumerable<T> oldItems) {
  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/HeuristicLab.Collections-3.3.csproj

    r6866 r8660  
    114114  <ItemGroup>
    115115    <None Include="Plugin.cs.frame" />
     116    <Compile Include="ReadOnlyObservableKeyedList.cs" />
    116117    <Compile Include="INotifyObservableListItemsChanged.cs" />
    117118    <Compile Include="INotifyObservableKeyedCollectionItemsChanged.cs" />
     
    119120    <Compile Include="INotifyObservableCollectionItemsChanged.cs" />
    120121    <Compile Include="INotifyObservableArrayItemsChanged.cs" />
     122    <Compile Include="IObservableKeyedList.cs" />
     123    <Compile Include="ObservableKeyedList.cs" />
    121124    <Compile Include="Plugin.cs" />
    122125    <Compile Include="ReadOnlyObservableArray.cs" />
     
    189192  -->
    190193  <PropertyGroup>
    191     <PreBuildEvent>set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
     194    <PreBuildEvent Condition=" '$(OS)' == 'Windows_NT' ">set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
    192195set ProjectDir=$(ProjectDir)
    193196set SolutionDir=$(SolutionDir)
     
    196199call PreBuildEvent.cmd
    197200</PreBuildEvent>
     201    <PreBuildEvent Condition=" '$(OS)' != 'Windows_NT' ">
     202export ProjectDir=$(ProjectDir)
     203export SolutionDir=$(SolutionDir)
     204
     205$SolutionDir/PreBuildEvent.sh
     206</PreBuildEvent>
    198207  </PropertyGroup>
    199208</Project>
  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/ObservableList.cs

    r7259 r8660  
    158158      int capacity = list.Capacity;
    159159      list.Add(item);
     160      OnItemsAdded(new IndexedItem<T>[] { new IndexedItem<T>(list.Count - 1, item) });
     161      OnItemsAdded(new T[] { item });
    160162      if (list.Capacity != capacity)
    161163        OnPropertyChanged("Capacity");
    162164      OnPropertyChanged("Item[]");
    163165      OnPropertyChanged("Count");
    164       OnItemsAdded(new IndexedItem<T>[] { new IndexedItem<T>(list.Count - 1, item) });
    165       OnItemsAdded(new T[] { item });
    166166    }
    167167    public void AddRange(IEnumerable<T> collection) {
     
    175175      }
    176176      if (items.Count > 0) {
     177        OnItemsAdded(items);
     178        OnItemsAdded(collection);
    177179        if (list.Capacity != capacity)
    178180          OnPropertyChanged("Capacity");
    179181        OnPropertyChanged("Item[]");
    180182        OnPropertyChanged("Count");
    181         OnItemsAdded(items);
    182         OnItemsAdded(collection);
    183183      }
    184184    }
     
    187187      int capacity = list.Capacity;
    188188      list.Insert(index, item);
     189      OnItemsAdded(new IndexedItem<T>[] { new IndexedItem<T>(index, item) });
     190      OnItemsAdded(new T[] { item });
    189191      if (list.Capacity != capacity)
    190192        OnPropertyChanged("Capacity");
    191193      OnPropertyChanged("Item[]");
    192194      OnPropertyChanged("Count");
    193       OnItemsAdded(new IndexedItem<T>[] { new IndexedItem<T>(index, item) });
    194       OnItemsAdded(new T[] { item });
    195195    }
    196196    public void InsertRange(int index, IEnumerable<T> collection) {
     
    203203      }
    204204      if (items.Count > 0) {
     205        OnItemsAdded(items);
     206        OnItemsAdded(collection);
    205207        if (list.Capacity != capacity)
    206208          OnPropertyChanged("Capacity");
    207209        OnPropertyChanged("Item[]");
    208210        OnPropertyChanged("Count");
    209         OnItemsAdded(items);
    210         OnItemsAdded(collection);
    211211      }
    212212    }
     
    229229      else items = new List<IndexedItem<T>>();
    230230
     231      OnItemsReplaced(items, oldItems);
    231232      if (oldCapacity != list.Capacity) OnPropertyChanged("Capacity");
    232233      OnPropertyChanged("Item[]");
    233234      if (oldItems.Count != items.Count) OnPropertyChanged("Count");
    234       OnItemsReplaced(items, oldItems);
    235235    }
    236236
     
    239239      if (index != -1) {
    240240        list.RemoveAt(index);
    241         OnPropertyChanged("Item[]");
    242         OnPropertyChanged("Count");
    243241        OnItemsRemoved(new IndexedItem<T>[] { new IndexedItem<T>(index, item) });
    244242        OnItemsRemoved(new T[] { item });
     243        OnPropertyChanged("Item[]");
     244        OnPropertyChanged("Count");
    245245        return true;
    246246      }
     
    260260      if (indexedItems.Count > 0) {
    261261        result = list.RemoveAll(match);
    262         OnPropertyChanged("Item[]");
    263         OnPropertyChanged("Count");
    264262        OnItemsRemoved(indexedItems);
    265263        OnItemsRemoved(items);
     264        OnPropertyChanged("Item[]");
     265        OnPropertyChanged("Count");
    266266      }
    267267      return result;
     
    270270      T item = list[index];
    271271      list.RemoveAt(index);
     272      OnItemsRemoved(new IndexedItem<T>[] { new IndexedItem<T>(index, item) });
     273      OnItemsRemoved(new T[] { item });
    272274      OnPropertyChanged("Item[]");
    273275      OnPropertyChanged("Count");
    274       OnItemsRemoved(new IndexedItem<T>[] { new IndexedItem<T>(index, item) });
    275       OnItemsRemoved(new T[] { item });
    276276    }
    277277    public void RemoveRange(int index, int count) {
     
    281281        list.CopyTo(index, items, 0, count);
    282282        list.RemoveRange(index, count);
    283         OnPropertyChanged("Item[]");
    284         OnPropertyChanged("Count");
    285283        OnItemsRemoved(indexedItems);
    286284        OnItemsRemoved(items);
     285        OnPropertyChanged("Item[]");
     286        OnPropertyChanged("Count");
    287287      }
    288288    }
     
    293293        T[] items = list.ToArray();
    294294        list.Clear();
    295         OnPropertyChanged("Item[]");
    296         OnPropertyChanged("Count");
    297295        OnCollectionReset(new IndexedItem<T>[0], indexedItems);
    298296        OnCollectionReset(new T[0], items);
     297        OnPropertyChanged("Item[]");
     298        OnPropertyChanged("Count");
    299299      }
    300300    }
     
    304304        IndexedItem<T>[] oldItems = GetIndexedItems();
    305305        list.Reverse();
    306         OnPropertyChanged("Item[]");
    307306        OnItemsMoved(GetIndexedItems(), oldItems);
     307        OnPropertyChanged("Item[]");
    308308      }
    309309    }
     
    312312        IndexedItem<T>[] oldItems = GetIndexedItems(index, count);
    313313        list.Reverse(index, count);
    314         OnPropertyChanged("Item[]");
    315314        OnItemsMoved(GetIndexedItems(index, count), oldItems);
     315        OnPropertyChanged("Item[]");
    316316      }
    317317    }
     
    321321        IndexedItem<T>[] oldItems = GetIndexedItems();
    322322        list.Sort();
    323         OnPropertyChanged("Item[]");
    324323        OnItemsMoved(GetIndexedItems(), oldItems);
     324        OnPropertyChanged("Item[]");
    325325      }
    326326    }
     
    329329        IndexedItem<T>[] oldItems = GetIndexedItems();
    330330        list.Sort(comparison);
    331         OnPropertyChanged("Item[]");
    332331        OnItemsMoved(GetIndexedItems(), oldItems);
     332        OnPropertyChanged("Item[]");
    333333      }
    334334    }
     
    337337        IndexedItem<T>[] oldItems = GetIndexedItems();
    338338        list.Sort(comparer);
    339         OnPropertyChanged("Item[]");
    340339        OnItemsMoved(GetIndexedItems(), oldItems);
     340        OnPropertyChanged("Item[]");
    341341      }
    342342    }
     
    345345        IndexedItem<T>[] oldItems = GetIndexedItems(index, count);
    346346        list.Sort(index, count, comparer);
    347         OnPropertyChanged("Item[]");
    348347        OnItemsMoved(GetIndexedItems(index, count), oldItems);
     348        OnPropertyChanged("Item[]");
    349349      }
    350350    }
     
    355355      return new ReadOnlyObservableList<T>(this);
    356356    }
     357
    357358    public T[] ToArray() {
    358359      return list.ToArray();
  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/Plugin.cs.frame

    r7259 r8660  
    2626  /// Plugin class for HeuristicLab.Collections plugin.
    2727  /// </summary>
    28   [Plugin("HeuristicLab.Collections", "3.3.6.$WCREV$")]
     28  [Plugin("HeuristicLab.Collections", "3.3.7.$WCREV$")]
    2929  [PluginFile("HeuristicLab.Collections-3.3.dll", PluginFileType.Assembly)]
    3030  [PluginDependency("HeuristicLab.Persistence", "3.3")]
  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/Properties/AssemblyInfo.cs.frame

    r7259 r8660  
    5454// by using the '*' as shown below:
    5555[assembly: AssemblyVersion("3.3.0.0")]
    56 [assembly: AssemblyFileVersion("3.3.6.$WCREV$")]
     56[assembly: AssemblyFileVersion("3.3.7.$WCREV$")]
  • branches/GP-MoveOperators/HeuristicLab.Collections/3.3/ReadOnlyObservableList.cs

    r7259 r8660  
    120120
    121121    #region Events
    122     protected void RegisterEvents() {
     122    private void RegisterEvents() {
    123123      list.ItemsAdded += new CollectionItemsChangedEventHandler<IndexedItem<T>>(list_ItemsAdded);
    124124      ((IObservableCollection<T>)list).ItemsAdded += new CollectionItemsChangedEventHandler<T>(list_ItemsAdded);
Note: See TracChangeset for help on using the changeset viewer.