Re: Aqua animations drawing from separate thread
Re: Aqua animations drawing from separate thread
- Subject: Re: Aqua animations drawing from separate thread
- From: BravoBug Software <email@hidden>
- Date: Sat, 15 Aug 2009 04:11:26 -0700
If you don't need to do secondary-thread drawing in your view, you
don't have to. You can check which thread is sending the -drawRect
method. Allow the subviews such as the aqua button to draw themselves,
and skip over any thread-unsafe custom -drawRect stuff in your
superview.
The only thing you would need to redraw in your superview is the tiny
rect surrounding the pulsing blue aqua button. I can't really imagine
what kind of complex thread-unsafe stuff would be going on in the tiny
spaces around the rounded-corner edges of the button. Seems like that
would typically be transparent, a background color/pattern, or
something similar. You should be able to supply that minimal amount of
drawing in a thread-safe fashion without too much difficulty.
On Fri, Aug 14, 2009 at 8:45 AM, Frederik
Slijkerman<email@hidden> wrote:
> Hi,
>
> Another question... I've noticed that Aqua animations, for example the
> pulsing default button, are implemented via a separate thread, which redraws
> the button repeatedly. This also causes the view (for example a custom view
> that I wrote myself) that contains the button to receive a drawRect message,
> of course.
>
> The problem is that this drawRect message is sent from the separate thread,
> which means that drawing in all my custom views needs to be thread-safe.
> This is a huge pain.
>
> Is there any way around this? Are you all always writing thread-safe
> drawRect handlers? It seems like a huge responsibility to make sure this
> will always work correctly...
>
> Thanks in advance!
>
> Best regards,
> Frederik Slijkerman
> _______________________________________________
>
> 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
>
_______________________________________________
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