Sophie

Sophie

distrib > Mageia > 7 > x86_64 > by-pkgid > 1dd17e0d683ef79b4bb6872bbf359d7f > files > 6926

qt4-doc-4.8.7-26.2.mga7.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- qtscriptdebugger-manual.qdoc -->
  <title>Qt 4.8: Qt Script Debugger Manual</title>
  <link rel="stylesheet" type="text/css" href="style/style.css" />
  <script src="scripts/jquery.js" type="text/javascript"></script>
  <script src="scripts/functions.js" type="text/javascript"></script>
  <link rel="stylesheet" type="text/css" href="style/superfish.css" />
  <link rel="stylesheet" type="text/css" href="style/narrow.css" />
  <!--[if IE]>
<meta name="MSSmartTagsPreventParsing" content="true">
<meta http-equiv="imagetoolbar" content="no">
<![endif]-->
<!--[if lt IE 7]>
<link rel="stylesheet" type="text/css" href="style/style_ie6.css">
<![endif]-->
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="style/style_ie7.css">
<![endif]-->
<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="style/style_ie8.css">
<![endif]-->

<script src="scripts/superfish.js" type="text/javascript"></script>
<script src="scripts/narrow.js" type="text/javascript"></script>

</head>
<body class="" onload="CheckEmptyAndLoadList();">
 <div class="header" id="qtdocheader">
    <div class="content"> 
    <div id="nav-logo">
      <a href="index.html">Home</a></div>
    <a href="index.html" class="qtref"><span>Qt Reference Documentation</span></a>
    <div id="narrowsearch"></div>
    <div id="nav-topright">
      <ul>
        <li class="nav-topright-home"><a href="http://qt.digia.com/">Qt HOME</a></li>
        <li class="nav-topright-dev"><a href="http://qt-project.org/">DEV</a></li>
        <li class="nav-topright-doc nav-topright-doc-active"><a href="http://qt-project.org/doc/">
          DOC</a></li>
        <li class="nav-topright-blog"><a href="http://blog.qt.digia.com/">BLOG</a></li>
      </ul>
    </div>
    <div id="shortCut">
      <ul>
        <li class="shortCut-topleft-inactive"><span><a href="index.html">Qt 4.8</a></span></li>
        <li class="shortCut-topleft-active"><a href="http://qt-project.org/doc/">ALL VERSIONS        </a></li>
      </ul>
     </div>
 <ul class="sf-menu" id="narrowmenu"> 
             <li><a href="#">API Lookup</a> 
                 <ul> 
                     <li><a href="classes.html">Class index</a></li> 
           <li><a href="functions.html">Function index</a></li> 
           <li><a href="modules.html">Modules</a></li> 
           <li><a href="namespaces.html">Namespaces</a></li> 
           <li><a href="qtglobal.html">Global Declarations</a></li> 
           <li><a href="qdeclarativeelements.html">QML elements</a></li> 
             </ul> 
             </li> 
             <li><a href="#">Qt Topics</a> 
                 <ul> 
                        <li><a href="qt-basic-concepts.html">Programming with Qt</a></li>  
                        <li><a href="qtquick.html">Device UIs &amp; Qt Quick</a></li>  
                        <li><a href="qt-gui-concepts.html">UI Design with Qt</a></li>  
                        <li><a href="supported-platforms.html">Supported Platforms</a></li>  
                        <li><a href="technology-apis.html">Qt and Key Technologies</a></li>  
                        <li><a href="best-practices.html">How-To's and Best Practices</a></li>  
              </ul> 
                 </li> 
                 <li><a href="#">Examples</a> 
                     <ul> 
                       <li><a href="all-examples.html">Examples</a></li> 
                       <li><a href="tutorials.html">Tutorials</a></li> 
                       <li><a href="demos.html">Demos</a></li> 
                       <li><a href="qdeclarativeexamples.html">QML Examples</a></li> 
                </ul> 
                     </li> 
                 </ul> 
    </div>
  </div>
  <div class="wrapper">
    <div class="hd">
      <span></span>
    </div>
    <div class="bd group">
      <div class="sidebar">
        <div class="searchlabel">
          Search index:</div>
        <div class="search" id="sidebarsearch">
          <form id="qtdocsearch" action="" onsubmit="return false;">
            <fieldset>
              <input type="text" name="searchstring" id="pageType" value="" />
 <div id="resultdialog"> 
 <a href="#" id="resultclose">Close</a> 
 <p id="resultlinks" class="all"><a href="#" id="showallresults">All</a> | <a href="#" id="showapiresults">API</a> | <a href="#" id="showarticleresults">Articles</a> | <a href="#" id="showexampleresults">Examples</a></p> 
 <p id="searchcount" class="all"><span id="resultcount"></span><span id="apicount"></span><span id="articlecount"></span><span id="examplecount"></span>&nbsp;results:</p> 
 <ul id="resultlist" class="all"> 
 </ul> 
 </div> 
            </fieldset>
          </form>
        </div>
        <div class="box first bottombar" id="lookup">
          <h2 title="API Lookup"><span></span>
            API Lookup</h2>
          <div  id="list001" class="list">
          <ul id="ul001" >
              <li class="defaultLink"><a href="classes.html">Class index</a></li>
              <li class="defaultLink"><a href="functions.html">Function index</a></li>
              <li class="defaultLink"><a href="modules.html">Modules</a></li>
              <li class="defaultLink"><a href="namespaces.html">Namespaces</a></li>
              <li class="defaultLink"><a href="qtglobal.html">Global Declarations</a></li>
              <li class="defaultLink"><a href="qdeclarativeelements.html">QML elements</a></li>
            </ul> 
          </div>
        </div>
        <div class="box bottombar" id="topics">
          <h2 title="Qt Topics"><span></span>
            Qt Topics</h2>
          <div id="list002" class="list">
            <ul id="ul002" >
               <li class="defaultLink"><a href="qt-basic-concepts.html">Programming with Qt</a></li> 
               <li class="defaultLink"><a href="qtquick.html">Device UIs &amp; Qt Quick</a></li> 
               <li class="defaultLink"><a href="qt-gui-concepts.html">UI Design with Qt</a></li> 
               <li class="defaultLink"><a href="supported-platforms.html">Supported Platforms</a></li>  
               <li class="defaultLink"><a href="technology-apis.html">Qt and Key Technologies</a></li> 
               <li class="defaultLink"><a href="best-practices.html">How-To's and Best Practices</a></li> 
            </ul>  
          </div>
        </div>
        <div class="box" id="examples">
          <h2 title="Examples"><span></span>
            Examples</h2>
          <div id="list003" class="list">
        <ul id="ul003">
              <li class="defaultLink"><a href="all-examples.html">Examples</a></li>
              <li class="defaultLink"><a href="tutorials.html">Tutorials</a></li>
              <li class="defaultLink"><a href="demos.html">Demos</a></li>
              <li class="defaultLink"><a href="qdeclarativeexamples.html">QML Examples</a></li>
            </ul> 
          </div>
        </div>
      </div>
      <div class="wrap">
        <div class="toolbar">
          <div class="breadcrumb toolblock">
            <ul>
              <li class="first"><a href="index.html">Home</a></li>
              <!--  Breadcrumbs go here -->
<li>Qt Script Debugger Manual</li>
            </ul>
          </div>
          <div class="toolbuttons toolblock">
            <ul>
              <li id="smallA" class="t_button">A</li>
              <li id="medA" class="t_button active">A</li>
              <li id="bigA" class="t_button">A</li>
              <li id="print" class="t_button"><a href="javascript:this.print();">
                <span>Print</span></a></li>
            </ul>
        </div>
        </div>
        <div class="content mainContent">
<div class="toc">
<h3><a name="toc">Contents</a></h3>
<ul>
<li class="level1"><a href="#getting-started">Getting Started</a></li>
<li class="level1"><a href="#overview-of-debugger-components">Overview of Debugger Components</a></li>
<li class="level2"><a href="#resuming-script-evaluation">Resuming Script Evaluation</a></li>
<li class="level2"><a href="#resuming-after-an-uncaught-exception">Resuming After an Uncaught Exception</a></li>
<li class="level1"><a href="#console-command-reference">Console Command Reference</a></li>
<li class="level2"><a href="#breakpoint-related-commands">Breakpoint-related Commands</a></li>
<li class="level3"><a href="#break-location">break &lt;location&gt;</a></li>
<li class="level3"><a href="#clear-location">clear &lt;location&gt;</a></li>
<li class="level3"><a href="#condition-breakpoint-id-expression">condition &lt;breakpoint-id&gt; &lt;expression&gt;</a></li>
<li class="level3"><a href="#delete-breakpoint-id">delete &lt;breakpoint-id&gt;</a></li>
<li class="level3"><a href="#disable-breakpoint-id">disable &lt;breakpoint-id&gt;</a></li>
<li class="level3"><a href="#enable-breakpoint-id">enable &lt;breakpoint-id&gt;</a></li>
<li class="level3"><a href="#ignore-breakpoint-id-count">ignore &lt;breakpoint-id&gt; &lt;count&gt;</a></li>
<li class="level3"><a href="#info-breakpoints">info breakpoints</a></li>
<li class="level3"><a href="#tbreak-location">tbreak &lt;location&gt;</a></li>
<li class="level2"><a href="#file-related-commands">File-related Commands</a></li>
<li class="level3"><a href="#list-location">list &lt;location&gt;</a></li>
<li class="level3"><a href="#info-scripts">info scripts</a></li>
<li class="level2"><a href="#execution-related-commands">Execution-related Commands</a></li>
<li class="level3"><a href="#advance-location">advance &lt;location&gt;</a></li>
<li class="level3"><a href="#continue">continue</a></li>
<li class="level3"><a href="#eval-program">eval &lt;program&gt;</a></li>
<li class="level3"><a href="#finish">finish</a></li>
<li class="level3"><a href="#interrupt">interrupt</a></li>
<li class="level3"><a href="#next-count-1">next &lt;count = 1&gt;</a></li>
<li class="level3"><a href="#return-expression">return &lt;expression&gt;</a></li>
<li class="level3"><a href="#step-count-1">step &lt;count = 1&gt;</a></li>
<li class="level2"><a href="#stack-related-commands">Stack-related Commands</a></li>
<li class="level3"><a href="#backtrace">backtrace</a></li>
<li class="level3"><a href="#down">down</a></li>
<li class="level3"><a href="#frame-index">frame &lt;index&gt;</a></li>
<li class="level3"><a href="#info-locals">info locals</a></li>
<li class="level3"><a href="#up">up</a></li>
</ul>
</div>
<h1 class="title">Qt Script Debugger Manual</h1>
<span class="subtitle"></span>
<!-- $$$qtscriptdebugger-manual.html-description -->
<div class="descr"> <a name="details"></a>
<p>The Qt Script debugger is a tool for debugging script execution in Qt applications that use Qt Script. Application developers can embed the debugger into their application through the <a href="qscriptenginedebugger.html">QScriptEngineDebugger</a> class. This manual describes how to use the debugger. We assume that the reader is somewhat familiar with general debugging concepts and existing debugging tools.</p>
<p>We assume that the debugger has been integrated into the application through the <a href="qscriptenginedebugger.html#standardWindow">QScriptEngineDebugger::standardWindow</a>() function, which provides the standard debugger configuration.</p>
<a name="getting-started"></a>
<h2>Getting Started</h2>
<p>The following image shows the debugger as created with <a href="qscriptenginedebugger.html#standardWindow">standardWindow()</a>:</p>
<p class="centerAlign"><img src="images/qtscript-debugger.png" alt="Running a script under the Qt Script debugger." /></p><p>The debugger will start, i.e&#x2e;, take control over the script's execution when any of these conditions are met:</p>
<ul>
<li>The <tt>debugger</tt> statement is encountered in the script.</li>
<li>Clicking the <b>Interrupt</b> menu item from the <b>Debug</b> menu in the main window.</li>
<li>A breakpoint is reached.</li>
<li>An uncaught script exception is thrown.</li>
</ul>
<p>Once the debugger is started, the execution state can be inspected, e.g&#x2e;, the value of variables can be queried and the current program stack shown. New breakpoints can be set.</p>
<p>The debugger will resume, i.e&#x2e;, give the control back to the script engine, when the user clicks <b>Continue</b> menu item from the <b>Debug</b> menu. It will be invoked again if one of the conditions described in the list above is met.</p>
<a name="overview-of-debugger-components"></a>
<h2>Overview of Debugger Components</h2>
<p>The debugger's functionality is divided into a series of components, each being a widget that can be shown in the main window of the debugger. The following table describes each component and how they relate to each other.</p>
<table class="generic">
<thead><tr class="qt-style"><th >Component</th><th >Description</th></tr></thead>
<tr valign="top" class="odd"><td >Console Widget</td><td >The console widget provides a command-line interface to the debugger's functionality, and also serves as an interactive script interpreter. The set of commands and their syntax is inspired by GDB, the GNU Debugger. Commands and script variables are auto-completed through the TAB key.<p>Any console command that causes a change in the debugger or debugger target's state will immediately be reflected in the other debugger components (e.g&#x2e; breakpoints or local variables changed).</p>
<p>The console provides a simple and powerful way of manipulating the script environment. For example, typing &quot;x&quot; and hitting enter will evaluate &quot;x&quot; in the current stack frame and display the result. Typing &quot;x = 123&quot; will assign the value 123 to the variable <tt>x</tt> in the current scope (or create a global variable <tt>x</tt> if there isn't one -- scripts evaluated through the console can have arbitrary side effects, so be careful).</p>
</td></tr>
<tr valign="top" class="even"><td >Stack Widget</td><td >The stack widget shows a backtrace of the script execution state. Each row represents one frame in the stack. A row contains the frame index (0 being the inner-most frame), the name of the script function, and the location (file name and line number). To select a particular stack frame to inspect, click on its row.</td></tr>
<tr valign="top" class="odd"><td >Locals Widget</td><td >The locals widget shows the variables that are local to the currently selected stack frame; that is, the properties of the objects in the scope chain and the <tt>this</tt>-object. Objects can be expanded, so that their properties can be examined, recursively. Properties whose value has changed are shown in bold font.<p>Properties that are not read-only can be edited. Double-click on the value and type in the new value; the value can be an arbitrary expression. The expression will be evaluated in the associated stack frame. While typing, you can press the TAB key to get possible completions for the expression.</p>
</td></tr>
<tr valign="top" class="even"><td >Code Widget</td><td >The code widget shows the code of the currently selected script. The widget displays an arrow in the left margin, marking the code line that is being executed. Clicking in the margin of a line will cause a breakpoint to be toggled at that line. A breakpoint has to be set on a line that contains an actual statement in order to be useful.When an uncaught script exception occurs, the offending line will be shown with a red background.<p>The code widget is read-only; it cannot currently be used to edit and (re)evaluate scripts. This is however possible from the command-line interface, see <a href="#console-command-reference">Console Command Reference</a>.</p>
</td></tr>
<tr valign="top" class="odd"><td >Scripts Widget</td><td >The scripts widget shows the scripts that are currently loaded in the script engine. Clicking on a script will cause its code to be shown in the code widget. When a script is no longer referenced by the debugger target it is removed from the scripts widget. Code evaluated through <a href="qscriptengine.html#evaluate">QScriptEngine::evaluate</a>() without a name specified, will be displayed in the widget as Anonymous.</td></tr>
<tr valign="top" class="even"><td >Breakpoints Widget</td><td >The breakpoints widget shows all the breakpoints that are set. A breakpoint can be disabled or enabled by clicking the checkbox next to the breakpoint's ID (the ID is provided so that the breakpoint can be manipulated through the console widget as well).<p>A condition can be associated with the breakpoint; the condition can be an arbitrary expression that should evaluate to true or false. The breakpoint will only be triggered when its location is reached <b>and</b> the condition evaluates to true.</p>
<p>Similarly, if the breakpoint's ignore-count is set to N, the breakpoint will be ignored the next N times it is hit.</p>
<p>A new breakpoint can be set by clicking the New Breakpoint button and typing in a location of the form &lt;filename&gt;<b>:</b>&lt;linenumber&gt;. The breakpoint location can refer to an already loaded script, or one that has not been loaded yet.</p>
</td></tr>
<tr valign="top" class="odd"><td >Debug Output Widget</td><td >The debug output widget shows messages generated by the print() script function. Scripts can use the special variables <tt>__FILE__</tt> and <tt>__LINE__</tt> to include the current location information in the messages.</td></tr>
<tr valign="top" class="even"><td >Error Log Widget</td><td >The error log widget shows error messages that have been generated. All uncaught exceptions that occur in the engine will appear here.</td></tr>
</table>
<a name="resuming-script-evaluation"></a>
<h3>Resuming Script Evaluation</h3>
<p>Script evaluation can be resumed in one of the following ways:</p>
<ul>
<li><b>Continue</b>: Evaluation will resume normally.</li>
<li><b>Step Into</b>: Evaluation will resume until the next statement is reached.</li>
<li><b>Step Over</b>: Evaluation will resume until the next statement is reached; but if the current statement is a function call, the debugger will treat it as a single statement.</li>
<li><b>Step Out</b>: Evaluation will resume until the current function exits and the next statement is reached.</li>
<li><b>Run to Cursor</b>: Run until the statement at the cursor is reached.</li>
<li><b>Run to New Script</b>: Run until the first statement of a new script is reached.</li>
</ul>
<p>In any case, script evaluation can also be stopped due to either of the following reasons:</p>
<ul>
<li>A <tt>debugger</tt> statement is encountered.</li>
<li>A breakpoint is hit.</li>
<li>An uncaught script exception occurs.</li>
</ul>
<a name="resuming-after-an-uncaught-exception"></a>
<h3>Resuming After an Uncaught Exception</h3>
<p>When an uncaught script exception occurs, it is not possible to continue evaluating the current function normally. However, you can use the console command <b>return</b> to catch the exception and return a value to the calling function.</p>
<a name="console-command-reference"></a>
<h2>Console Command Reference</h2>
<p>Note that you can also get help on the available commands by typing &quot;.help&quot; in the console.</p>
<a name="breakpoint-related-commands"></a>
<h3>Breakpoint-related Commands</h3>
<p>Break points is set</p>
<a name="break-location"></a>
<h4>break &lt;location&gt;</h4>
<p>Sets a breakpoint at a given code line.</p>
<pre class="cpp"> <span class="operator">.</span><span class="keyword">break</span> foo<span class="operator">.</span>qs:<span class="number">123</span></pre>
<p>This command sets a breakpoint at <tt>foo.qs</tt>, line 123.</p>
<pre class="cpp"> <span class="operator">.</span><span class="keyword">break</span> <span class="number">123</span></pre>
<p>This command sets a breakpoint at line 123 in the current script; the current script is the script associated with the current stack frame.</p>
<p>Each breakpoint has a unique identifier (an integer) associated with it. This identifier is needed by other breakpoint-related commands.</p>
<a name="clear-location"></a>
<h4>clear &lt;location&gt;</h4>
<pre class="cpp"> <span class="operator">.</span>clear foo<span class="operator">.</span>qs:<span class="number">123</span></pre>
<p>clears (deletes) the breakpoint at <tt>foo.qs</tt>, line 123.</p>
<pre class="cpp"> clear <span class="number">123</span></pre>
<p>clears (deletes) the breakpoint at line 123 in the current script; the current script is the script associated with the current stack frame.</p>
<a name="condition-breakpoint-id-expression"></a>
<h4>condition &lt;breakpoint-id&gt; &lt;expression&gt;</h4>
<p>Sets a condition for a breakpoint.</p>
<pre class="cpp"> <span class="operator">.</span>condition <span class="number">1</span> i <span class="operator">&gt;</span> <span class="number">42</span></pre>
<p>specifies that breakpoint 1 should only be triggered if the variable <tt>i</tt> is greater than 42.</p>
<p>The expression can be an arbitrary one, i.e&#x2e; it can have side-effects. It can be any valid QScript conditional expression.</p>
<a name="delete-breakpoint-id"></a>
<h4>delete &lt;breakpoint-id&gt;</h4>
<p>Deletes a breakpoint, i.e&#x2e;, removes it from the current debugging session.</p>
<a name="disable-breakpoint-id"></a>
<h4>disable &lt;breakpoint-id&gt;</h4>
<p>Disables a breakpoint. The breakpoint will continue to exist, but will not stop program execution.</p>
<a name="enable-breakpoint-id"></a>
<h4>enable &lt;breakpoint-id&gt;</h4>
<p>Enables a breakpoint. Breakpoints are enabled by default, so you only need to use this command if you have disabled to breakpoint previously.</p>
<a name="ignore-breakpoint-id-count"></a>
<h4>ignore &lt;breakpoint-id&gt; &lt;count&gt;</h4>
<p>Sets the ignore-count of a breakpoint, i.e&#x2e;, the breakpoint will not stop the program execution unless it have been reached <tt>count</tt> times. This can, for instance, be useful in loops to stop at a specific iteration.</p>
<pre class="cpp"> <span class="operator">.</span>ignore <span class="number">1</span> <span class="number">5</span></pre>
<p>Specifies that breakpoint 1 should be ignored the next 5 times it is hit.</p>
<a name="info-breakpoints"></a>
<h4>info breakpoints</h4>
<p>Lists the breakpoints that are set.</p>
<pre class="cpp">   <span class="operator">.</span>info breakpoints</pre>
<a name="tbreak-location"></a>
<h4>tbreak &lt;location&gt;</h4>
<p>Sets a temporary breakpoint. This command is identical to the <tt>break</tt> command, only the breakpoint will be automatically deleted the first time it is hit.</p>
<a name="file-related-commands"></a>
<h3>File-related Commands</h3>
<a name="list-location"></a>
<h4>list &lt;location&gt;</h4>
<p>Lists the contents of a script around a given location, where the location is given as a line number and, optionally, the name of the file from which you will print. If only a line number is given, <tt>.list</tt> will use the file of the current stack frame.</p>
<pre class="cpp">   <span class="operator">.</span>list foo<span class="operator">.</span>qs:<span class="number">125</span></pre>
<p>When no arguments are given, <tt>list</tt> will incrementally list sections of the current script.</p>
<a name="info-scripts"></a>
<h4>info scripts</h4>
<p>Lists the scripts that are currently loaded.</p>
<a name="execution-related-commands"></a>
<h3>Execution-related Commands</h3>
<a name="advance-location"></a>
<h4>advance &lt;location&gt;</h4>
<p>Advances execution to a given location. The syntax of the location is the same as for setting breakpoints. For example:</p>
<pre class="cpp">   <span class="operator">.</span>advance foo<span class="operator">.</span>qs:<span class="number">125</span></pre>
<a name="continue"></a>
<h4>continue</h4>
<p>Continues execution normally, i.e, gives the execution control over the script back to the <a href="qscriptengine.html">QScriptEngine</a>.</p>
<a name="eval-program"></a>
<h4>eval &lt;program&gt;</h4>
<p>Evaluates a program.</p>
<a name="finish"></a>
<h4>finish</h4>
<p>Continues execution until the current function exits and the next statement is reached (i.e&#x2e;, the statement after the call to the function).</p>
<a name="interrupt"></a>
<h4>interrupt</h4>
<p>Requests that execution should be interrupted. Interruption will occur as soon as a new script statement is reached.</p>
<a name="next-count-1"></a>
<h4>next &lt;count = 1&gt;</h4>
<p>Continues execution until a new statement is reached; but if the current statement is a function call, the function call will be treated as a single statement. This will be done <tt>count</tt> times before execution is stopped; the default is one.</p>
<a name="return-expression"></a>
<h4>return &lt;expression&gt;</h4>
<p>Makes the current frame return to its caller. If <tt>expression</tt> is given, it will sent as the result of the function (i.e&#x2e;, replacing the functions return value). <tt>expression</tt> can be any valid QScript expression.</p>
<a name="step-count-1"></a>
<h4>step &lt;count = 1&gt;</h4>
<p>Continues execution until a new statement is reached. If the number <tt>count</tt> is given as argument, this will be done <tt>count</tt> times before execution is stopped. As opposed to <a href="#next-count-1">next &lt;count = 1&gt;</a>, <tt>step</tt> will enter functions when encountering a function call statement.</p>
<a name="stack-related-commands"></a>
<h3>Stack-related Commands</h3>
<a name="backtrace"></a>
<h4>backtrace</h4>
<p>Shows a backtrace of the current execution. The trace will list the function name and its position in the script for each stack frame.</p>
<a name="down"></a>
<h4>down</h4>
<p>Selects the previous (inner) stack frame. The execution will not return to this frame, but you will get access to its local variables.</p>
<a name="frame-index"></a>
<h4>frame &lt;index&gt;</h4>
<p>This command moves to the stack frame with the given <tt>index</tt>. The index of the frame on the top of the stack is 0. Previous frames are numbered from 1 and upwards (the bottom frame in the stack has the largest index).</p>
<a name="info-locals"></a>
<h4>info locals</h4>
<p>Lists the variables that are in the scope of the current frame.</p>
<a name="up"></a>
<h4>up</h4>
<p>Selects the next (outer) stack frame.</p>
</div>
<!-- @@@qtscriptdebugger-manual.html -->
      </div>
    </div>
    </div> 
    <div class="ft">
      <span></span>
    </div>
  </div> 
  <div class="footer">
    <p>
      <acronym title="Copyright">&copy;</acronym> 2015 The Qt Company Ltd.
      Documentation contributions included herein are the copyrights of
      their respective owners.</p>
    <br />
    <p>
      The documentation provided herein is licensed under the terms of the
      <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation
      License version 1.3</a> as published by the Free Software Foundation.</p>
    <p>
      Documentation sources may be obtained from <a href="http://www.qt-project.org">
      www.qt-project.org</a>.</p>
    <br />
    <p>
      Qt and respective logos are trademarks of The Qt Company Ltd 
      in Finland and/or other countries worldwide. All other trademarks are property
      of their respective owners. <a title="Privacy Policy"
      href="http://en.gitorious.org/privacy_policy/">Privacy Policy</a></p>
  </div>

  <script src="scripts/functions.js" type="text/javascript"></script>
</body>
</html>