Mac OS X - Cocoa
Code snippets written during the development of Houdah Software's Mac OS X software offerings: HoudahSpot 2, HoudahGeo, HoudahGPS, ...
All code published on this page is available under the MIT license unless otherwise indicated.
HHValidatedButton
A NSButton subclass with support for user interface validation.It channels validation through validateButton: and validateUserInterfaceItem:.
Download HH Validated Button.
HHDualShortcutButton
A NSButton subclass which may respond to 2 keyboard shortcuts. It also displays one of those shortcuts when the command key is held down.
Download HH Dual Shortcut Button.
HHusbObserver & HHserialObserver
List USB and serial devices. Get notifications a devices are connected or disconnected.
This code is used by the freeware GPSBabel frontend HoudahGPS.
Download HH Device Observers.
Universal Cocoa
Xcode user script: PropertyFromInstanceVariable.pl
Enhanced version of a script by Matt Gallagher. Creates @property and @synthesize statements from selected variable declaration
Download PropertyFromInstanceVariable.
objectiveLocr
ObjectiveLocr is an Objective-C framework that makes it easy for a Cocoa application to work with the Locr API.
This project is based off the objectiveflickr project by Lukhnos D. Liu. Most of the credit goes to him!
Please refer to the objectiveflickr for framework documentation and to the locr.com web site for API documentation.
ObjectiveLocr is used by HoudahGeo (Mac photo geotagging), locrUpload (locr upload client for iPhone) and locrExplorer (full-featured locr client for iPhone).
iPhone - Cocoa Touch
Houdah iPhone Properties
The controllers and views of this project may be used to easily create interfaces much like Apple's Settings applications. They make up most of the UI of the free LocrUpload application.
The HHPropertiesViewController may be used to modify attributes of any key-value-coding compliant container. Typically a container would be a NSMutableDictionary or a NSUserDefaults instance.
The controller is typically configured in a subclass by providing a set of descriptors. Descriptors are immutable objects describe the properties to expose and the UI elements (text field, switch, ...) to use. Seeing that descriptors are immutable, it should be easy to store them in a file rather than building them in code.
The HHSelectionViewController is used by the HHPropertiesViewController for multiple choice values.
WebObjects
Most of my public WebObjects code has been folded into
the Houdah
WebObjects Frameworks project.
This open source project is focussed on providing an
architecture for building powerful rule based CRUD
applications. Beyond what has been published here, it
includes many useful additions to the WebObjects and
Enterprise Objects Frameworks.
You may elect to use Houdah WebObjects Frameworks as a whole. This gives you a modern and extensible alternative to Apple's DirectToWeb (D2W) architecture with much power to spare under the hood. Alternatively you may dive in and pick out the juicy bits:
