> The more I think about it, the more I believe that there shouldn't be any 
> comparison and that the caller should decide. If you call the method, you 
> want a redraw, so any equals() method would only add overhead, and possibly 
> stop the update you explicitly called for.

I tend to agree. I also don't think that this change needs to be applied to 
*all* setters - only setters that take a value without a specific type (i.e. 
Object) and fire change events. Setters with a more specific type have 
knowledge about the implications of performing an equality check and can decide 
whether it is appropriate or not. Untyped setters can't make such a 
determination so should not attempt to perform the check. This is also 
consistent with the behavior of List#update().


Reply via email to