On Apr 19, 2008, at 5:15 PM, William Hunt wrote:

Essentially I have a window with a custom view atop a button. What happens at each refresh, however, is that the custom view's drawRect: is called twice. First it is called with the whole window's NSRect, then it is called with the "proper" NSRect. The result is that if I draw a circle at (0,0), it gets drawn twice at different locations:

What is going on here? Is this buggy behavior or correct behavior? My code is basically a new Cocoa application with a single NSView subclass. There is absolutely nothing funny (that I know of) going on here. That leads me to believe that the behavior is "correct," and that I'm just missing something.

For the record, I only want the one call to drawRect:, the one with the "proper" NSRect.


FYI, the "proper" rect is not guaranteed to be the bounds rect of your view either. If Cocoa only needs you to refresh a subsection of your view, then you will get a -drawRect: with just that subsection. In general, you should only use the rect passed to you in -drawRect: as a guideline for what needs to be updated (i.e. for rejection tests) rather than to define the coordinate system to draw into.
--
David Duncan
Apple DTS Animation and Printing
[EMAIL PROTECTED]



_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to