On 9 Sep 2004, at 08:21, Matt DeFoor wrote: -- Finlay _______________________________________________ darwin-development mailing list | darwin-development@lists.apple.com Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/darwin-development Do not post admin requests to the list. They will be ignored. Do I need to create the file? Well, no, you don't need to create a header. You just need to implement the required methods. It's really easy because of the magical run-time introspection abilities of Obj-C. The documentation for Directory Access Plugins is kinda sparse. There's a few things I'm not clear on. The doc says that the bundle's main class should implement at least setPluginAPIImplementor: and configureButtonClicked:. Do these actually have to go in main.m or can they be placed in my controller (controller.m)? I suggest you read the NSBundle and CFBundle documentation - basically, your bundle will have a main class (or "principal class"). This class' name is specified in your Info.plist. I suggest you don't call your class "Controller" because that's pretty generic and there's no namespace support in Obj-C. Typically you prefix your class with a couple of letters, for example Apple uses NS for the Cocoa frameworks, Omni uses OF for OmniFoundation and OA for OmniAppKit, etc. I have seen people use something like ComCompanyApplicationMyClass, but that's a bit obtuse. If in doubt, base it off your initials - MDFDirectoryAccessPlugin or something would be a good one. Anyway, you create your class and specify it in your Info.plist (you probably do this via your bundle target settings in Xcode). Then, you just implement the right methods according to the prototypes in the documentation. That should be all there is to it.