Happy happy joy joy

It’s my older brother Anand’s birthday today! Happy 31!! ๐Ÿ™‚
Note: updates may be erratic over the next two-three weeks, as work’s really starting to get to crunchtime. It’s been a fun but exhausting few days, to be certain.
Wednesday I left work by 7pm, but worked another 2.5 hours on my laptop after getting home. Also got laundry washed, dried, folded and put away, did some kitchen cleanup too. That was a good night. I love having a pile of fresh clean clothes to choose from. ๐Ÿ™‚
Cam called me at 11pm that night; he’s been my ride to and from work all this week and called to tell me that he’d be going in pretty early on Thurs. Really early. Like, at work by 5:30. Keep in mind we’re normally there between 8 and 9. I figured what the heck! Can’t hurt that much, and things had progressed really well on the laptop. So I heard the phone ring around 4:40am and it was Cam with the wakeup call. Woo. I wasn’t really even that tired, but it was a rush to be up that early.

Cam rolls around the corner to pick me up at 5:24 Thu morning.
I just love getting in before the rest of the department. So many fewer distractions == better productivity. Even with the soundproof cubes. I’ve still got a door and that lets people in, so a fat lot of good all that does. Heh.
I made a major breakthrough on my task at work, namely, on how to create a toolbar button with a pulldown menu in it (they don’t normally have such things). The work was a little bit tweaky and there are a couple of things I’d still like to improve upon, but overall I’m very pleased with the result. It’s got an icon just like the others, but has a little triangle on its right-hand side and drops a menu of choices when clicked on. For those Cocoa programmers out there, what follows is an explanation of how it all went down. For the rest of you, skip on to the next paragraph. You have been warned. Making this nifty toolbar item involved programatically replacing the NSToolBarItem‘s view (via NSToolBarItem’s setView method) with a custom NSView I created in a nib, and on that custom view was an NSPopupButton which I changed using IB‘s inspector to 47×24 pixels (wider than tall to account for the space required for the pulldown triangle indicator), and from the default “PopUp” style to “PullDown”. I also changed it to the “Shadowless Square” PullDown style (this allowed me to stipulate an icon for the menu) and programatically changed it to “Borderless” (though while reproducing the setup here at home I’ve noticed that there’s the option to set this from within Interface Builder’s GUI itself — didn’t see that at work. Guess things have improved somewhat! For what it’s worth I’ve got IB 2.4 at home.) I gave it an empty title, and finally, I set an icon for it by dragging it from the images section of my nib onto the button. Back in code, at toolbar-item-setup-time I asked button for its icon, set it so that it resized if its parent was resized, then guess what — *resized* it so that it looked about the same size as the other icons. This mostly worked. The only problem was that the resized icon on the button was a little higher up than the rest of the regular toolbar item images. I managed to tweak this by making the custom NSView in the nib slightly taller than the NSPopUpButton it held, and thus when the whole thing was centered in the toolbar, the icon appeared a little be lower. I also managed to make the button appear less wide by sliding it underneath some of the left-hand-side of the NSView. Worked like a charm! As the ‘cos might say… ruthlessly cool!
The rest of the day went well — we went for lunch with an interviewee for the (currently) 1-person modeling dept. No, not that kind of modeling. That was fun. I was in Cam’s car with Jeff, and we were following Carlos, Veronica and our interviewee in Hugo’s. After taking a scenic tour around downtown (I think Hugo got lost) we ended up eating at a verinice seafood place. We didn’t have a lot to ask interview-wise because it wasn’t really our area (more Hugo’s) — but we did learn she was born in Calgary. Heh heh. It’s the Canadian invasion! ๐Ÿ™‚ Left work at 6pm, drove up to Bradenton to play our second league game (which we won 15-8 I might add). Yay! I was pretty tired when all was said and done though. When I got home at 11 it was a shower and straight to bed (unfortunately I was so tired I ended up skipping dinner. Boy did I feel it this morning.)
And I wasn’t sure if I could get the time off, but I asked today and it was okay, so I’m going to Heatstroke again this year. Wahoo!! Games start at 10am tomorrow and Gainesville is a 2.5 hour drive from here, so we’re leaving Sarasota at 7. Haha! It’s just going to be a day trip (unless the party is good :).
How was everyone’s week?
Listening: Ultravision’s “Inner Earth” on Max Graham – Shine