<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<!-- /*******************************************************************************
 * Copyright (c) 2000, 2005 IBM Corporation and others.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 * 
 * Contributors:
 *     IBM Corporation - initial API and implementation
 *******************************************************************************/ -->
<link rel="stylesheet" type="text/css" href="../../org.eclipse.wst.doc.user/common.css" />
<title>Viewing and navigating links</title>
</head>
<body id="tjlnknav"><a name="tjlnknav"><!-- --></a>

<h1 class="topictitle1">Viewing and navigating links</h1>
<div><div class="skipspace"> <p>To view links between files in a project:</p>
 </div>
<ol><li class="skipspace"><span>Click <span class="menucascade"><span class="uicontrol">Window</span> &gt; <span class="uicontrol">Show

view</span> &gt; <span class="uicontrol">Links</span></span> </span></li>
<li class="skipspace"><span>In the Project Explorer view, click the file for which you want

to view links.</span></li>
<li class="skipspace"><span>To navigate through the Links view, you have the following options: </span> <ul><li>Click the plus (+) and minus (-) signs that are displayed preceding the

file icons. The + indicates that there are more links to display. To change

your view of the link relationships: <ul><li>Click the + sign in front of an icon to expand the link hierarchy</li>
<li>Click the - to collapse the link hierarchy</li>
<li>To change the focus of the Links view, right-click on the file you want

to have focus and click <span class="uicontrol">Become new center</span>.</li>
</ul>
</li>
<li>Using the arrow keys, you can navigate from the currently selected link.

The right or left keys automatically expand a link if it can be expanded.

 Also, navigating left and right using the arrow keys follows the path of

any expanded links in the direction you are navigating; if there are no expanded

links, then the (vertical) middle link is selected.  </li>
<li>Since the view does not scroll automatically to show the currently selected

link, you can scroll the view using either CTRL+<i>arrowkey</i> to scroll

the view up, down, left or right, or the Page Up and Page Down keys to scroll

the view up and down.</li>
</ul>
</li>
<li class="skipspace"><span>You can create links between files in different projects. </span> If you give focus to a file in a different project, the Links view 

changes so that only files and links in that project are shown. Files that

are not in a project displayed in the Project Explorer are not shown in the

Links view.</li>
<li class="skipspace"><span>To view a list of broken links or links to files outside your project,

in the Web perspective click the <span class="uicontrol">Problems</span> tab.</span> <p>Broken links are marked with a <img src="../images/nwlnktsk.gif" alt="Broken Link Icon" />. To place your cursor on the

line of the source file where the broken link is specified, double-click the

broken link element in the Problems list.</p>
 <div class="p"> <b>Note:</b> To

increase the number of broken link messages that can be displayed, complete

the following steps:<ol><li>Click  <span class="menucascade"><span class="uicontrol">Windows</span> &gt; <span class="uicontrol">Preferences</span> &gt; <span class="uicontrol">Web Tools</span> &gt; <span class="uicontrol">Links</span> &gt; <span class="uicontrol">Validation

and Refactoring</span></span> and increase the number in the <b>Maximum

number of links validation messages on a project</b> field.</li>
<li> In the Problems view, display the filter dialog, and either un-check

the <b>Limit visible items to</b> check box or enter the same link number

you specified in the previous step.</li>
</ol>
</div>
</li>
</ol>
</div>
<div><p><b class="relconceptshd">Related concepts</b><br />
<a href="cwlnkvew.html" title="">Links view</a><br />
</p>
<p><b class="reltaskshd">Related tasks</b><br />
<a href="tjlnkrfr.html" title="">Refreshing the Links view</a><br />
<a href="twlnkfix.html" title="">Fixing broken links using the Fixup link references wizard</a><br />
</p>
</div>
</body>
</html>