<html><body><p><font size="+1"><strong>Package org.eclipse.wst.xsl.ui.internal.style</strong></font></p><hr><h2><font size="-1"><strong>org.eclipse.wst.xsl.ui.internal.style</strong></font><br>
               Class XSLAttrValueSemanticHighlighting</h2><br><hr><pre>public class <strong>XSLAttrValueSemanticHighlighting</strong>
extends org.eclipse.wst.xsl.ui.internal.style.AbstractXSLSemanticHighlighting</pre><hr><table width="100%" border="1"><tr bgcolor="#CCCCFF"><td width="100%"><h2>Constructor Summary</h2></td></tr><tr><td><code><strong><a href="#con_XSLAttrValueSemanticHighlighting">XSLAttrValueSemanticHighlighting</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 Position[]</code></td><td width="" align="left"><code><a href="#method_consumes">consumes</a>(IStructuredDocumentRegion region)</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_getEnabledPreferenceKey">getEnabledPreferenceKey</a>()</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_getStylePreferenceKey">getStylePreferenceKey</a>()</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>
                  Constructor Detail
               </h2></td></tr></table><h2><a name="con_XSLAttrValueSemanticHighlighting">XSLAttrValueSemanticHighlighting</a></h2><p><code>public <strong>XSLAttrValueSemanticHighlighting</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_consumes">consumes</a></h2><p><code>public Position[] <strong>consumes</strong>(IStructuredDocumentRegion region)</code></p><p></p><h3>Parameters</h3><p><code>region</code></p><h3>Returns</h3><p><code>Position[]</code></p><hr><h2><a name="method_getEnabledPreferenceKey">getEnabledPreferenceKey</a></h2><p><code>public java.lang.String <strong>getEnabledPreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr><h2><a name="method_getStylePreferenceKey">getStylePreferenceKey</a></h2><p><code>public java.lang.String <strong>getStylePreferenceKey</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.lang.String</code></p><hr></body></html>