re overflow2


iFotobilder will be an iPhoto export plugin that will let you manage your Fotobilder pictures through iPhoto. ## Getting Started Since iPhoto's APIs aren't public, and because my Objective C is extremely rusty, I wanted a couple of examples of other people's plugins before I dove into this. Here's what I found: * [Writing Plugins for Cocoa][1] [1]: http://www.stone.com/The_Cocoa_Files/Writing_PlugIns.html ## The iPhoto Export API Using the `class-dump` tool, I dumped the export API: /* * Generated by class-dump 3.0. * * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004 by Steve Nygard. */ /* * File: /Applications/iPhoto.app/Contents/MacOS/iPhoto */ @protocol ExportImageProtocol - (unsigned int)imageCount; - (BOOL)imageIsPortraitAtIndex:(unsigned int)fp20; - (struct _NSSize)imageSizeAtIndex:(unsigned int)fp16; - (unsigned int)imageFormatAtIndex:(unsigned int)fp16; - (id)imageCaptionAtIndex:(unsigned int)fp16; - (id)imagePathAtIndex:(unsigned int)fp16; - (id)thumbnailPathAtIndex:(unsigned int)fp16; - (id)imageDictionaryAtIndex:(unsigned int)fp16; - (float)imageAspectRatioAtIndex:(unsigned int)fp16; - (id)albumName; - (id)albumMusicPath; - (unsigned int)albumCount; - (unsigned int)albumPositionOfImageAtIndex:(unsigned int)fp16; - (id)window; - (void)enableControls; - (void)disableControls; - (void)clickExport; - (void)startExport; - (void)cancelExport; - (void)cancelExportBeforeBeginning; - (id)directoryPath; - (id)temporaryDirectory; - (BOOL)doesFileExist:(id)fp16; - (BOOL)doesDirectoryExist:(id)fp16; - (BOOL)createDir:(id)fp16; - (id)uniqueSubPath:(id)fp12 child:(id)fp20; - (id)makeUniquePath:(id)fp16; - (id)makeUniqueFilePath:(id)fp12 extension:(id)fp20; - (id)makeUniqueFileNameWithTime:(id)fp16; - (BOOL)makeFSSpec:(id)fp12 spec:(struct FSSpec *)fp20; - (id)pathForFSSpec:(id)fp16; - (BOOL)getFSRef:(struct FSRef *)fp12 forPath:(id)fp16 isDirectory:(BOOL)fp27; - (id)pathForFSRef:(struct FSRef *)fp16; - (unsigned long)countFiles:(id)fp12 descend:(BOOL)fp23; - (unsigned long)countFilesFromArray:(id)fp12 descend:(BOOL)fp23; - (unsigned long long)sizeAtPath:(id)fp12 count:(unsigned long *)fp16 physical:(BOOL)fp27; - (BOOL)isAliasFileAtPath:(id)fp16; - (id)pathContentOfAliasAtPath:(id)fp16; - (id)stringByResolvingAliasesInPath:(id)fp16; - (BOOL)ensurePermissions:(unsigned long)fp12 forPath:(id)fp20; - (id)validFilename:(id)fp16; - (id)getExtensionForImageFormat:(unsigned int)fp16; - (unsigned int)getImageFormatForExtension:(id)fp16; - (struct OpaqueGrafPtr *)uncompressImage:(id)fp12 size:(struct _NSSize)fp16 pixelFormat:(unsigned int)fp24 rotation:(float)fp32; - (void *)createThumbnailer; - (void *)retainThumbnailer:(void *)fp16; - (void *)autoreleaseThumbnailer:(void *)fp16; - (void)releaseThumbnailer:(void *)fp16; - (void)setThumbnailer:(void *)fp16 maxBytes:(unsigned int)fp20 maxWidth:(unsigned int)fp24 maxHeight:(unsigned int)fp32; - (struct _NSSize)thumbnailerMaxBounds:(void *)fp16; - (void)setThumbnailer:(void *)fp12 quality:(int)fp20; - (int)thumbnailerQuality:(void *)fp16; - (void)setThumbnailer:(void *)fp12 rotation:(float)fp20; - (float)thumbnailerRotation:(void *)fp16; - (void)setThumbnailer:(void *)fp12 outputFormat:(unsigned int)fp20; - (unsigned int)thumbnailerOutputFormat:(void *)fp16; - (void)setThumbnailer:(void *)fp12 outputExtension:(id)fp20; - (id)thumbnailerOutputExtension:(void *)fp16; - (BOOL)thumbnailer:(void *)fp16 createThumbnail:(id)fp20 dest:(id)fp28; - (struct _NSSize)lastImageSize:(void *)fp20; - (struct _NSSize)lastThumbnailSize:(void *)fp16; @end @protocol ExportPluginBoxProtocol - (BOOL)performKeyEquivalent:(id)fp16; @end @protocol ExportPluginProtocol - (id)initWithExportImageObj:(id)fp16; - (id)settingsView; - (id)firstView; - (id)lastView; - (void)viewWillBeActivated; - (void)viewWillBeDeactivated; - (id)requiredFileType; - (BOOL)wantsDestinationPrompt; - (id)getDestinationPath; - (id)defaultFileName; - (id)defaultDirectory; - (BOOL)treatSingleSelectionDifferently; - (BOOL)validateUserCreatedPath:(id)fp16; - (void)clickExport; - (void)startExport:(id)fp16; - (void)performExport:(id)fp16; - (CDAnonymousStruct12 *)progress; - (void)lockProgress; - (void)unlockProgress; - (void)cancelExport; - (id)name; - (id)description; @end @interface ExportController : NSObject { id mWindow; id mExportView; id mExportButton; id mImageCount; ExportMgr *mExportMgr; ExportMgrRec *mCurrentPluginRec; ProgressController *mProgressController; BOOL mCancelExport; NSTimer *mTimer; NSString *mDirectoryPath; } - (void)awakeFromNib; - (void)dealloc; - (id)currentPlugin; - (id)currentPluginRec; - (void)setCurrentPluginRec:(id)fp12; - (id)directoryPath; - (void)setDirectoryPath:(id)fp12; - (void)show; - (void)_openPanelDidEnd:(id)fp12 returnCode:(int)fp16 contextInfo:(void *)fp20; - (id)panel:(id)fp12 userEnteredFilename:(id)fp16 confirmed:(BOOL)fp20; - (BOOL)panel:(id)fp12 shouldShowFilename:(id)fp16; - (BOOL)panel:(id)fp12 isValidFilename:(id)fp16; - (BOOL)filesWillFitOnDisk; - (void)export:(id)fp12; - (void)_exportThread:(id)fp12; - (void)_exportProgress:(id)fp12; - (void)startExport:(id)fp12; - (void)finishExport; - (void)cancelExport; - (void)cancel:(id)fp12; - (void)enableControls; - (id)window; - (void)disableControls; - (void)tabView:(id)fp12 willSelectTabViewItem:(id)fp16; - (void)tabView:(id)fp12 didSelectTabViewItem:(id)fp16; - (void)selectExporter:(id)fp12; - (id)exportView; - (BOOL)_hasPlugins; - (void)_resizeExporterToFitView:(id)fp12; - (void)_updateImageCount; @end @interface ExportMgr : NSObject { ArchiveDocument *mDocument; NSMutableArray *mExporters; Album *mExportAlbum; NSArray *mSelection; ExportController *mExportController; } + (id)exportMgr; + (id)exportMgrNoAlloc; - (id)init; - (void)dealloc; - (void)releasePlugins; - (void)setExportController:(id)fp12; - (id)exportController; - (void)setDocument:(id)fp12; - (id)document; - (void)updateDocumentSelection; - (unsigned int)count; - (id)recAtIndex:(unsigned int)fp12; - (void)scanForExporters; - (unsigned int)imageCount; - (BOOL)imageIsPortraitAtIndex:(unsigned int)fp12; - (id)imagePathAtIndex:(unsigned int)fp12; - (struct _NSSize)imageSizeAtIndex:(unsigned int)fp16; - (unsigned int)imageFormatAtIndex:(unsigned int)fp12; - (id)imageCaptionAtIndex:(unsigned int)fp12; - (id)thumbnailPathAtIndex:(unsigned int)fp12; - (id)imageDictionaryAtIndex:(unsigned int)fp12; - (float)imageAspectRatioAtIndex:(unsigned int)fp12; - (id)albumName; - (id)albumMusicPath; - (unsigned int)albumCount; - (unsigned int)albumPositionOfImageAtIndex:(unsigned int)fp12; - (id)imageRecAtIndex:(unsigned int)fp12; - (id)currentAlbum; - (void)enableControls; - (void)disableControls; - (id)window; - (void)clickExport; - (void)startExport; - (void)cancelExport; - (void)cancelExportBeforeBeginning; - (id)directoryPath; - (void)_copySelection:(id)fp12; - (id)temporaryDirectory; - (BOOL)doesFileExist:(id)fp12; - (BOOL)doesDirectoryExist:(id)fp12; - (BOOL)createDir:(id)fp12; - (id)uniqueSubPath:(id)fp12 child:(id)fp16; - (id)makeUniquePath:(id)fp12; - (id)makeUniqueFilePath:(id)fp12 extension:(id)fp16; - (id)makeUniqueFileNameWithTime:(id)fp12; - (BOOL)makeFSSpec:(id)fp12 spec:(struct FSSpec *)fp16; - (id)pathForFSSpec:(id)fp12; - (BOOL)getFSRef:(struct FSRef *)fp12 forPath:(id)fp16 isDirectory:(BOOL)fp20; - (id)pathForFSRef:(struct FSRef *)fp12; - (unsigned long)countFiles:(id)fp12 descend:(BOOL)fp16; - (unsigned long)countFilesFromArray:(id)fp12 descend:(BOOL)fp16; - (unsigned long long)sizeAtPath:(id)fp12 count:(unsigned long *)fp16 physical:(BOOL)fp20; - (BOOL)isAliasFileAtPath:(id)fp12; - (id)pathContentOfAliasAtPath:(id)fp12; - (id)stringByResolvingAliasesInPath:(id)fp12; - (BOOL)ensurePermissions:(unsigned long)fp12 forPath:(id)fp16; - (id)validFilename:(id)fp12; - (id)getExtensionForImageFormat:(unsigned int)fp12; - (unsigned int)getImageFormatForExtension:(id)fp12; - (struct OpaqueGrafPtr *)uncompressImage:(id)fp12 size:(struct _NSSize)fp16 pixelFormat:(unsigned int)fp24 rotation:(float)fp36; - (void *)createThumbnailer; - (void *)retainThumbnailer:(void *)fp12; - (void *)autoreleaseThumbnailer:(void *)fp12; - (void)releaseThumbnailer:(void *)fp12; - (void)setThumbnailer:(void *)fp12 maxBytes:(unsigned int)fp16 maxWidth:(unsigned int)fp20 maxHeight:(unsigned int)fp24; - (struct _NSSize)thumbnailerMaxBounds:(void *)fp16; - (void)setThumbnailer:(void *)fp12 quality:(int)fp16; - (int)thumbnailerQuality:(void *)fp12; - (void)setThumbnailer:(void *)fp12 rotation:(float)fp36; - (float)thumbnailerRotation:(void *)fp12; - (void)setThumbnailer:(void *)fp12 outputFormat:(unsigned int)fp16; - (unsigned int)thumbnailerOutputFormat:(void *)fp12; - (void)setThumbnailer:(void *)fp12 outputExtension:(id)fp16; - (id)thumbnailerOutputExtension:(void *)fp12; - (BOOL)thumbnailer:(void *)fp12 createThumbnail:(id)fp16 dest:(id)fp20; - (struct _NSSize)lastImageSize:(void *)fp16; - (struct _NSSize)lastThumbnailSize:(void *)fp16; @end @interface ExportMgrRec : NSObject { NSString *mPath; NSBundle *mBundle; id mPlugin; struct _NSSize mViewSize; } - (void)dealloc; - (BOOL)isEqual:(id)fp12; - (id)description; - (id)initWithPath:(id)fp12; - (id)path; - (id)bundle; - (id)bundleInfo; - (BOOL)isValidExportPlugin; - (BOOL)loadPlugin; - (id)exportPlugin; - (void)unloadPlugin; - (id)view; - (struct _NSSize)viewSize; - (void)setPath:(id)fp12; - (void)setBundle:(id)fp12; @end

Wyszukiwarka

Podobne podstrony:
re overflow
156792 re ct discussion anonymous vs cartels
156693 re ct discussion anonymous vs cartels
Taken by the Vikings Gay Eroti ?re Isabel
1010679 re ct discussion anonymous vs cartels
cranberries when you re gone
1022457 re ct discussion anonymous vs cartels
Re Cywilne ?zNazwy1
1481918 re ct discussion anonymous vs cartels
166209 re s weekly for comment placing the anonymous vs zeta
Kiss You re all that i want
overflow (2)

więcej podobnych podstron