<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Project Menu actions</title>
<link rel="stylesheet" type="text/css" href="../help.css">
</head>
<body>
	<div role="main">
		<h1>Project Menu actions</h1>
		<table class="menu" border="1" cellspacing="0" cellpadding="3">
			<thead>
				<tr>
					<th id="name">Name</th>
					<th id="function">Function</th>
					<th id="keyboard">Keyboard Shortcut</th>
				</tr>
			</thead>
			<tbody>
				<tr>
					<td class="menu_name" headers="name">Open Project</td>
					<td headers="function">Opens the currently selected closed
						projects, making their contents available to the workspace</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Close Project</td>
					<td headers="function">Closes the currently selected projects</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Build All</td>
					<td headers="function">Builds all the open projects in the
						workspace</td>
					<td headers="keyboard">Ctrl+B</td>
				</tr>
				<tr>
					<td rowspan="6" class="menu_name" headers="name">Build
						Configurations</td>
					<td headers="function">Configure the build in the following
						ways:</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td headers="function">
						<dl>
							<dt>Set Active (submenu)</dt>
							<dd></dd>
						</dl>
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td headers="function">
						<dl>
							<dt>Manage...</dt>
							<dd></dd>
						</dl>
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td headers="function">
						<dl>
							<dt>Build by Working Set (submenu)</dt>
							<dd></dd>
						</dl>
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td headers="function">
						<dl>
							<dt>Set Active by Working Set (submenu)</dt>
							<dd></dd>
						</dl>
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td headers="function">
						<dl>
							<dt>Manage Working Sets...</dt>
							<dd></dd>
						</dl>
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Build Project</td>
					<td headers="function">Builds the currently selected project</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Build Working Set</td>
					<td headers="function">Builds the current working set, rather
						than a whole project</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Clean</td>
					<td headers="function">Invokes the make clean defined in the
						makefile</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Build Automatically</td>
					<td headers="function">Toggles whether projects will be
						rebuilt on every file save (You should turn this feature off for
						very large projects.)</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Make Target (submenu)</td>
					<td headers="function">Creates, edits or runs a Make Target</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
				<tr>
					<td class="menu_name" headers="name">Properties</td>
					<td headers="function">Displays the <strong>Properties</strong>
						dialog. From that dialog you can display the properties of
						resources in <strong>Info</strong>, <strong>External
							Tools Builders</strong>, <strong>C/C++ Build</strong> (managed only) <strong>File
							Types</strong>, <strong>Indexer options</strong>, <strong>C/C++
							Make Project</strong> (standard only), <strong>C/C++ Project
							Paths</strong> (standard only), <strong>Include Paths and Symbols</strong>
						(standard only), and <strong>Project References</strong>.
					</td>
					<td headers="keyboard">&nbsp;</td>
				</tr>
			</tbody>
		</table>
		<p>
			<img alt="IBM Copyright Statement" src="../images/ng00_04a.gif">
		</p>
	</div>
</body>
</html>