Oops… just for thoroughness: In the last handler I forgot to add the line “put empty into sFlag” after the repeat loop
-- Scott Morrow Elementary Software (Now with 20% less chalk dust!) web https://elementarysoftware.com/ email sc...@elementarysoftware.com booth 1-360-734-4701 ------------------------------------------------------ > On Jul 26, 2025, at 1:59 AM, scott--- via use-livecode > <use-livecode@lists.runrev.com> wrote: > > The way that the loop is written would make it blocking. If you wanted the > loop to start running and then stop after the mouseUp happens I think you > would need to add a "wait x millisec with messages” > > Fo example: > > global myVar > > on elsoTester > put 0 into myVar > -- some code > repeat until myVar > 0 > -- set the thumbPosition of scrollBar "ProgressBar" to (the > thumbPosition of scrollBar "ProgressBar" + 5) -- testing > wait 500 millisec with messages > end repeat > -- some code > answer "Finished" > end elsoTester > > > Depending on what you are doing, another method would be to use a "send it > time" mechanism where the handler keeps calling itself until myVar > 0 > For example: > > > local sFlag > global myVar > > command elsoTester > if sFlag is empty then > put 0 into myVar > -- some code > end if > > repeat until myVar > 0 > -- set the thumbPosition of scrollBar "ProgressBar" to (the > thumbPosition of scrollBar "ProgressBar" + 5) -- testing > put “waiting” into sFlag > send elsoTester to me in 500 millisec > exit elsoTester > end repeat > > answer “Finished" > end elsoTester > > To be thorough you might also might want to empty the message queue of any > other elsoTester messages before sending in time or add a timer which will > eventually time out if myVar doesn’t exceed 0 after a set time. > > -- > Scott Morrow > > Elementary Software > (Now with 20% less chalk dust!) > web https://elementarysoftware.com/ > email sc...@elementarysoftware.com > booth 1-360-734-4701 > ------------------------------------------------------ > >> On Jul 26, 2025, at 12:44 AM, jbv via use-livecode >> <use-livecode@lists.runrev.com> wrote: >> >> Hi list, >> >> Let's say I have a portion of a script like this : >> >> global myVar >> put 0 into myVar >> -- some code >> repeat until myVar > 0 >> end repeat >> -- some code >> >> and the content of global myVar being changed >> in a handler of another control : >> >> on mouseUp >> global myVar >> put 1 into myVar >> end mouseUp >> >> I know this is not very elegant, but my question is : >> can the change in myVar be detected in a loop like >> above ? >> I made some tests and it doesn't seem to work... >> >> Thank you in advance. >> jbv >> >> _______________________________________________ >> 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