Unsupported — We cannot guarantee that this software will work properly on Mac OS 10.8 and above. Please be careful.

Release: Official API Subpatch Support, v0.2

Release Type: Production
Version: 0.2
Release Notes
The Official API Subpatch Support plugin is deprecated. Information on getting around Safe Mode restrictions

QCRehab gives some of the unofficial-API functionality back to the Official API. Features such as Safe Mode and Subpatch support are enabled, allowing more flexible plugins.

This plugin uses the Unofficial API, so it goes in ~/Library/Graphics/Quartz Composer Patches/, not ~/Library/Graphics/Quartz Composer Plug-Ins/.

This plugin was written in response to several complaints about 3rd party plugins not working in "safe" environments. When installed, this plugin will allow all official-api plugins to load in any environment -- This is Extremely Dangerous, Don't Do It Unless You Know You Need it!

For security reasons, it's Disabled in Safari (so malicious compositions cannot harm your machine via the web, even when this plugin is active). Custom plugins should still work in Keynote presentations, in Motion, in Quick Time, and in other applications that may struggle with safe-mode issues.

Note that this does not unlock "unsafe" built-in patches, such as Audio and Video Input. Only custom, Official-API Plug-In patches are unlocked.

It's also useful for plugin developers who are interested in sticking with the official API. It would also be necessary for a user of such plugins.

This plugins obsoletes the "Official API Subpatch Support Plugin" we released a few months ago. It offers identical functionality, including fixed subpatch-save support (meaning compositions with subpatches are properly restored when loaded).

To use this in your Official-API plugins, simply add a +(BOOL)allowsSubpatches method that returns YES to allow subpatches in your patch.

For developers: When making a sub-patch-aware patch, you'll need this piece of code to execute subpatches:[[self patch] executeSubpatches:(double)time arguments:(NSDictionary*)args]. This should go in your execute method only.

Have a lot of fun :)

I expect Apple to include this functionality in a future release of QC, so Please only use this if you know what you're doing. If you bundle this in with other plugins, please make the user aware of what's going on, and how they can remove it.

PreviewAttachmentSize
QCRehab-v0.2.zip7.69 KB

Installation Instructions

Place the plugin file in
/Users/[you]/Library/Graphics/Quartz Composer Patches/
(Create the folder if it doesn't already exist.)

The Official API Subpatch Support plugin is deprecated. Information on getting around Safe Mode restrictions