<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xml.xpath.ui.views</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xml.xpath.ui.views</strong></font><br>
               Class XPathNavigator.EditorReferenceLabelProvider</h2><br><hr><pre>package-private class <strong>XPathNavigator.EditorReferenceLabelProvider</strong>
extends LabelProvider</pre><hr><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Field Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public static  char</code></td><td width="80%" align="left"><code><a href="#field_DIRTY_INDICATOR">DIRTY_INDICATOR</a></code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               A string used to indicate that an editor is dirty</td></tr></table><br><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XPathNavigator.EditorReferenceLabelProvider">XPathNavigator.EditorReferenceLabelProvider</a></strong>()</code></td></tr></table><br><table width="100%" border="1"><tr cols="2" bgcolor="#CCCCFF"><td colspan="2" width="100%"><h2>Method Summary</h2></td></tr><tr valign="top"><td width="20%" align="right"><code>public Image</code></td><td width="" align="left"><code><a href="#method_getImage">getImage</a>(java.lang.Object element)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.lang.String</code></td><td width="" align="left"><code><a href="#method_getText">getText</a>(java.lang.Object element)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Field Detail
               </h2></td></tr></table><h2><a name="field_DIRTY_INDICATOR">DIRTY_INDICATOR</a></h2><p><code>public static  char <strong>DIRTY_INDICATOR</strong></code></p><table><tr><td>A string used to indicate that an editor is dirty</td></tr></table><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Constructor Detail
               </h2></td></tr></table><h2><a name="con_XPathNavigator.EditorReferenceLabelProvider">XPathNavigator.EditorReferenceLabelProvider</a></h2><p><code>package-private <strong>XPathNavigator.EditorReferenceLabelProvider</strong>()</code></p><p></p><hr><table cols="2" width="100%" border="1"><tr colspan="2" width="100%" bgcolor="#CCCCFF" align="left"><td><h2>
                  Methods Detail
               </h2></td></tr></table><h2><a name="method_getImage">getImage</a></h2><p><code>public Image <strong>getImage</strong>(java.lang.Object element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>Image</code></p><hr><h2><a name="method_getText">getText</a></h2><p><code>public java.lang.String <strong>getText</strong>(java.lang.Object element)</code></p><p></p><h3>Parameters</h3><p><code>element</code></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>