2007-04-27 Chris Toshok <toshok@ximian.com>
commitd31a73f60571e18c82ff5e766d66fdb8380ada17
authortoshok <toshok@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Fri, 27 Apr 2007 19:38:33 +0000 (27 19:38 +0000)
committertoshok <toshok@e3ebcda4-bce8-0310-ba0a-eca2169e7518>
Fri, 27 Apr 2007 19:38:33 +0000 (27 19:38 +0000)
tree3b69b820b7c3a1efb1d22bf4783b7e782f1798fb
parent58c144f72ac227701857e5ff51939335b8025139
2007-04-27  Chris Toshok  <toshok@ximian.com>

* BindingManagerBase.cs: fill in CurrentItemChanged (and have an
internal handler that can be invoked from our subclasses.)  Also,
add a comment to PushData about how we need to fix it.

* CurrencyManager.cs: tons of changes here.  trying to get things
matching the behavior of .net wrt event orders (ItemChanged,
CurrentChanged, PositionChanged.)  I've implemented a private .net
symbol (ChangeRecordState) that appears in stack traces because
it's actually easier to do this than to effective inline all its
various behaviors at every call site.

* RelatedPropertyManager.cs: guard against an exception here by
not using parent.Current if the position is set to -1 (if the
parent datasource is cleared, for instance).

* Binding.cs: don't parse data in PushData (this might be wrong,
but it jives with MS's behavior.)  Also, don't call PushData when
we get a CurrentChanged event.

git-svn-id: svn+ssh://mono-cvs.ximian.com/source/trunk/mcs@76401 e3ebcda4-bce8-0310-ba0a-eca2169e7518
class/Managed.Windows.Forms/System.Windows.Forms/Binding.cs
class/Managed.Windows.Forms/System.Windows.Forms/BindingManagerBase.cs
class/Managed.Windows.Forms/System.Windows.Forms/ChangeLog
class/Managed.Windows.Forms/System.Windows.Forms/CurrencyManager.cs
class/Managed.Windows.Forms/System.Windows.Forms/RelatedPropertyManager.cs