Problem resizing a stack

Bob Sneidar bobs at twft.com
Mon Aug 27 20:03:59 EDT 2012


I found this:

http://forums.runrev.com/phpBB2/viewtopic.php?f=8&t=12348

Bob


On Aug 27, 2012, at 4:55 PM, Peter Haworth wrote:

> I'm strongly thinking that preOpenCard is a suspect area for plugins.
> 
> My stack resizes correctly if I send a message to the handler that does the
> resizing from the message box after the stack is displayed but the same
> handler does nothing when executed in preOpencard, even when the code is to
> send the message in zero milliseconds.
> 
> Furthermore, after finally getting a breakpoint to work in preOpenCard, I
> have seen three totally different results in a field which is populated in
> preOpenCard.
> 
> If I step though all the code a line at a time, the filed is populated as
> expected.
> 
> If, at the breakpoint, I click the green arrow to continue executing
> without any more stepping, I get an incorrect display in the field.
> 
> If I remove the breakpoint, the field is empty.
> 
> All of this works perfectly fine when the stack is not a plugin, whether I
> run it as toplevel or modeless.
> 
> It appears that something about preOpenCard processing is different when a
> stack is a plugin than when it isn't.
> 
> Any clues?
> 
> Pete
> lcSQL Software <http://www.lcsql.com>
> 
> 
> 
> On Mon, Aug 27, 2012 at 3:36 PM, Peter Haworth <pete at lcsql.com> wrote:
> 
>> Well I thought I had this problem licked but as usual, LC manages to
>> provide some last minute surprises.
>> 
>> The stack in question is destined to be a modeless plugin.  I've been
>> doing 90% of my testing with it as a regular toplevel stack, not a plugin
>> and the fix for this problem (locking/unlocking messages around the stack
>> resize) worked fine.
>> 
>> Today I ran it as a modeless plugin and all is messed up again.  Not only
>> does the stack not resize correctly, but the group that I am attempting to
>> show only randomly shows up.  To make matters worse, attempts to debug fail
>> because neither a debug breakpoint nor a breakpoint command cause it to
>> break (the code is in a preOpenCard handler).
>> 
>> 
>> Pete
>> lcSQL Software <http://www.lcsql.com>
>> 
>> 
>> 
>> On Fri, Aug 24, 2012 at 5:01 PM, <dunbarx at aol.com> wrote:
>> 
>>> It has become standard practice to:
>>> 
>>> 
>>> send yourMessage in 0 millisec
>>> 
>>> 
>>> instead of
>>> 
>>> 
>>> just put some code after openCard/openStack,etc types of handlers. I hate
>>> that this might be so, but it seems to account, or at least forgive,
>>> certain timing and event queue issues that are inherent in those types of
>>> messages.
>>> 
>>> 
>>> Try it. I don't think there is a formal methodology for it all, it just
>>> seems to work. The fact that you can step through code, but not execute in
>>> real time, makes me think it could solve the problem.
>>> 
>>> 
>>> Craig Newman
>>> 
>>> 
>>> 
>>> -----Original Message-----
>>> From: Peter Haworth <pete at lcsql.com>
>>> To: How to use LiveCode <use-livecode at lists.runrev.com>
>>> Sent: Fri, Aug 24, 2012 6:09 pm
>>> Subject: Problem resizing a stack
>>> 
>>> 
>>> A stack I'm working on has a group at the bottom that, at startup, needs
>>> to
>>> be hiddenor visible depending on preference setting.
>>> 
>>> I want to adjust the bottom of the stack depdning on whether the group is
>>> hidden or not.
>>> 
>>> In a preOpenCard handler, if  the preference requires the group to be
>>> hidden and it is not already hidden, I get the stack's rectangle, subtract
>>> the height of the group from item 4 of the rectangle, then set the stack's
>>> rectangle to the new value.
>>> 
>>> When I step through the code that does this in debug, the stack height
>>> changes correctly, but when the code is executed without a debug
>>> breakpoint, the bottom of the stack doesn't change position.
>>> 
>>> Is there some timing issue I need to be aware of when changing stack sizes
>>> like this?
>>> 
>>> Pete
>>> lcSQL Software <http://www.lcsql.com>
>>> _______________________________________________
>>> use-livecode mailing list
>>> use-livecode at 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 at 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 at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode





More information about the Use-livecode mailing list