User: cneuwirt
Date: 2010/01/24 11:11 AM

Modified:
 /Components/DictionaryAdapter/trunk/src/
  Changes.txt
 
/Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter.Tests/
  AssemblyInfo.cs
 /Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/
  AssemblyInfo.cs, DictionaryAdapterBase.Validate.cs, 
DictionaryValidateGroup.cs, IDictionaryValidate.cs

Log:
 Made IDictionaryValidate return DictionaryValidateGroup
 Make DictionaryValidateGroup implement IDisposable

File Changes:

Directory: 
/Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/
=======================================================================================

File [modified]: AssemblyInfo.cs
Delta lines: +1 -1
===================================================================

--- 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/DictionaryAdapterBase.Validate.cs
        2010-01-22 22:04:51 UTC (rev 6711)
+++ 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/DictionaryAdapterBase.Validate.cs
        2010-01-24 18:11:14 UTC (rev 6712)
@@ -67,7 +67,7 @@
                        }
                }
 
-               public IDictionaryValidate ValidateGroups(params object[] 
groups)
+               public DictionaryValidateGroup ValidateGroups(params object[] 
groups)
                {
                        return new DictionaryValidateGroup(groups, this);

File [modified]: DictionaryAdapterBase.Validate.cs
Delta lines: +10 -5
===================================================================

--- 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/DictionaryValidateGroup.cs
       2010-01-22 22:04:51 UTC (rev 6711)
+++ 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/DictionaryValidateGroup.cs
       2010-01-24 18:11:14 UTC (rev 6712)
@@ -19,11 +19,12 @@
        using System.ComponentModel;
        using System.Linq;
 
-       public class DictionaryValidateGroup : IDictionaryValidate, 
INotifyPropertyChanged
+       public class DictionaryValidateGroup : IDictionaryValidate, 
INotifyPropertyChanged, IDisposable
        {
                private readonly object[] _groups;
         private readonly IDictionaryAdapter _adapter;
                private readonly string[] _propertyNames;
+               private readonly PropertyChangedEventHandler _propertyChanged;
 
                public DictionaryValidateGroup(object[] groups, 
IDictionaryAdapter adapter)
                {
@@ -37,13 +38,12 @@
 
                        if (_propertyNames.Length > 0 && adapter.CanNotify)
                        {
-                               _adapter.PropertyChanged += (sender, args) =>
+                               _propertyChanged += (sender, args) =>
                                {
                                        if (PropertyChanged != null)
-                                       {
                                                PropertyChanged(this, args);
-                                       }
                                };
+                               _adapter.PropertyChanged += _propertyChanged;
                        }
                }
 
@@ -82,7 +82,7 @@
                        }
                }
 
-               public IDictionaryValidate ValidateGroups(params object[] 
groups)
+               public DictionaryValidateGroup ValidateGroups(params object[] 
groups)
                {
                        groups = _groups.Union(groups).ToArray();
                        return new DictionaryValidateGroup(groups, _adapter);
@@ -97,5 +97,10 @@
                {
                        throw new NotSupportedException();
                }
+
+               public void Dispose()
+               {
+                       _adapter.PropertyChanged -= _propertyChanged;
+               }
        }

File [modified]: DictionaryValidateGroup.cs
Delta lines: +1 -1
===================================================================

--- 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/IDictionaryValidate.cs
   2010-01-22 22:04:51 UTC (rev 6711)
+++ 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter/IDictionaryValidate.cs
   2010-01-24 18:11:14 UTC (rev 6712)
@@ -26,7 +26,7 @@
 
                bool IsValid { get; }
 
-               IDictionaryValidate ValidateGroups(params object[] groups);
+               DictionaryValidateGroup ValidateGroups(params object[] groups);
 
                IEnumerable<IDictionaryValidator> Validators { get; }

File [modified]: IDictionaryValidate.cs
Delta lines: +3 -3
===================================================================

--- 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter.Tests/AssemblyInfo.cs
    2010-01-22 22:04:51 UTC (rev 6711)
+++ 
Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter.Tests/AssemblyInfo.cs
    2010-01-24 18:11:14 UTC (rev 6712)
@@ -6,7 +6,7 @@
 
//------------------------------------------------------------------------------
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:2.0.50727.3053
+//     Runtime Version:2.0.50727.4927
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
 //     the code is regenerated.
@@ -21,7 +21,7 @@
 [assembly: 
AssemblyProductAttribute("Castle.Components.DictionaryAdapter.Tests")]
 [assembly: AssemblyCopyrightAttribute("Castle Project, original author or 
authors")]
 [assembly: AssemblyVersionAttribute("1.1.0.0")]
-[assembly: AssemblyInformationalVersionAttribute("1.1.0.6280")]
-[assembly: AssemblyFileVersionAttribute("1.1.0.6280")]
+[assembly: AssemblyInformationalVersionAttribute("1.1.0.6543")]
+[assembly: AssemblyFileVersionAttribute("1.1.0.6543")]
 [assembly: AssemblyDelaySignAttribute(false)]

Directory: 
/Components/DictionaryAdapter/trunk/src/Castle.Components.DictionaryAdapter.Tests/
=============================================================================================

File [modified]: AssemblyInfo.cs
Delta lines: +5 -2
===================================================================

--- Components/DictionaryAdapter/trunk/src/Changes.txt  2010-01-22 22:04:51 UTC 
(rev 6711)
+++ Components/DictionaryAdapter/trunk/src/Changes.txt  2010-01-24 18:11:14 UTC 
(rev 6712)
@@ -1,4 +1,4 @@
-RC 4
+V1.1
 ====
 
 - Group meta and instance properties together
@@ -36,6 +36,10 @@
 - Simplied internals and added support for IEditableObject
 
 - Added support for INotifyPropertyChanged
+
+
+RC 4
+====
  
 - Resolved COMP-ISSUE-105 to allow properties to be redefined to add write 
access
 
@@ -56,4 +60,4 @@
 
 - Return default(T) for value type properties not in the dictionary
 
-- Moved for CastleContrib/Castle.Tools.CodeGenerator
\ No newline at end of file

Directory: /Components/DictionaryAdapter/trunk/src/
===================================================

File [modified]: Changes.txt
Delta lines: +0 -0
===================================================================

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-commits?hl=en.

Reply via email to