<html>
<header>
<title>Debugging A Composite</title>
</header>
<body bgcolor="#ffffff">
<table width="100%">
	<tr>
		<td valign="bottom"><h1>Debugging A Composite</h1></td><td align="right"><img src="../images/sigil.gif" /></td>
	</tr>
	<tr><td colspan="2">
<p>In order to debug composite applications using the Newton Eclipse
      plugin, use the runtime configuration you created in above, and start it
      using a debug session. This will launch a newton container as a separate
      process to the Eclipse IDE environment but which can be controlled from
      the IDE</p>

      
<div align="center">
<img class="figure" alt="Debug" src="my-images/debug.png"></div>
      
<p>Install your composite into this container using the Newton context
      menu in the package view as documented above. In this example we have
      installed the gui.composite component from the fractal render demo into
      a Newton debug container.</p>

      
<div align="center">
<img class="figure" alt="Fractal GUI Debug" src="my-images/demo-gui.png"></div>      

<p>You can now add break points within your code to allow you to get a
      better idea of what is going on within your application. In this example
      we have added a break point to the FractalViewFrame of the fractal
      render demo to break out into an interactive debug session when any of
      the buttons <em>draw</em>, <em>save</em>, <em>cancel</em> are pressed on
      the gui window.</p>

      
<div align="center">
<img class="figure" alt="Add a breakpoint" src="my-images/breakpoint.png"></div>
      
<p>You can then inspect variable values in top-right-hand corner as per
      normal debugging in the Eclipse IDE.</p>
      
<div align="center">
<img class="figure" alt="Debug breakpoint" src="my-images/debug-breakpoint.png"></div>
<div id="footer">
<table cellpadding="4" cellspacing="0" border="0">
<tr>
<td><a href="http://www.paremus.com/License">
          Copyright &copy; 2003-2007 Paremus Limited.</a>
      All rights reserved.
            <br>

<script type="text/javascript" language="JavaScript"><!--
              document.write(" - "+"Last Published: " + document.lastModified);
              //  --></script>
<div id="feedback">
    Send feedback about the website to:
  <a id="feedbackto" href="mailto:webmaster@paremus.com?subject=Feedback%C2%A0common/eclipse/UsingEclipsePlugin.html">webmaster@paremus.com</a>
</div>
</td><td nowrap class="footerLogos"></td>
</tr>
</table>
</td></tr></table>
</body>
</html>