Apple Developer Connection
Member Login Log In | Not a Member? Contact ADC

< Previous PageNext Page > Hide TOC

Legacy Documentclose button

Important: The information in this document is obsolete and should not be used for new development.

Loading plug-ins

When iMovie starts, it looks in the iMovie Plugins folder for plug-in bundles or files, as identified by their creator, 'Hway' and type:

Constants for these creator and type values are as follows:

When your plug-in is identified by its type and creator, it must check its compatibility with the current version of iMovie. If it is not compatible, it must return an error code, upon receipt of which, iMovie will discontinue loading the plug-in. For further version information, see the section “API Release Versions.”

If the plug-in reports itself to be compatible, it must pass iMovie a string with one or more menu names to be presented in the menus to identify the services your plug-in can provide for the user. The name string is in KResMenuNames, a STR# resource with ID 16000.

Note that the ability to use multiple names allows you to provide multiple services within a single plug-in. If your plug-in takes advantage of this facility, it must be able to recognize any of its names and perform the service associated with that name.

As part of the calling sequence, the index of the selected menu name in the STR# resource is passed to the plug-in in the which parameter. The plug-in uses this index to identify and perform the appropriate service. For example, the services Flying Letters and Flying Words, shown in the menu in figure 1, are provided by the Flying Titles plug-in. These two services, then, correspond to indexes of 0, and 1, and the menu names for those services are retrieved from the STR# resource using those resource indices.

A STR# resource of ID 18000, identified by the constant kResGroupNames, must be created to provide for group names, to allow the future possibility of grouping related menu names into sub-menus. Although group names are not currently used, it is recommended that your plug-in provide this string. For example, you might want to provide a short version of your company name.

A STR# resource of ID 15000, identified by the constant kResProgrammerNames, must be created to allow for a file to be associated with the specific plug-in servicethat created it. See “Processing Phase”for more detail.



< Previous PageNext Page > Hide TOC


Last updated: 2007-09-04




Did this document help you?
Yes: Tell us what works for you.

It’s good, but: Report typos, inaccuracies, and so forth.

It wasn’t helpful: Tell us what would have helped.
Get information on Apple products.
Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Copyright © 2007 Apple Inc.
All rights reserved. | Terms of use | Privacy Notice