Re: What paradigm behind NSColor's drawing methods?
Re: What paradigm behind NSColor's drawing methods?
- Subject: Re: What paradigm behind NSColor's drawing methods?
- From: Jerry Krinock <email@hidden>
- Date: Fri, 1 Feb 2008 13:18:27 -0800
On 2008 Feb, 01, at 12:47, glenn andreas wrote:
What circumstances are you running into that not having an explicit
drawing context parameter is a problem?
Drawing a focus ring, in -drawRect of a custom control...
[NSGraphicsContext saveGraphicsState];
NSSetFocusRingStyle(NSFocusRingOnly);
[[NSColor keyboardFocusIndicatorColor] set];
NSFrameRect([self visibleRect]);
[NSGraphicsContext restoreGraphicsState];
In the Cocoa Drawing Guide I read that:
"Important: Saving and restoring the current graphics state is an
expensive operation and should done as little as possible. With the
exception of clipping paths, most state attributes can be undone
manually in your code without saving and restoring the entire state."
They seem to be suggesting that instead of -saveGraphicsState and -
restoreGraphicsState, I should manually "get" the color and the
FocusRingStyle before "setting", so I can set them back to their
original values after I am done. But I can't do that because there
are no getters for these.
As far as the rest of your reply, OK I understand that there are many
other methods that use the drawing context as an implied "object",
that this is done for convenience, and I should orient my thinking
into this paradigm. Thanks for the explanation.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
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:
This email sent to email@hidden