Standalone Button Font Bloat
Dave Cragg
dcragg at lacscentre.co.uk
Thu Dec 19 12:19:01 EST 2002
At 7:27 am -0800 19/12/02, Mark Swindell wrote:
>on 12/19/02 2:47 AM, Klaus Major at k_major at os.surf2000.de wrote:
>
>> Hi Eric and Marc,
>>
>>>> ...
>>>> The splash screen stack becomes the
>>>> standalone's main stack...
>>>> the application stack, I guess you could say.
>>>> The other stacks are substacks of
>>>> this stack, but since they are not directly
>>>> part of the application they can
>>>> save changes written to them.
>>>
>>> i wondered how that worked.
>>
>> Just to make it absolutely clear:
>>
>> Substacks of a standalone CANNOT be saved !!!
>> Every stack that is part of a standalone CANNOT be saved !!!
>
>
>Klaus,
>
>Maybe I was using the term "substack" wrong. What do you mean when you say
>substack?
>
>In my case I did separate them into a data folder for the build, and am able
>to save changes made to them without problem. Are these then "associated"
>stacks, or what is the proper term to use for them?
>
>Thanks for the clarification,
>Mark
It would be good to clear this up. I've seen the term "substack" used
a lot when it shouldn't be. Another problem is that the term
"standalone" can be ambiguous.
At the risk of sounding like Miss Manners, here's an explanation/suggestion.
A "substack" resides in the same file as its mainstack. As a result,
if that mainstack can't be saved then its substacks can't be saved
either. The common *misuse* of "substack" is referring to a second
mainstack that resides in a separate file from the first mainstack.
Typically, when you build a "standalone" you attach a
platform-specific Rev engine to the file that contains a particular
mainstack. The result is an executable file* (program, application,
or whatever you want to call it). Any substacks that were contained
in the mainstack's file also form part of that executable file. And
this executable file cannot be saved while it is running.
In order to save a stack while running a standalone, the stack must
be in a separate file from the executable file. Therefore, when
building a standalone file, you shouldn't build it from a stack that
you wish to be able to save while the standalone is running. One
commonly used technique is to build a small stack that acts as a
splash screen for you application. Its main purpose (apart from
displaying a pretty picture and perhaps scary licensing stuff for a
few seconds) is to open a second stack that resides in a separate
file. So your final application will consist of 2 files. On Windows
(easier to illustrate), these files might be named as follows:
myapp.exe (contains the Rev engine and your "splash screen" stack
myapp.rev (contains the stack that you wish to save)
I don't know if there is a proper term for referring to this second
stack, but I think terms such as "a stack in a separate file" or "a
separate stack file" should be clear enough. I've seen the term
"external stack" used, and I guess that's clear too.
The "standalone" ambiguity comes from whether we see the standalone
as being only the single executable file (myapp.exe in the above
example) or as referring more generally to all the files that make up
the application. Both seem valid definitions to me, so it's probably
clearer to refer to the "standalone file" or "standalone executable
file" and NOT just "standalone" when you want to refer specifically
to the executable file (engine + attached stack).
*(OK, I know that in Mac OS X terms, the "standalone file" may not be
a single file, but a special bundle that is really a folder but looks
like a file. But for this discussion, it's probably easier to treat
it as a single file.)
Cheers
Dave
More information about the use-livecode
mailing list