On 6/2/05 7:35 AM, Jon wrote:

Here is the contents of the script page for the main stack. When I resize the stack, the IDE hangs up and has to be killed from the Task Manager. <Ctrl>-"." and <Alt>-"." and like that there do nothing. Putting a breakpoint on the call to DoResizeStack does not prevent the hang. I assume something is getting called repeatedly/recursively, but with the debugger failing, I can't figure out what is going on.

Any hints?

There are a lot. ;) I'll comment your script:


on resizeStack
 DoResizeStack -- this is a command handler call, not a function
end resizeStack

Command handlers are written the way you have done it. Functions generally return a value to the calling handler are are written in this format: put myFunction() into tResult. If there are values to be passed to the function, you add them inside the parentheses: get myFunction(val1,val2) into tResult. Note that functions must be called with a place to put the returned value; i.e., my example uses the varialbe tResult to store the returned value of the function call.

Your command syntax is appropriate; you should not be using a function here. So what needs to change is your handler syntax, like this:

on DoResizeStack -- using "on" makes it a command handler
 set left of "image" to 8
-- here you have not told Rev what object to operate on. What is "image"? You can refer to objects by name, ID, or number, but you need to indicate what object should be manipulated. The line should be:

set the left of img "imgName" to 8

or you could use:

set the left of img 1 to 8 -- OR:
set the left of img ID 1005 to 8

Any of these will work, but you do need to let Rev know what object you are setting.

The same applies for all lines in the script that use "set":
 set the top of img "imgName" to 20
 put the width of img "imageName" -16 into ww
 put the height of img "imageName" - 32 into wh
 put the formattedwidth of img "imageName" into fw
 put the formattedheight of img "imageName" into fh
 put fh / fw into iRatio
 put h / w into wRatio
 if iRatio > wRatio then
   -- image is taller than space available: need empty space to right of
image
   set the height of img "imageName" to h
   put h / iRatio into w
   set the width of img "imageName" to w
 else
   -- need space under image
   set the width of img "imageName" to w
   put w * iRatio into h
   set the height of img "imageName" to h
 end if
end DoResizeStack

I have added "the" to all the properties referenced in the script, that is, "the height", "the width". Technically this isn't necessary but I find it to be good form.

I am not sure why Rev would hang -- you should have seen a syntax error somewhere I think. But I suspect it didn't know what to do when you called a command handler but wrote a function. Just a guess.

--
Jacqueline Landman Gay         |     [EMAIL PROTECTED]
HyperActive Software           |     http://www.hyperactivesw.com
_______________________________________________
use-revolution mailing list
[email protected]
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to