<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN"
 "concept.dtd">
<concept id="cjviewfilters" xml:lang="en-us">
<title outputclass="id_title">Filters in the Project Explorer view</title>
<shortdesc outputclass="id_shortdesc">You can filter the Project Explorer
view to hide projects, folders, or files that you don't want to see.</shortdesc>
<prolog><metadata>
<keywords><indexterm>filters<indexterm>Project Explorer view</indexterm></indexterm>
<indexterm>views<indexterm>Project Explorer filters</indexterm></indexterm>
</keywords>
</metadata></prolog>
<conbody outputclass="id_conbody">
<p outputclass="anchor_topictop"></p>
<p>To enable or disable filters, open the Select
Common Navigator Filters window by clicking the <uicontrol>Filters</uicontrol> button
from the drop-down menu at the top right corner of the view. This window lists
the available filters.</p>
<p>On the Select Common Navigator Filters tab, select the check boxes next
to the filters you want to enable. For example, when the <uicontrol>Closed
projects</uicontrol> filter is enabled, closed projects are not shown in the
Project Explorer view. Other filters can hide empty packages, non-java files,
and files with names ending in ".class".</p>
<p>On the Available Extensions and Filters tab, the filters work in the opposite
way: the selected check boxes describe the projects, folders, and files that
are shown in the Project Explorer view. For example, if you clear the check
box next to <uicontrol>J2EE Deployment Descriptors</uicontrol>, the deployment
descriptors are hidden from each project in the view.</p>
<p outputclass="anchor_topicbottom"></p>
</conbody>
</concept>
