The iPhoto saga continues. Late last night, I began to wonder if
doing an “exporter” was really the right thing. It
looks like these “NetServices” may be more what I'm
looking for. Plus, there's a whole pile of header files in the
iPhoto bundle directory under
iPhoto.app/Contents/NetServices/Frameworks
which are just begging to be used.
After about half an hour, I've managed to implement enough code
(by overriding four methods from ISBundle) to get my
nasty icon displaying in the tray at the bottom of the iPhoto
window. Clicking on it yields and error message that says
something like “the service is currently out to
lunch.” Clearly more to do yet.
Hmm. I think I may need to understand Interface Builder a bit more thoroughly before I understand how this stuff is works. It looks like there are some objects that are supposed to be serialized in the NIB file, and already know how to connect to each other?
Thanks to Pavlov, I discovered some photo gallery software (basically a pile of PHP) that looks like it might be just what www.maubi.net needs for the family pics. It comes with the clunky Java application for uploading pictures, which frankly stinks. Especially if you're used to using iPhoto.
So, I thought it might be cool to write a plugin for iPhoto that automatically uploaded an album (or maybe just a selection) to Gallery. It looks like Apple has not really published a way to do this yet, but the afformentioned link seems to have enough information to get started, even if it's a bit inaccurate or dated.
As that page recommends, I used
class-dump
to dump the Objective-C of ExportImageProtocol that's
actually contained within the iPhoto app. It looks nothing like
the protocol described in the above doc. Furthermore, it looks
like the actual plugins FileExporter.iPhotoExporter
and the QTExporter.iPhotoExporter don't use it.
Instead, they use ExportPluginProtocol,
which looks like:
@protocol ExportPluginProtocol - description; - name; - (void)cancelExport; - (void)unlockProgress; - (void)lockProgress; - (struct ? *)progress; - (void)performExport:fp16; - (void)startExport:fp16; - (void)clickExport; - (char)validateUserCreatedPath:fp16; - (char)treatSingleSelectionDifferently; - defaultDirectory; - defaultFileName; - getDestinationPath; - (char)wantsDestinationPrompt; - requiredFileType; - (void)viewWillBeDeactivated; - (void)viewWillBeActivated; - lastView; - firstView; - settingsView; - initWithExportImageObj:fp16; @end
So, from here I will begin my adventure. More as it unfolds.
Hmm. I think I may have done a bad thing. I signed up for this online political action organization called MoveOn that just so happens to have the same dirty liberal outlook that I seem to have on most issues (distrust of corporations, disappointment with Dubyah, etc.) They seem to be doing some good stuff, but I'm a bit concerned that they may be sending email as me without actually telling me that they're doing it.
I just got a form letter from Rep. Nancy Pelosi thanking me for my recent correspondence. The problem is, I haven't sent her any recent correspondence. I did -- like maybe two months ago -- use MoveOn's web form to send a mail to her about the FCC. And I got a response thanking me for my interest.
Recently, however, I've noticed a flurry of spam from MoveOn calling for support for this and that and the other thing. Haven't really had time to look at any of this stuff. (Been busy, sorry!) But it is a rather strange coincidence, in my humble opinion, that I've received this "thank you" cotemporaneously with some "push for the cause".
Anyway, I'm more than a bit concerned by this. Mail bombing sucks. Forging headers sucks. I hope that a group that generally seems to be fighting the Good Fight wouldn't be resorting to these tactics. I've got two emails in to their generic email address. Hopefully I'll get a response from them soon.
(Later...) I got a response. It turns out that I'd signed a petition about two weeks ago (asking for a complete investigation into this whole Iraq intelligence fiasco). They delivered the petition today. (Via mail-bomb? Why else would I have gotten the automated response?) Anyhow, silly me didn't make the correlation. (Should I have? I think they ought to at least be polite and letcha know they've just dropped a bomb with your name on it...)
Ah well, mystery solved.