<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 EditNamespacePrefixDialog</h2><br><hr><pre>public class <strong>EditNamespacePrefixDialog</strong>
extends Dialog</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>protected Label</code></td><td width="80%" align="left"><code><a href="#field_errorMessageLabel">errorMessageLabel</a></code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected java.util.List</code></td><td width="80%" align="left"><code><a href="#field_namespaceInfoList">namespaceInfoList</a></code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected IPath</code></td><td width="80%" align="left"><code><a href="#field_resourceLocation">resourceLocation</a></code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </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_EditNamespacePrefixDialog">EditNamespacePrefixDialog</a></strong>(Shell parentShell
         ,
      IPath resourceLocation)</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>protected void</code></td><td width="" align="left"><code><a href="#method_createButtonsForButtonBar">createButtonsForButtonBar</a>(Composite parent)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_createDialogArea">createDialogArea</a>(Composite parent)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>protected Control</code></td><td width="" align="left"><code><a href="#method_getDialogArea">getDialogArea</a>(Composite parent)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public java.util.List</code></td><td width="" align="left"><code><a href="#method_getNamespaceInfoList">getNamespaceInfoList</a>()</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_setNamespaceInfoList">setNamespaceInfoList</a>(java.util.List list)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_updateErrorMessage">updateErrorMessage</a>(java.util.List namespaceInfoList)</code><br>
               &nbsp;&nbsp;&nbsp;&nbsp;
               </td></tr><tr valign="top"><td width="20%" align="right"><code>public void</code></td><td width="" align="left"><code><a href="#method_updateOccured">updateOccured</a>(java.lang.Object object
         ,
      java.lang.Object arg)</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_errorMessageLabel">errorMessageLabel</a></h2><p><code>protected Label <strong>errorMessageLabel</strong></code></p><hr><h2><a name="field_namespaceInfoList">namespaceInfoList</a></h2><p><code>protected java.util.List <strong>namespaceInfoList</strong></code></p><hr><h2><a name="field_resourceLocation">resourceLocation</a></h2><p><code>protected IPath <strong>resourceLocation</strong></code></p><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_EditNamespacePrefixDialog">EditNamespacePrefixDialog</a></h2><p><code>public <strong>EditNamespacePrefixDialog</strong>(Shell parentShell
         ,
      IPath resourceLocation)</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_createButtonsForButtonBar">createButtonsForButtonBar</a></h2><p><code>protected void <strong>createButtonsForButtonBar</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><hr><h2><a name="method_createDialogArea">createDialogArea</a></h2><p><code>protected Control <strong>createDialogArea</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_getDialogArea">getDialogArea</a></h2><p><code>protected Control <strong>getDialogArea</strong>(Composite parent)</code></p><p></p><h3>Parameters</h3><p><code>parent</code></p><h3>Returns</h3><p><code>Control</code></p><hr><h2><a name="method_getNamespaceInfoList">getNamespaceInfoList</a></h2><p><code>public java.util.List <strong>getNamespaceInfoList</strong>()</code></p><p></p><h3>Returns</h3><p><code>java.util.List</code></p><hr><h2><a name="method_setNamespaceInfoList">setNamespaceInfoList</a></h2><p><code>public void <strong>setNamespaceInfoList</strong>(java.util.List list)</code></p><p></p><h3>Parameters</h3><p><code>list</code></p><hr><h2><a name="method_updateErrorMessage">updateErrorMessage</a></h2><p><code>public void <strong>updateErrorMessage</strong>(java.util.List namespaceInfoList)</code></p><p></p><h3>Parameters</h3><p><code>namespaceInfoList</code></p><hr><h2><a name="method_updateOccured">updateOccured</a></h2><p><code>public void <strong>updateOccured</strong>(java.lang.Object object
         ,
      java.lang.Object arg)</code></p><p></p><h3>Parameters</h3><p><code>object</code></p><p><code>arg</code></p><hr></body></html>