Widow

Subversion Repositories:
Compare Path: Rev
With Path: Rev
?path1? @ 11  →  ?path2? @ 12
/trunk/Windows/Windows.cs
@@ -27,19 +27,19 @@
}
 
_window.CollectionChanged -= Window_CollectionChanged;
 
_window.Clear();
 
_windows.Clear();
foreach (var window in value)
{
_window.Add(window);
 
if (_windows.Contains(window.Title))
if (_windows.ContainsKey(window.Title))
{
continue;
}
 
_windows.Add(window.Title);
_windows.Add(window.Title, window);
}
 
_window.CollectionChanged += Window_CollectionChanged;
@@ -53,7 +53,7 @@
 
private readonly ObservableCollection<Window> _window = new ObservableCollection<Window>();
 
private readonly HashSet<string> _windows = new HashSet<string>();
private readonly Dictionary<string, Window> _windows = new Dictionary<string, Window>();
 
#endregion
 
@@ -86,7 +86,7 @@
{
foreach (var window in e.OldItems.OfType<Window>())
{
if (_windows.Contains(window.Title))
if (_windows.ContainsKey(window.Title))
{
_windows.Remove(window.Title);
}
@@ -98,9 +98,9 @@
{
foreach (var window in e.NewItems.OfType<Window>())
{
if (!_windows.Contains(window.Title))
if (!_windows.ContainsKey(window.Title))
{
_windows.Add(window.Title);
_windows.Add(window.Title, window);
}
}
}
@@ -110,9 +110,9 @@
 
#region Public Methods
 
public bool Contains(string hash)
public bool TryGetWindow(string title, out Window window)
{
return _windows.Contains(hash);
return _windows.TryGetValue(title, out window);
}
 
#endregion