Sep 132009
 

While working on the user interface for Rip I struggled to find an elegant way to allow users to easily view and edit a compact disc’s metadata. I finally settled on something similar to what Interface Builder uses for editing an object’s attributes:

IB Attribute editor

Unfortunately there is no native Cocoa control for doing this, so I rolled my own. I call it SFBViewSelector and it functions similarly to an UITabBar for those familiar with iPhone development. Here is how I’m currently using it in Rip:

SFBViewSelector

I also wanted a Finder-esque inspector for viewing attributes, with sections that could be expanded and collapsed. SDInspectorKit was a nice start, but I wanted something a little more tailored to my purposes. Here is the result, SFBInspectorView:

SFBInspectorView

My TODO list includes an Interface Builder palette, but even without the classes are fully functional. A demo app is included to show how to set things up.

The code is available at SFBInspectors and is BSD licensed.

Apr 212009
 

I’ve always thought it’s a shame that the crash reporting facilities in Mac OS X weren’t more extensible.  While Apple’s Crash Reporter does a great job of creating crash logs containing useful information, they can be sent automatically only to Apple.

Other developers have created their own crash reporting frameworks- UKCrashReporter and CMCrashReporter to name just two- but for whatever reason none of them floated my boat.

Enter SFBCrashReporter- a framework that does what many other frameworks do; keep watch on application startup for new crash logs and allow users to submit them to the developer.

Here is a screenshot of the main window:

Screenshot

Screenshot

The source is on http://github.com/sbooth/SFBCrashReporter/tree and is covered by the revised BSD license.  Right now the documentation is sparse, but it shouldn’t be too difficult to figure out how to get things working. Mac OS 10.5 or later!