Plugins, fonts

Robert Brenstein rjb at robelko.com
Fri May 7 03:02:07 EDT 2004


>>For those listening in and wondering: the stack in question ran 
>>under pre-b5 versions pretending to be a library in order to be 
>>called but not opened at startup. But it ain't library. All it does 
>>is sets the script editor font when the IDE starts. When opened 
>>normally, it presents a window to choose the font and size. In 
>>other words, it is akin to an extension/control panel combo in Mac 
>>OS.
>
>B4 added the auto-library option, which takes care of loading the 
>library.  As a library it can respond to the libraryStack message to 
>do any faceless operations, and can even stop using itself.  For the 
>UI selecting it from the menu opens it.
>
>What more is needed for that dual behavior?
>
>I may be a little slow, running on only one cup of coffee today....
>
>--
>  Richard Gaskin

This is exactly what I did earlier, as you read in my email. But as 
far as I am concerned it is a kludge and a kludge that anyone writing 
such plugins must always remember to follow. If I open Plugin Manager 
and see something marked as a library, it should be a library. May be 
I am a purist, but since plugins are new to MC, it would be a shame 
to start with a kludge that is not necessary.

So, in my view, the following categories of plugins should be recognized:

Passive plugins -- plugins that are opened only manually by the user. 
Any MetaCard or Revolution stack can be used as a passive plugin. The 
"Plugins" menu is basically a launchpad to open them convieniently.

Auto-open plugins -- plugins that are opened automatically at 
startup. Any MetaCard or Revolution stack can be set to be an 
auto-open plugin. The standard sequence of preOpen and open messages 
is sent when the stack opens.

Library plugins -- plugins that are installed as libraries (through 
start using) automatically at startup: they are not opened but a 
'libraryStack' message is sent to them. They open as a normal stack 
when selected from the "Plugins" menu or opened in the Plugin Manager.

(new) Active plugins -- plugins that are executed automatically at 
startup: they are not opened but a 'pluginStack' message is sent to 
them. Such plugins are meant to perform one-time actions just after 
the MetaCard IDE loads. They open as normal stacks when selected from 
the "Plugins" menu or opened in the Plugin Manager.

A given plugin can actually belong to multiple categories. They are 
not exclusive (except passive of course).

Furthermore, I postulate that the order of events at startup should be to

1. build plugins menu
2. start using all library plugins
3. execute all active plugins
4. open plugins to be opened at startup

Holding shift key down, should disable 2, 3, and 4.

Robert Brenstein


More information about the metacard mailing list