I'm confused. LiveCode knows how to open a stack as part of its startup routine. Since card 1 is always opened first, a preopenstack handler there will always fire and you can do your setup there from that card without worrying about timing.
On December 27, 2014 10:12:19 AM CST, Michael Doub <miked...@gmail.com> wrote: >Jacqueline and Mike, thanks for you help with this. > >Just to clarify, I am trying to solve the problem in the environment >where livecode is not running and the user double clicks on the >MasterLibrary stack. This is not a standalone program but a stack >that >is being started from the desktop. I am testing on a Mac, but I need >to >test on a PC to see if the behavior is any different. > >Mike, I think you gave me a great clue. The current logic in the >MasterLibrary is one where the preopenstack handler puts up a splash >screen and sends off a wakeup message to come back in 5 seconds. I was > >quite surprised to see how long it actually took the IDE to get >initialized. This is way too long to wait if livecode is already up >and >running. > >I added some debug code to display the allowinterupt state and found >that at the time my preopenstack handler messages gets called >allowinterupts is false, but in my wakeup hander the allowinterupts is >true. This leads me to believe that I can monitor the allowinterupts >at >a faster frequency and do the actual wake up processing when I see it >go >true. > >Regards, > Mike > > >On 12/26/14 4:38 PM, Mike Bonner wrote: >> It looks like the IDE load order is this: >> System params are checked >> libraries loaded >> globals set >> preferences set >> icons loaded >> patterns loaded >> script editor loaded >> user icon libraries loaded >> error management loaded >> tools loaded >> menu bar loaded >> app overview loaded >> message box loaded >> debugger loaded >> quicktime loaded >> plugins loaded >> then "revInternail_InitializeFinalSteps.. >> after that, there are still a couple things such as checking the >license >> being used (community etc) and setting some os specific parameters. >The >> very last thing (it seems) is the line "set the allowinterrupts to >true" >> >> You can see this info in the script of stack home.rev, handler >> revInternal_openStack. Wonder if there is something in that script >you can >> check to determine if the IDE is far enough along to do the things >you >> need. >> >> >> On Fri, Dec 26, 2014 at 1:31 PM, J. Landman Gay ><jac...@hyperactivesw.com> >> wrote: >> >>> On 12/24/2014 11:57 AM, Michael Doub wrote: >>> >>>> I have tried that but I need to process the resumeStack message >which >>>> seems to get called as part of the startup process. >>>> >>> Resumestack shouldn't be sent normally when a stack opens. There's a >>> difference between starting up a standalone and starting the IDE >though; it >>> may be that some of the IDE stacks need to deal with resumestack. >But your >>> own stack shouldn't need to. >>> >>> I guess I have to >>>> manually set a global flag and have the timed handler unblock the >>>> flag. What is the very first handler that an application can >process? >>>> Startup? >>>> >>> Again, it depends. In a standalone the first message is startup. The >stack >>> isn't fully loaded at that point so you can't manipulate stack or >card >>> objects yet but you can set global properties there. >>> >>> But in the IDE, LiveCode itself catches the startup message and your >stack >>> will never receive it. The first message your stack will get is >>> preOpenStack. >>> >>> >>> Is there an ordered list of messages that are fired for startup >and >>>> opening a stack? Opening a card would be useful too. I can't say >that >>>> I have ever seen this anywhere in the documentation. >>>> >>> It follows the normal message path in reverse, starting with the >stack >>> messages followed by background group messages and then card >messages. If >>> there are card groups on the first card, they get sent last. >>> >>> -- >>> Jacqueline Landman Gay | jac...@hyperactivesw.com >>> HyperActive Software | http://www.hyperactivesw.com >>> >>> _______________________________________________ >>> use-livecode mailing list >>> use-livecode@lists.runrev.com >>> Please visit this url to subscribe, unsubscribe and manage your >>> subscription preferences: >>> http://lists.runrev.com/mailman/listinfo/use-livecode >>> >> _______________________________________________ >> use-livecode mailing list >> use-livecode@lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your >subscription preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > >_______________________________________________ >use-livecode mailing list >use-livecode@lists.runrev.com >Please visit this url to subscribe, unsubscribe and manage your >subscription preferences: >http://lists.runrev.com/mailman/listinfo/use-livecode -- Jacqueline Landman Gay | jac...@hyperactivesw.com HyperActive Software | http://www.hyperactivesw.com _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode