Get a handler from a script
Geoff Canyon
gcanyon at inspiredlogic.com
Fri Mar 17 11:16:00 EST 2006
On Mar 16, 2006, at 5:25 PM, Thomas McGrath III wrote:
> But, I would like to get just one of the handlers from a script via
> script: put handler "FooBar" of the script of card "Foo" into tBar
Most of the solutions presented so far make assumptions. For example,
there can be more than one space between "on" and the handler name.
In Navigator I use this to retrieve a list of the handler names:
repeat for each line L in tText -- tText is the script
if word 1 of L is among the items of "on,function,getprop,setprop"
then
put L & cr after tMenuText
end if
end repeat
So to get the handler you would be doing something like:
put 0 into tLineNumber
put false into tEnteredHandler
repeat for each line L in tText -- tText is the script
add 1 to tLineNumber
if word 1 of L is among the items of "on,function,getprop,setprop"
and \
word 2 of L is tHandlerName then
put tLineNumber into tStartLineNumber
put true into tEnteredHandler
end if
if tEnteredHandler and \
word 1 of L is "end" and \
word 2 of L is tHandlerName then
put tLineNumber into tEndLineNumber
exit repeat
end if
end repeat
-- if tEnteredHandler is false, we didn't find the handler
-- if tEnteredHandler is true, tStartLineNumber is where it starts,
-- tEndLineNumber is where it ends
regards,
Geoff
More information about the use-livecode
mailing list