|Home » ACP » Secrets
ACP SecretsNot all as it appears? Nope!
Where are the icons? Where do the find panels come from? How did you get everything so compact? And fast!
ACP users can go on blissfully using the product for the longest time without suspecting a thing. Even the pros. But start to look under the bonnet and you'll wonder where the motor went off to.
It's been more or less spelled out on other pages, but it's never been driven home: the ACP represents a technology for bundling applications that has benefits above and beyond the current application set. A technology that's both flexible and scalable.
No Image Files
The ACP has no image files save the application icons. All other images are handled by the framework (which is something you can read elsewhere). But here's something else to bake your noodle: the framework doesn't have any image files either. None.
All imagery is kept in a proprietary database accessible only through the ACP framework. This database stays resident as long as an ACP application is running.
All needed images are already in memory. No more crunching a hard drive to pick up 140 itsy-bitsy TIFFs at the next spin: it's already loaded. ACP apps generally are fully on screen before their dock icon comes back down the first time. (All app developers, both inside and outside Apple, could do this. None but Rixstep's bother. Go figure.)
The database also represents a significant savings in disk space which only grows over time. (The ACP framework currently stores nearly four dozen images, yet loading those same images for other software vendors will take over twenty times as long.)
Inits & Exits
The ACP framework is used both to initialise and close down ACP applications - it's the second stack frame. Proprietary application settings localised to the application bundle are read at runtime. (Looking for additional ways to tweak your app? Try the documentation - you can probably use your Info.plist.)
The ACP framework also takes care of application exits, performing several cleanup operations governed by the framework's settings file. (This settings file can be both global for all users and local for individual overrides.)
The ACP framework also manages ACP-specific extended attributes to achieve true document orientation - something NeXT's software architects never quite got around to. (An example: Apple's frameworks will save common settings for location and size for window frames and tables but not for specific documents. The ACP framework will.)
Finally, the ACP framework lets you override any of these settings through its own configuration. (You want your ACP application to exit without changing any settings at all? No problem - the ACP can do that too.)
Find Anything Anywhere
All search technology is built not into individual applications but into the framework - without altering or interfering with application code in the slightest.
The ACP framework hovers over the applications, so to speak, sussing out what kind of data views they have, and acting accordingly. This is a near-universal search technology within the ACP.
The golden rule of software engineering is never to do anything twice. If you find yourself looking for the same snippet of code for a new application - export it.
Nothing is duplicated here: common functionality is found not in applications but in the ACP Framework where it should be.
The framework takes care of generic input sheets, more sophisticated system information sheets, functions as a launch pad within half a dozen applications, takes care of string conversions, creates and decodes URLs, issues 'are you really sure' panels, analyses path accessibility, loads application resources, digs into resource forks, issues error messages, handles the 'find' clipboard for all ACP applications, manages all toolbars - and this in addition to what's already been covered.
Like NeXTSTEP, it's a blend of stunning graphics with the speed and efficiency of a 'rock solid foundation'.
The ACP is not shareware; users get updates approximately once per week; it is sold only as a unit: despite it now having over ninety Cocoa applications and command line tools it is a system and built as one. Purchase of an ACP licence entitles the user(s) to free updates, new programs, and free mail support for one year - renewable.