<?xml version='1.0' encoding='UTF-8'?>
<!-- Schema file written by PDE -->
<schema targetNamespace="org.eclipse.hyades.ui">
<annotation>
      <appInfo>
         <meta.schema plugin="org.eclipse.hyades.ui" id="navigatorExtensions" name="Hyades Navigator Extensions"/>
      </appInfo>
      <documentation>
         This extension point is used to register Hyades navigator extensions. These extensions provide additional content contributions to the navigators, but cannot modify existing content. Filter sets are also provided, to hide certain resources from the navigator.
      </documentation>
   </annotation>

   <element name="extension">
      <complexType>
         <sequence>
            <choice>
               <element ref="navigatorContribution"/>
               <element ref="navigatorFilterSet"/>
            </choice>
         </sequence>
         <attribute name="name" type="string">
            <annotation>
               <documentation>
                  An optional name of the extension instance.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="id" type="string">
            <annotation>
               <documentation>
                  An optional identifier of the extension instance.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="point" type="string" use="required">
            <annotation>
               <documentation>
                  A fully qualified identifier of the target extension point.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="navigatorContribution">
      <complexType>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  The implementation of this navigator extension. The class must implement &lt;samp&gt;org.eclipse.hyades.ui.extension.INavigatorContribution
&lt;/samp&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.hyades.ui.INavigatorDelegate"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="navigatorID" type="string" use="required">
            <annotation>
               <documentation>
                  &lt;p&gt;The unique ID of the navigator this contribution applies to. Any contributions will &lt;b&gt;only&lt;/b&gt; appear in this navigator. If this item is omitted, the contributions will appear in &lt;b&gt;all&lt;/b&gt; navigators. The built-in navigator IDs are:&lt;/p&gt;

&lt;ul&gt;
   &lt;code&gt;org.eclipse.hyades.trace.ui.profileNavigator&lt;/code&gt;&lt;/li&gt;
   &lt;code&gt;org.eclipse.hyades.log.ui.logNavigator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Test Navigator&lt;/b&gt;:
   &lt;code&gt;org.eclipse.hyades.test.ui.TestNavigator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Execution Navigator&lt;/b&gt;:
   &lt;code&gt;org.eclipse.hyades.test.ui.ExecutionNavigator&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <element name="navigatorFilterSet">
      <complexType>
         <attribute name="id" type="string" use="required">
            <annotation>
               <documentation>
                  A unique identifier for this &lt;code&gt;filterSet&lt;/code&gt;. This is required in order to store which filter sets are selected.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="label" type="string" use="required">
            <annotation>
               <documentation>
                  The text label describing this filter set.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="navigatorID" type="string" use="required">
            <annotation>
               <documentation>
                  &lt;p&gt;The unique ID of the navigator this filter set applies to. Filters will &lt;b&gt;only&lt;/b&gt; appear in this navigator. If this item is omitted, the contributions will appear in &lt;b&gt;all&lt;/b&gt; navigators. The built-in navigator IDs are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Profiling Monitor&lt;/b&gt;: 
   &lt;code&gt;org.eclipse.hyades.trace.ui.profileNavigator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Log Navigator&lt;/b&gt;: 
   &lt;code&gt;org.eclipse.hyades.log.ui.logNavigator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Test Navigator&lt;/b&gt;:
   &lt;code&gt;org.eclipse.hyades.test.ui.TestNavigator&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Execution Navigator&lt;/b&gt;:
   &lt;code&gt;org.eclipse.hyades.test.ui.ExecutionNavigator&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
               </documentation>
            </annotation>
         </attribute>
         <attribute name="icon" type="string" use="required">
            <annotation>
               <documentation>
                  The image icon displayed next to the filter set&apos;s label. This is shown in the navigators&apos; view menu and/or filter selection dialog.
               </documentation>
            </annotation>
         </attribute>
         <attribute name="class" type="string" use="required">
            <annotation>
               <documentation>
                  The implementation of this navigator extension. The class must implement &lt;samp&gt;org.eclipse.jface.viewers.ViewerFilter&lt;/samp&gt;.
               </documentation>
               <appInfo>
                  <meta.attribute kind="java" basedOn="org.eclipse.jface.viewers.ViewerFilter"/>
               </appInfo>
            </annotation>
         </attribute>
         <attribute name="defaultEnabled" type="boolean" use="default" value="false">
            <annotation>
               <documentation>
                  &lt;code&gt;true&lt;/code&gt; if and only if this filter set should be enabled by default. Default value is &lt;code&gt;false&lt;/code&gt;
               </documentation>
            </annotation>
         </attribute>
         <attribute name="common" type="boolean" use="default" value="false">
            <annotation>
               <documentation>
                  Whether or not this filter set is a common one. Common filter sets appear directly in the navigator view&apos;s menu for quick access. Default value is &lt;code&gt;false&lt;/code&gt;
               </documentation>
            </annotation>
         </attribute>
         <attribute name="recursive" type="boolean" use="default" value="true">
            <annotation>
               <documentation>
                  Whether or not the filter is recursive. Recursive filters eliminate all children of a filtered element. Non-recursive filters only filter out the element itself, and move up any children it contains (unless they too are explicitly filtered). Default value is &lt;code&gt;true&lt;/code&gt;.
               </documentation>
            </annotation>
         </attribute>
      </complexType>
   </element>

   <annotation>
      <appInfo>
         <meta.section type="since"/>
      </appInfo>
      <documentation>
         3.0
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="examples"/>
      </appInfo>
      <documentation>
         &lt;pre&gt;
  &lt;extension point=&quot;org.eclipse.hyades.ui.navigatorExtensions&quot;&gt;
     &lt;navigatorContribution
           class=&quot;com.sample.SampleNavigatorExtension&quot;/&gt;
     &lt;navigatorContribution
           class=&quot;com.sample.SampleNavigatorExtension2&quot;
           navigatorID=&quot;org.eclipse.hyades.trace.ui.profileNavigator&quot;/&gt;
     &lt;filterSet
           id=&quot;com.sample.myFilterSet&quot;
           label=&quot;My Filter Set&quot;
           icon=&quot;icons/full/clcl16/filterset.gif&quot;
           class=&quot;com.sample.SampleFitlerSet&quot;
           common=&quot;true&quot;
           defaultEnabled=&quot;true&quot;
           navigatorID=&quot;org.eclipse.hyades.trace.ui.profileNavigator&quot;/&gt;
  &lt;/extension&gt;
&lt;/pre&gt;
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="apiInfo"/>
      </appInfo>
      <documentation>
         All Hyades navigator contribution classes are instances of &lt;samp&gt;org.eclipse.hyades.ui.extension.INavigatorContribution&lt;/samp&gt;. All navigator filter sets are instances of &lt;samp&gt;org.eclipse.hyades.ui.extension.INavigatorFilterSet&lt;/samp&gt;. All navigator items contributed are instances of &lt;samp&gt;org.eclipse.hyades.ui.extension.INavigatorItem&lt;/samp&gt;.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="implementation"/>
      </appInfo>
      <documentation>
         The Hyades framework has a number of pre-defined navigators (e.g. Profiling Monitor, Log Navigator). Contributions and filter sets apply only to a specific navigator.
      </documentation>
   </annotation>

   <annotation>
      <appInfo>
         <meta.section type="copyright"/>
      </appInfo>
      <documentation>
         Copyright (c) 2004 Hyades project.
All rights reserved. This program and the accompanying materials are made available under the terms of the Common Public License v1.0 which accompanies this distribution, and is available at &lt;a href=&quot;http://www.eclipse.org/legal/cpl-v10.html&quot;&gt;http://www.eclipse.org/legal/cpl-v10.html&lt;/a&gt;
      </documentation>
   </annotation>

</schema>
