Resize stack
Robert Brenstein
rjb at robelko.com
Thu Jun 10 23:11:39 EDT 2004
>The resizeStack handler (in the stack script) puts the new stack
>rect into a file for safekeeping.
>
>on resizeStack
> global sPrefs
> put the rect of this stack into line 3 of cd fld "Prefs" of cd 1
>of stack sPrefs
> save stack sPrefs
>end resizeStack
>
>The preOpenStack handler is supposed to retrieve this info, and use it.
>
>on preOpenStack
> global sPrefs
> put the effective fileName of this stack into sPrefs
> set the itemDel to "/"
> put "prefs.mc" into the last item of sPrefs
> set the itemDel to comma
> set the rect of stack "Central" to \
> (line 3 of cd fld "Prefs" of cd 1 of stack sPrefs)
>end preOpenStack
>
>
>It fails. As the stack will be a standalone, I cannot set its rect
>permanently on resizeStack. So it must retrieve the info from a
>preferences stack.
>
>After resizeStack, I verify that the Prefs fld has the new info.
>All is well. But somewhere when opening the stack, the "old" info
>gets put back into the Prefs file. The resizeStack is apparently
>called automatically from Metacard before the new info is handled.
>
>Now I can avoid using the resizeStack altogether and create a
>workaround, but that shouldn't be necessary.
>
>Help?
Shari, I think your scheme failes because resizestack is called in
the opening sequence and overwrites the saved values. I ran into this
in one of my programs. If I recall, I used a global that is set after
the opening ritual and the prefs file is modified only if this global
says we are in normal execution mode. I posted the sequence of
opening events in the thread discussing plugins not so long ago.
Robert Brenstein
More information about the metacard
mailing list