/tags/SN-513-2003-04-09/snavigator/doc/html/enterprise/userguide/intro.html
HTML | 299 lines | 244 code | 55 blank | 0 comment | 0 complexity | 07eedf96b653eda1837dd6e79a11eef8 MD5 | raw file
- <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
- <html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
- <meta http-equiv="Content-Style-Type" content="text/css">
- <meta name="GENERATOR" content="Mozilla/4.51 [en] (WinNT; U) [Netscape]">
- <title>Introduction</title>
- </head>
- <body bgcolor="#FFFFFF">
- <h1 CLASS="Chapter">
- <a NAME="pgfId-1034206"></a><a NAME="pgfId-1034208"></a><a NAME="33630"></a>Introduction</h1>
- <img SRC="intro-1.gif" >
- <p CLASS="Body"><a NAME="pgfId-1036070"></a>Source-Navigator<sup>TM</sup>
- 99r1 is a powerful code analysis and comprehension tool that provides a
- graphic framework for understanding and reengineering large or complex
- software projects. Source-Navigator's cross-platform nature also makes
- it an invaluable code porting tool.
- <p CLASS="Body"><a NAME="pgfId-1035068"></a>Source-Navigator parsers scan
- through source code, extracting information from existing C, C++, Java,
- Tcl, <tt>[incr tcl]</tt>, FORTRAN, Cobol, and assembly programs and then
- using this information to build a <i>project database</i>. The database
- represents internal program structures, locations of function declarations,
- contents of class declarations, and relationships between program components.
- Source-Navigator graphical browsing tools use this database to query symbols
- (such as functions and global variables) and the relationships between
- them.
- <p CLASS="Body"><a NAME="pgfId-1036095"></a>In addition to the languages
- supported in the standard distribution, you can use the Source-Navigator
- Software Development Kit (SDK) to add new parsers and extend Source-Navigator
- functionality to other languages.
- <h3 CLASS="Heading1">
- <a NAME="pgfId-988404"></a>Managing Projects</h3>
- <div CLASS="Body"><a NAME="pgfId-988407"></a>A <a NAME="marker-988405"></a>Source-Navigator
- <i>project<a NAME="marker-988406"></a></i>
- is an entity containing references to source code files. A project describes
- where files are located and how to operate on them. Once a project is defined,
- developers can:</div>
- <ul>
- <li CLASS="Bullet">
- <a NAME="pgfId-894045"></a>identify, locate, access, modify, and analyze
- program components, including symbol definitions and usage of classes in
- object-oriented languages.</li>
- <li CLASS="Bullet">
- <a NAME="pgfId-894046"></a>prevent parallel modifications on the same code
- and manage different versions of sources by way of an interface to external
- version control systems such as ClearCase and CVS.</li>
- <li CLASS="Bullet">
- <a NAME="pgfId-1036106"></a>create views of pertinent information while
- hiding information not relevant for the current view.</li>
- </ul>
- <h4 CLASS="Heading2">
- <a NAME="pgfId-885382"></a>Navigational Tools</h4>
- <div CLASS="Body"><a NAME="pgfId-889612"></a>All Source-Navigator tools
- are organized around the <a NAME="marker-889611"></a>project database
- that holds all project-specific symbols. The name and location of the project
- files, symbols extracted from the source code, and the relationships between
- symbols all reside in the project database. File structure may not be pertinent
- when visualizing code relationships, so Source-Navigator allows you to
- view and understand software structure regardless of which file contains
- what information.</div>
- <div CLASS="Body"><a NAME="pgfId-889616"></a>The <a NAME="marker-889613"></a>Symbol
- Browser, the <a NAME="marker-889614"></a>Editor, and the <a NAME="marker-889615"></a>Cross-Referencer
- are the basic tools for working with source code in a project.</div>
- <ul>
- <li CLASS="Bullet">
- <a NAME="pgfId-1010192"></a>The Symbol Browser operates on the project
- database and helps you learn the existing program structure. The Symbol
- Browser list can be sorted and filtered in different ways, showing you
- how and where symbols are used. The Symbol Browser answers the question
- "What is in this project?"</li>
- <br>
- <div CLASS="BodyListFollow"><a NAME="pgfId-1010193"></a>See <a href="symbrws.html#16805" CLASS="XRef">Symbol
- Browser</a> for more information.</div>
- </ul>
- <ul>
- <li CLASS="Bullet">
- <a NAME="pgfId-991773"></a>The Editor, the main Source-Navigator window,
- combines navigating with browsing. It allows you to navigate through actual
- program text and shows the location of that text in the source code. The
- Editor highlights the basic syntax of all supported programming languages
- and updates the project database when files are modified and saved. This
- means that the project database is always up-to-date with your changes
- during the development cycle. The Editor answers the question "How is this
- project structured?"</li>
- <br>
- <div CLASS="BodyListFollow"><a NAME="pgfId-1010229"></a>See <a href="editor.html#40005" CLASS="XRef">Editor</a>
- for more information.</div>
- </ul>
- <ul>
- <li CLASS="Bullet">
- <a NAME="pgfId-884895"></a>The Cross-Referencer shows, for a given symbol,
- all the other symbols it refers to, and all the symbols that refer to it.
- These are known as <i>Refers-to</i> and <i>Referred-by</i> relationships,
- respectively. The Cross-Referencer answers the question "How do the parts
- of this project work together?"</li>
- <br>
- <div CLASS="BodyListFollow"><a NAME="pgfId-1010230"></a>See <a href="crossref.html#35957" CLASS="XRef">Cross-Referencer</a>
- for more information.</div>
- </ul>
- <h3 CLASS="Heading1">
- <a NAME="pgfId-857195"></a><a NAME="10308"></a>About this Guide</h3>
- <div CLASS="Body"><a NAME="pgfId-884185"></a>This guide serves as a reference
- to Source-Navigator menus, tools, and functionality.</div>
- <h4 CLASS="Heading2">
- <a NAME="pgfId-886167"></a>Document Conventions</h4>
- <div CLASS="Body"><a NAME="pgfId-857408"></a>Source-Navigator's documentation
- uses the following general <a NAME="marker-886449"></a>conventions:</div>
- <br>
- <table WIDTH="100%" >
- <tr>
- <td VALIGN=TOP>
- <div CLASS="BodyHang2"><a NAME="pgfId-886989"></a><i>Italic Font</i></div>
- </td>
- <td VALIGN=TOP>Indicates a new term that will be defined in the text and
- items called out for special emphasis.</td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="BodyHang2"><a NAME="pgfId-886990"></a><b>Bold Font</b></div>
- </td>
- <td VALIGN=TOP>Represents menus, window names, and tool buttons.</td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="BodyHang2"><a NAME="pgfId-857411"></a><tt>Plain Typewriter
- Font</tt></div>
- </td>
- <td VALIGN=TOP>Denotes code fragments, command lines, contents of files,
- and command names; also indicates directory, file, and project names where
- they appear in body text.</td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="BodyHang2"><a NAME="pgfId-887052"></a><i><tt>Italic Typewriter
- Font</tt></i></div>
- </td>
- <td VALIGN=TOP>Represents a variable for which an actual value should be
- substituted. </td>
- </tr>
- </table>
- <p CLASS="Body"><a NAME="pgfId-885350"></a>Menu names and their submenus
- are separated by an arrow (->). For example, <b>File -> Open</b> means
- select the <b>File</b> menu and choose <b>Open</b> from its submenu.
- <p CLASS="Body"><a NAME="pgfId-894130"></a>Paths are written in UNIX notation
- (forward slashes) throughout; <tt>.../bin</tt> means the directory Source-Navigator
- is installed into, subdirectory <tt>bin</tt>.
- <h4 CLASS="Heading2">
- <a NAME="pgfId-887938"></a><a NAME="20859"></a>Using the Mouse</h4>
- <div CLASS="Body"><a NAME="pgfId-887969"></a>The following are conventions
- for using the mouse with Source-Navigator:</div>
- <br>
- <table BORDER >
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887942"></a>Click</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887944"></a>Place the cursor on a
- specified object and press the left mouse button. Double-click means to
- click the left mouse button twice in rapid succession without moving the
- mouse.</div>
- <div CLASS="CellBody"><a NAME="pgfId-1010121"></a>The term "click" alone
- always means left-click.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887946"></a>Ctrl+click</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887948"></a>Depress and hold the <b>Ctrl</b>
- key, simultaneously clicking with the left mouse button.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887950"></a>Shift+click</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887952"></a>Depress and hold the <b>Shift</b>
- key, simultaneously clicking with the left mouse button.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887954"></a>Right+click</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887956"></a>Place the cursor on a
- specific object and click the right mouse button.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887958"></a>Select Text</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887960"></a>Click and drag cursor
- through text (or code) to be selected. Selected text is highlighted.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887962"></a>Select Entries</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887964"></a>Clicking a line selects
- it. To indicate the end of the selection, hold down the <b>Shift</b> key
- and click the desired line. This function is enabled in the Project Editor
- and file selection boxes.</div>
- </td>
- </tr>
- <tr>
- <td VALIGN=TOP WIDTH="10%">
- <div CLASS="CellBody"><a NAME="pgfId-887966"></a>Show the number of items
- in symbol lists</div>
- </td>
- <td VALIGN=TOP>
- <div CLASS="CellBody"><a NAME="pgfId-887968"></a>Click the center mouse
- button or press <b>Alt</b>+right mouse button (Windows); <b>Meta</b>+right
- mouse button (UNIX).</div>
- </td>
- </tr>
- </table>
- <h4 CLASS="Heading2">
- <a NAME="pgfId-889426"></a>Keyboard Shortcuts</h4>
- <div CLASS="Body"><a NAME="pgfId-889428"></a>You can use the <a NAME="marker-889427"></a>keyboard
- to activate many of the functions displayed on the toolbar and in the menus.</div>
- <ul>
- <li CLASS="Bullet">
- <a NAME="pgfId-889434"></a>Holding down the <b>Alt</b> key while pressing
- <b>S</b>
- is represented as <b>Alt+S</b>.</li>
- <li CLASS="Bullet">
- <a NAME="pgfId-889435"></a>To open a command in the menu bar, press the
- <b>Alt</b>
- key plus the first letter of the menu.</li>
- <li CLASS="Bullet">
- <a NAME="pgfId-889436"></a>If a letter in the menu item is underlined,
- press the underlined letter to open the submenu.</li>
- </ul>
- <div CLASS="Body"><a NAME="pgfId-938107"></a></div>
- </body>
- </html>