Plugins, fonts
J. Landman Gay
jacque at hyperactivesw.com
Thu May 6 22:13:20 EDT 2004
On 5/6/04 7:02 PM, Robert Brenstein wrote:
>>> 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.
These are mostly all good, I like it. The only one that probably isn't
essential though is the "active" type. As Richard said, that can already
be done using a library type stack. Something like this:
on librarystack
doMyOneStartupThing
stop using the script of this stack
end librarystack
Would work, yes? Why invent another type?
--
Jacqueline Landman Gay | jacque at hyperactivesw.com
HyperActive Software | http://www.hyperactivesw.com
More information about the metacard
mailing list