Hi all. 

I have isolated the issue I presented some time ago, where selecting a record 
in a datagrid crashed Livecode to desktop. It can be reproduced easily enough. 

Create a stack with a single datagrid, add 2 records. In the script of the 
datagrid have a selectionChanged handler like so:

on selectionChanged
      put the dgHilitedIndex of me into tHilitedIndex
      put the dgDataOfIndex [tHilitedIndex] of me into aDGData [1]
      set the dgData of me to aDGData
end selectionChanged

This demonstrates that a datagrid's selectionChanged handler cannot set it's 
own dgData! Neither can any other handler in the executionContexts that 
selectionChanged calls, while that selectionChanged is still in the 
executionContexts. (That's too confusing.) 

In other words, while a datagrid's selectionChanged handler is "running" 
nothing can change the contents of the datagrid. 

I'm not sure why this is, but I think it's because the datagrid library does 
something internernally that triggers another selectionChanged, causing an 
infiinite loop, forcing the engine to bail out. 

Any ideas?

Bob S


_______________________________________________
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

Reply via email to