Francis,
I wrote earlier that my experience with the Rev. Debugger was not as positive as Jacque's (the little red button indicating the start of the debugging process disappears occasionally; sometimes the marker does not trigger the debugger; I have to click the "Step into" button to begin stepping through a script - then the spacebar works as Jacque described it, etc.) But, even in its imperfect form, the debugger is extremely helpful - and, when you outgrow it, there's Jerry's Constellation. Also, please check out Geoff Canyon's Rev Navigator. It is one of the Plugins in the Development menu. It will not only show all of your buttons and fields, but it will show you what layer they occupy. AND you can relayer any of these objects directly (and visually) from the Navigator list! Got an object hidden by another object, use Navigator to select the hidden one. Got an object that is completely off the screen, use Navigator to select it then change its position back into view. Got two objects with the same name, on top of eachother, Navigator will show this. Unlike the Rev Debugger, I never have any "issues" with the Navigator. For over three years it has always worked reliably and predictably for me. I never hesitate to recommend it. Note, I'm not saying the Navigator replaces the debugger. Both are helpful (and probably "essential") tools.
Paul Looney

-----Original Message-----
From: J. Landman Gay <[EMAIL PROTECTED]>
To: How to use Revolution <[email protected]>
Sent: Thu, 27 Apr 2006 12:52:59 -0500
Subject: Re: Use of the Debugger ?

Francis Nugent Dixon wrote: 
> Hi from Paris, 
> > To continue after Jaqueline's and Richard's comments. 
> > Interesting subject. Maybe we could ask other people 
> if they use the debugger ? 
> >> Richard Gaskin wrote: 
>> 
>> My first reaction is to pick my jaw up off the floor. How 
>> can you not use the debugger much? I *live* in the 
>> debugger! Who can program without a debugger? 
>> You are making more work for yourself, I think. 
> > I used HC every day for more than 10 years, and now 
> I use Revolution every day. I never used HC debugging, 
> and I haven't even thought about Revolution debugging ! 
> I don't even know how it works. 
 
I think it would be valuable for you to learn, because everything you describe below is done automatically for you in the debugger. 
 
> One thing I have found very useful. I declare globals 
> for every local, during testing, and then comment out 
> the global definitions after testing. They will be available 
> in the future, if I make any major mods to my scripts. 
 
The Variable Watcher shows local variable values automatically when you are in debugging mode. You don't have to specially declare them or turn them into globals. 
 
> I use the "do" command often, but in the form : 
> > put xxxxxxxxxxxx into DoIt -- DoIt is a global 
> do DoIt 
> > Then I can see if I blew it ! 
> > I have a header card on my stacks (which I build 
> from pre-prepared models). I have displayglobals, 
> displayfields and displaybuttons functions available 
> in all my stacks, to see what I have defined. I often 
> code "exit xxx" in my scripts during testing, and comment 
> them out as I go. My only gripe is that the Variable Watcher 
> doesn't update in real-time. You have to close it and 
> open it again, each time. But then, I am just about to 
> create a button to do this ........... ! 
 
The VW will update automatically if you have "Script debug mode" turned on in the Development menu, and you are in the process of debugging a script. 
 
If you are not in the process of debugging, the VW will show the values of all global variables. They will update in real time, but sometimes you need to click on them to update the display. If you are debugging a handler, all variables update dynamically (without clicking.) 
 
Try it, I think you will be amazed at the amount of information you can get. Do this: 
 
Open a script you want to debug. Make sure "Script debug mode" is checked in the Development menu. Click in the column to the left of any line in the handler where you want to see what is happening. This sets a red dot there, which is a breakpoint. Open the variable watcher. 
 
Now, in your stack, do whatever action is required to run that handler. The place where you have put the breakpoint (the red dot) is where the script will stop. Look at the variable watcher -- all your variables are there with their current values. Use the buttons at the bottom of the script window to step through (or step over) each line of script. The variable watcher values will change. If you don't want to click the buttons, you can step into each line by pressing the spacebar. You can step over each line by pressing Shift-spacebar. 
 
If you want to test what a different value would do to your handler, you can change it inside the VW while you are debugging. Click a line in the VW, and you will see the value of that variable in the bottom pane. You can change that value to whatever you want. Hit the Enter key to put the new value into the variable. Then continue stepping through your script, and it will use the new value you put in instead of the original value. 
 
I sometimes use this technique to test what will happen if my stack encounters bad data; for example, I make a variable empty to see how my handler will work in that situation. Or I make a numerical value into an alpha value to see what will happen. It is a good way to test out various situations. 
 
There is more you can do, but that's the important stuff. Try it, I think it will save you some time. 
 
-- Jacqueline Landman Gay | [EMAIL PROTECTED]
HyperActive Software | http://www.hyperactivesw.com 
_______________________________________________ 
use-revolution mailing list 
[EMAIL PROTECTED]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences: 
http://lists.runrev.com/mailman/listinfo/use-revolution 

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to