+// Target and Action +// +// N.B: These methods are overridden so that the instances doesn't raise an +// exception when they receive a target or action message.
This comment is very misleading (in the same way that confused the original discussion about this). The methods are overridden because NSImageCell has a target and an action, unlike NSCell. The fact that the methods don't throw exceptions is just a side-effect of this; it is not the purpose of the change.
I understand what you said/is saying now. The purpose of the comment was for those who didn't believe NSImageView can receive target/action messages. Rather I should have put there the URL of the document about it, instead of the misleading comments.
+ [aCoder encodeConditionalObject: _control_view];
The control view shouldn't be encoded. (NSActionCell used to get this wrong; I'm guessing that's where it's from.)
I agree. The ivar is to be set through a method, and thus should not be encoded there. I was wrong; I added the line, blindly following the implementation of NSActionCell.
--- gui/Source/NSImageView.m 2003-12-29 13:57:43.000000000 +0900
+ if ([sender draggingSource] == self || ![self isEditable])
-prepareForDragOperation: already checks this, so checking it again here is unnecessary.
Because I though the state of the object might be changed by another thread while dragging, I added the line for safety. If this argument is not applicable, it is redundant and therefore unnecessary.
Thank you for sharing your time for that.
Anyway, unless there are any other ideas about what to do about this, I'll commit this (with the above issues fixed) soon.
- Kazunobu Kuriyama
_______________________________________________ Bug-gnustep mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gnustep
