TSPProgressIndicator is a highly customizable progress indicator class which lets you create a cool progress indicator with a few line of code. TSPProgressIndicator is a NSView subclass so the height and width of the progress indicator will be binded to the height and width of the NSView, without any restraints.
Main functions for customizing the progress indicator
- Progressbar main color
- Progressbar holder color
- Shadow color and blur radius
- Upper and lower text color, font size and alignment
- Progressbar corner radius
- Indeterminate animation both in main thread and another thread
Let me present you my latest project TSPWindow. TSPWindow is a subclass of NSWindow witch let you customize you window simply and quickly. With a little imagination you can build almost any kind of window you want. Let me remind you that TSPWindow is still in the first release so it has limited functionalities and theming capabilities but we hope that in the future it’ll be better and more customizable.
Theming example:
[HUDWindow setTitleBarHeight: 25.0];
[HUDWindow setFooterBarHeight: 0.0];
NSColor *colort1 = [NSColor colorWithCalibratedWhite:.5 alpha:.82];
NSColor *colort2 = [NSColor colorWithCalibratedWhite:.1 alpha:.82];
NSColor *colort3 = [NSColor colorWithCalibratedWhite:0 alpha:.82];
NSColor *colort4 = [NSColor colorWithCalibratedWhite:0 alpha:.82];
NSGradient *normalGradient = [[NSGradient alloc] initWithColorsAndLocations:colort1,0.0,colort2,0.5,colort3,.51,colort4,1.0,nil];
NSColor *color1 = [NSColor colorWithCalibratedWhite:0 alpha:.82];
NSColor *color2 = [NSColor colorWithCalibratedWhite:.02 alpha:.82];
NSColor *color3 = [NSColor colorWithCalibratedWhite:.05 alpha:.82];
NSColor *color4 = [NSColor colorWithCalibratedWhite:0 alpha:.82];
NSGradient *gradientC = [[NSGradient alloc] initWithColorsAndLocations:color1,0.0,color2,0.5,color3,.51,color4,1.0,nil];
[HUDWindow setTitleBarGradient: normalGradient];
[HUDWindow setBodyGradient:gradientC];

PXNavigationBar is modelled on the iTunes navigation bar (as shown below) for navigating through hierarchical content.
As can be seen there are 3 parts to the navigation bar:
- the title in the centre
- the back button on the left
- the navigation buttons on the right

How the control works
PXNavigationBar works by splitting each level in the navigation hierarchy into levels. Each level is represented by an instance of PXNavigationLevel, which encapsulates items each represented by a PXNavigationItem instance. Each level has a currently selected navigation item (which by default is the first item). The left and right navigation buttons (displayed on the right of the navigation bar) cycle left and right respectively through the items in the currently displayed level. The currently selected item in the currently selected level is the item whose title is displayed in the centre of the navigation bar. Levels can be pushed onto and popped from the navigation bar’s stack of levels, and pressing the back button (displayed on the left of the navigation bar) pops the current level off the stack.For more information and usage visit the author's website.
PXSourceList is a Source List control for use in Mac OS X applications targeting the 10.5 SDK or higher. Latest releases and release notes can be found on the PXSourceList GitHub page; PXSourceList is released under the New BSD License.
What is this?
A Source List is a user interface element commonly found among Mac OS X applications, and used in such applications as iTunes and iCal, as a way of navigation. It is commonly distinguished by having a blue background, and top-level items (or “Groups”) displayed capitalized in a dark blue colour. For more information, see the Apple Human Interface Guidelines, which provides extra details.
Unfortunately, the implementation of Source Lists in Cocoa isn’t done particularly well – the only option is to create an NSOutlineView and set Source List highlighting, but other Source List features are not built-in out of the box. As of this I set about creating a Source List control to fill this gap.
For more information and how to's visit the author's website.

UMEKit (pronounced "you, me kit") is an open source (liberal Apache-license) Mac OS X Framework written by Todd Ditchendorf for creating iPhone-like user interfaces in Cocoa desktop applications.
Why is it cool?
The UMEKit API is almost completely identical to Apple's UIKit from iPhone OS, meaning iPhone developers already know the API, and can easily port existing iPhone UI code over to the desktop.
What's done?
UMEKit currently only implements a subset of UIKit from iPhone OS. Basically, the "navigation stack" classes are all that is currently done: UMEViewController, UMENavigationController, UMENavigationBar, UMENavigationItem, UMEBarButtonItem, UMETabBarController, UMETabBar, UMETabBarItem.

KNPopUpDatePicker is an NSDatePicker subclass that presents a pop-up graphical style picker when the parent control gains focus.
KNPopUpDatePicker requires MAAttachedWindow by Matt Gemmell.
Features
- Simple to use - just change the class of your pickers to KNPopUpDatePicker.
- If you have NSWindow+Fade in your application, KNPopUpDatePicker will automatically fade the pop-up picker in and out.
- Pays attention to the control's bindings to ensure bindings are update correctly.
An NSImageView subclass that provides the following
- The control is aware of the image's flipped status, and will draw the image the right way up regardless.
- The control sizes the image to fit within its bounds - useful for OS 10.4, which doesn't support image scaling in NSImageView.
MGScopeBar provides a scope/filter bar much like you’ll find in Mail, the Finder (in the Find/Spotlight window), iTunes and elsewhere. It uses a delegate system to get its data, is extremely customizable and has a cool Smart Resize feature for when limited horizontal space is available.

And so it’s a shame that AppKit doesn’t doesn’t provide a way to create badges for your own OS X apps – developers, I’m sure, would love to tap into this useful interface element. Apple devs probably wouldn’t mind either – as it stands each and every app that uses the badges has its own copy of the badge images… and NSApp doesn’t provide a private But these badges are just too good to pass up (no, really, they are) so here are a few tiny methods that’ll do the work for you.

















