Code Search for Developers
 
 
  

Manual.html from The Nebula Device at Krugle


Show Manual.html syntax highlighted

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Nebula 2 Build System GUI User Manual</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="layout/tnd.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="common_top">
  <div id="common_h0_o1">
    <h1 id="common_h0"><span>nebula device 2</span></h1>
  </div>
  <div id="common_nav">
    <img src="layout/nav-start.jpg" alt="" width="125" height="34" /><img src="layout/nav-end.gif" width="140" height="34" />
  </div>
</div>
<h1 class="pagetitle">Build System GUI User Manual</h1>
<img class="headerimg" src="layout/inset-h.jpg" width="98%" height="48" alt="" />
<h2>Introduction</h2>
<div class="doctext">
<p>
A long time ago in a land far away some good folks at Radon Labs wrote a multi-platform build system for Nebula 1 in TCL. Sometime later Nebula 2 came along and it was decided that the old build system could use a make over, and so the second generation build system was born. Unfortunately the 2nd generation build system was still written in TCL, and ran somewhat slowly for a rather long time before Bruce Mitchener optimized it. Still, one problem remained with the 2nd generation build system, it was written in TCL and as such - struck mortal fear into the heart of any man/woman/other that dared to maintain it. Only two brave souls dared to wonder into those dark woods, Sir Bruce Grumpalot and Sir Leaf Awayalot, but they grew weary of battle, life in general, and really were just quite fed up with it all. At the same time I grew tired of standing at the edge of the woods along with the rest of the village folk, and being pestered by a broad called Martha, who didn't look much like a broad I must say... 
</p>
<p>
Anyway, I decided to rewrite the build system, but this time in Python so it could be more easily maintained by the village folk, and wxPython could be used to give it a nice looking GUI front-end. And so the 3rd generation build system was born, may it live long and prosper, unlike Martha who I'd love to see get lost in the woods, or fall off a cliff, I'm not picky really.
</p>
</div>
<img class="headerimg" src="layout/inset-h.jpg" width="98%" height="48" alt="" />
<h2>Installation</h2>
<div class="doctext">
<p>
The only thing you need to get the GUI running is wxPython 2.6 (or later, just not 2.7), available at <a href="http://www.wxpython.org">www.wxpython.org</a>. Then just run "python update.py" in the root Nebula 2 directory (within a cmd prompt that has access to uuidgen.exe).
</p>
</div>
<img class="headerimg" src="layout/inset-h.jpg" width="98%" height="48" alt="" />
<h2>The Workspace Generation Tab</h2>
<div class="doctext">
<p>
<table cellpadding="10px">
  <tr>
    <td valign="top"><img src="screens/workspacestab.png" alt="Workspace Generation Tab" /></td>
    <td valign="top">
      This tab is very straightforward to use, follow the steps below.
      <ol>
        <li>Select a generator.</li>
        <li>Tick the workspaces you want to build.</li>
        <li>Click on the Run button.</li>
      </ol>
    </td>
  </tr>
</table>
</p>
</div>
<img class="headerimg" src="layout/inset-h.jpg" width="98%" height="48" alt="" />
<h2>The Class Builder Tab</h2>
<div class="doctext">
<p>
<table cellpadding="10px">
  <tr>
    <td valign="top"><img src="screens/classbuildertab.png" alt="Class Builder Tab" /></td>
    <td valign="top">
      A brief description of each of the fields on this tab follows.
      <table cellpadding="10px" cellspacing="0" border="0">
        <tr>
          <td valign="top" bgcolor="#99FF00"><b>OutputDir</b></td>
          <td valign="top" bgcolor="#99FF00">
            The root directory of your project, for things to work properly it
             should be within the Nebula 2 directory structure.
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#CCFF00"><b>Module Subdir</b></td>
          <td valign="top" bgcolor="#CCFF00">
            The subdirectory name for the module this class will belong to 
            (see the screenshot below if you want to understand how this is 
            used to figure out the path for the generated files).
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#99FF00"><b>Class Prefix</b></td>
          <td valign="top" bgcolor="#99FF00">
            The prefix of the class name, can be blank.
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#CCFF00"><b>Class Name</b></td>
          <td valign="top" bgcolor="#CCFF00">
            The full name of the class (including prefix).
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#99FF00"><b>Scriptable</b></td>
          <td valign="top" bgcolor="#99FF00">
            Tick if you plan on exposing your class to script (this will 
            generate a _cmds.cc file).
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#CCFF00"><b>Persistent</b></td>
          <td valign="top" bgcolor="#CCFF00">
            Tick if you want your class to have a SaveCmds() method where 
            you can put your persistence code.
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#99FF00"><b>Superclass</b></td>
          <td valign="top" bgcolor="#99FF00">
            The full name of the superclass (including prefix).
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#CCFF00"><b>Author</b></td>
          <td valign="top" bgcolor="#CCFF00">
            Your name or the name of the company you work for.
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#99FF00"><b>Doxygen Group</b></td>
          <td valign="top" bgcolor="#99FF00">
            The doxygen group the documentation for this class should be put
            in, if you're adding a class to the core or one of the contrib 
            modules check the @ingroup they use. Otherwise leave this blank
            or use your own group.
          </td>
        </tr>
        <tr>
          <td valign="top" bgcolor="#CCFF00"><b>Brief Description</b></td>
          <td valign="top" bgcolor="#CCFF00">
            A brief description of the class (that will go into the doxygen 
            generated documentation).
          </td>
        </tr>
      </table>
    </td>
  </tr>
  <tr>
    <td valign="top" align="center"><img src="screens/classbuilderconfirm.png" alt="Class Builder Confirmation Dialog" /></td>
    <td valign="top">
      When you click on the Run button the dialog on the left will pop up. 
      Confirm that the files that will be generated are going into the right 
      directories click OK (the directories will be created if they don't
      already exist).
    </td>
  </tr>
</table>
</p>
</div>
<img class="headerimg" src="layout/inset-h.jpg" width="98%" height="48" alt="" />
<h2>Credits</h2>
<div class="doctext">
<p>
Thanks go to...
  <ul>
    <li>Radon Labs for writing the original build system.</li>
    <li>Matthew Welker for writing the 2nd generation build system.</li>
    <li>Bruce Mitchener and Leaf Garland for maintaining the build systems.</li>
    <li>Greg Ewing for writing the very useful Python module Plex for building lexical analyzers.</li>
    <li>Samo Korosec for the Nebula 2 banner art.</li>
  </ul>
<p>
</div>
<hr />
<p align="center">
&#169; 2005 Vadim Macagon
</p>
</body>
</html>



See more files for this project here

The Nebula Device

Realtime 3D game/visualization engine, written in C++, scriptable through Tcl/Tk, Python and Lua. Supports D3D and OpenGL for rendering, runs under Linux and Windows.

Project homepage: http://sourceforge.net/projects/nebuladevice
Programming language(s): C,C++,Python
License: other

  layout/
    inset-h.jpg
    nav-end.gif
    nav-start.jpg
    nebuladevice2.gif
    tnd.css
    top-back.gif
    top-image.jpg
  screens/
    classbuilderconfirm.png
    classbuildertab.png
    workspacestab.png
  Manual.html