Hi, Please commit my patch to the HEAD branch. (jakarta-tomcat-4.0/webapps/admin)
Thanks, -Manveen ================= comments: In the webadmin navigation tree display, the label for the root node was hardcoded to "Root Node". I've made the label to be displayed for the root node configurable as an init-param in web.xml. If this init-param is absent, then the root node does not get rendered (the rest of the tree does ofcourse!). ---------------- Index: WEB-INF/web.xml =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/web.xml,v retrieving revision 1.6 diff -u -r1.6 web.xml --- WEB-INF/web.xml 2001/11/27 02:46:28 1.6 +++ WEB-INF/web.xml 2001/12/15 19:39:52 @@ -42,6 +42,11 @@ <param-name>validate</param-name> <param-value>true</param-value> </init-param> + <!-- Label to be displayed for rootnode. If absent, rootnode is not rendered --> + <init-param> + <param-name>rootnodename</param-name> + <param-value>Tomcat Root</param-value> + </init-param> <init-param> <param-name>treebuilders</param-name> <param-value>org.apache.webapp.admin.TomcatTreeBuilder</param-value> cvs server: Diffing WEB-INF/classes cvs server: Diffing WEB-INF/classes/org cvs server: Diffing WEB-INF/classes/org/apache cvs server: Diffing WEB-INF/classes/org/apache/webapp cvs server: Diffing WEB-INF/classes/org/apache/webapp/admin Index: WEB-INF/classes/org/apache/webapp/admin/SetUpTreeAction.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Set UpTreeAction.java,v retrieving revision 1.2 diff -u -r1.2 SetUpTreeAction.java --- WEB-INF/classes/org/apache/webapp/admin/SetUpTreeAction.java 2001/11/27 02:46:28 1.2 +++ WEB-INF/classes/org/apache/webapp/admin/SetUpTreeAction.java 2001/12/15 19:39:59 @@ -85,6 +85,7 @@ * for tree widget * * @author Jazmin Jonson + * @author Manveen Kaur * @version $Revision: 1.2 $ $Date: 2001/11/27 02:46:28 $ */ @@ -92,6 +93,7 @@ public static final int INIT_PLUGIN_MAX = 10; public static final String TREEBUILDER_KEY = "treebuilders"; + public static final String ROOTNODENAME_KEY = "rootnodename"; // --------------------------------------------------------- Public Methods @@ -116,21 +118,30 @@ HttpServletResponse response) throws IOException, ServletException { - // Make the root node and tree control - - TreeControlNode root = - new TreeControlNode("ROOT-NODE", - null, "Root Node", - "treeControlTest.do?select=ROOT-NODE", - null, true); - TreeControl control = new TreeControl(root); ApplicationServlet servlet = (ApplicationServlet)getServlet(); // Getting init parms from web.xml + // Get the string to be displayed as root node while rendering the tree + String rootnodeName = + (String)servlet.getServletConfig().getInitParameter(ROOTNODENAME_KEY); + String treeBuildersStr = (String)servlet.getServletConfig().getInitParameter(TREEBUILDER_KEY); - + + // Make the root node and tree control + + // The root node gets rendered only if its value + // is set as an init-param in web.xml + + TreeControlNode root = + new TreeControlNode("ROOT-NODE", + null, rootnodeName, + "treeControlTest.do?select=ROOT-NODE", + null, true); + + TreeControl control = new TreeControl(root); + if(treeBuildersStr != null) { Class treeBuilderImpl; TreeBuilder treeBuilderBase; Index: WEB-INF/classes/org/apache/webapp/admin/TreeControlTag.java =================================================================== RCS file: /home/cvspublic/jakarta-tomcat-4.0/webapps/admin/WEB-INF/classes/org/apache/webapp/admin/Tre eControlTag.java,v retrieving revision 1.4 diff -u -r1.4 TreeControlTag.java --- WEB-INF/classes/org/apache/webapp/admin/TreeControlTag.java 2001/11/27 02:46:28 1.4 +++ WEB-INF/classes/org/apache/webapp/admin/TreeControlTag.java 2001/12/15 19:40:04 @@ -350,7 +350,22 @@ HttpServletResponse response = (HttpServletResponse) pageContext.getResponse(); - + + // if the node is root node and the label value is + // null, then do not render root node in the tree. + + if ("ROOT-NODE".equalsIgnoreCase(node.getName()) && + (node.getLabel() == null)) { + // Render the children of this node + TreeControlNode children[] = node.findChildren(); + int lastIndex = children.length - 1; + int newLevel = level + 1; + for (int i = 0; i < children.length; i++) { + render(out, children[i], newLevel, width, i == lastIndex); + } + return; + } + // Render the beginning of this node out.println(" <tr valign=\"middle\">"); -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>