• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Uninitialized rectangle??
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Uninitialized rectangle??


  • Subject: Re: Uninitialized rectangle??
  • From: fabian <email@hidden>
  • Date: Thu, 4 Mar 2010 18:05:31 +0100

On Thu, Mar 4, 2010 at 5:28 PM, Jens Alfke <email@hidden> wrote:

>
> On Mar 4, 2010, at 12:42 AM, fabian wrote:
>
> > Right. But why should it matter? The system status bar is not in the nib.
> Just curious about what is going on behind the scenes...
>
> The status bar is in the menu bar, and the menu bar is in the same nib as
> your app controller. The status bar probably initializes itself in an
> -awakeFromNib method. Whether that method runs before or after your
> -awakeFromNib method is completely unpredictable.
>
> > I can see why it's a bad thing in theory, but I haven't had any problems
> with this approach.
>
> Are you prepared to have your app crash and burn on launch for every user
> that installs some upcoming OS revision (perhaps even a minor update)? I'm
> serious; this happens. Doing things that shouldn't work, just because they
> do work at the moment, is asking for trouble since the underlying behavior
> of the system frameworks can change in the future.
>
> (This is especially painful if you're not on the expen$ive Apple developer
> plans that get you access to OS betas, because that means you won't get a
> chance to find any of these crashes before your customers do. Instead you
> find yourself frantically debugging on the day the new OS comes out, while
> your mailbox fills up with crash reports and complaints.)
>
> > Anyway, back to subject. Perhaps a better approach than using timers,
> guesswork and voodoo, would be to check the validity of the frame rect and,
> if it's zero or garbage, make my own rectangle.
>
> Um, no. Check whether the status bar is nil before you ask for its frame,
> instead of working around the aftermath of calling a struct accessor on nil.
> But doing this is still a hack, for the reason I described above. It's
> pretty clear that you shouldn't be doing anything with NSStatusBar in an
> -awakeFromNib method in the main nib.
>
> —Jens


But this is not in -awakeFromNib. That's the whole problem :)

It's in -applicationDidFinishLaunching. Which works great on all systems (as
far as I know), except for on 10.5.8 where NSStatusBar is still nil at this
point. That's what I'm trying to find a work-around for.
_______________________________________________

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

  • Follow-Ups:
    • Re: Uninitialized rectangle??
      • From: Steven Degutis <email@hidden>
    • Re: Uninitialized rectangle??
      • From: Kyle Sluder <email@hidden>
References: 
 >Uninitialized rectangle?? (From: fabian <email@hidden>)
 >Re: Uninitialized rectangle?? (From: Ken Thomases <email@hidden>)
 >Re: Uninitialized rectangle?? (From: fabian <email@hidden>)
 >Re: Uninitialized rectangle?? (From: Jens Alfke <email@hidden>)
 >Re: Uninitialized rectangle?? (From: fabian <email@hidden>)
 >Re: Uninitialized rectangle?? (From: Jens Alfke <email@hidden>)

  • Prev by Date: Re: Private ivars, not marked as IBOutlet, visible in IB
  • Next by Date: Re: Anti-aliasing in Snow Leopard (10.6) PDFView
  • Previous by thread: Re: Uninitialized rectangle??
  • Next by thread: Re: Uninitialized rectangle??
  • Index(es):
    • Date
    • Thread