Version 0.1.62 and higher
Debugger is available in Design Forms 0.1.62 and higher.
buRun the script with debugger:/u/b
Click on the small arrow on the right side of "Refresh" button and select "Run script with debugger".
- or -
Press key shortcut (F6) in CodeEditor.
buSet BreakPoints:/u/b
BreakPoint is the point where the script execution is paused.
A breakpoint is a signal that tells the debugger to temporarily suspend execution of your app at a certain point. When execution is suspended at a breakpoint, your program is said to be in break mode. While being in break-mode, you can watch variables, trace listener and calculation output. Entering break mode does not stop or end the execution of your program; execution can be resumed at any time.
You can add as many breakpoints as you want. You can even add/remove breakpoints during the script execution.
BreakPoint is highlighted with red background.
buEntering extern CLC:/u/b
You can define break points in extern CLC (if you have source code for that).
list
*Click at the LoadExternCLC command in Code editor./*:m
*Press F12 to open source code of extern CLC (read only)./*:m
*Setup any breakpoints in extern CLC source code./*:m
*Run script with debugger/*:m/list:u
buStepping the instructions:/u/b
One of the most common debugging procedures is stepping. Stepping is executing script one instruction at a time. When you have halted execution, such as running the debugger to a breakpoint, you can use three debug commands to step through code:
list
*Next breakpoint (F6) - Continue in script execution until reach next breakpoint or reach the end of the script./*:m
*Step Into (F11) - If the line contains a function call or extern CLC, iStep Into/i executes only the call itself, then halts at the first instruction of the code inside the function. Otherwise, Step Into executes the next statement.

*Step Over (F10) - If the line contains a function call or extern CLC, iStep Over/i executes entire function (extern CLC) and then halts at the next instruction./*:m/list:u
buModify variable values:/u/b
You can modify any variable property while being in break mode.
