1 22 package org.jboss.console.plugins.helpers.servlet; 23 24 import java.io.IOException ; 25 import java.net.URLEncoder ; 26 import java.util.ArrayList ; 27 28 import javax.servlet.jsp.JspTagException ; 29 import javax.servlet.jsp.tagext.TagSupport ; 30 31 34 public class NavigationTag extends TagSupport 35 { 36 private ArrayList tabs = new ArrayList (10); 37 private String selectedTabName; 38 39 public int doStartTag() throws JspTagException 40 { 41 tabs.clear(); 42 return EVAL_BODY_INCLUDE; 43 } 44 45 public int doEndTag() throws JspTagException 48 { 49 try 50 { 51 pageContext.getOut().write( 52 "<table width='100%' height='24' border='0' cellspacing='0' cellpadding='0'>"); 53 pageContext.getOut().write("<tr valign='bottom'>"); 54 for (int i = 0; i < tabs.size(); i++) 55 { 56 Tab tab = (Tab) tabs.get(i); 57 String name = tab.getName(); 58 59 pageContext.getOut().write("<td width='8' align='left' class='tabSpacer'>"); 60 pageContext.getOut().write("<p><img SRC='images/spacer.gif' width='8' height='24'></p>"); 61 pageContext.getOut().write("</td>"); 62 pageContext.getOut().write("<td align='left' nowrap class="); 63 64 if (isSelected(tab)) 65 { 66 pageContext.getOut().write("'tab'>"); 67 } 68 else 69 { 70 pageContext.getOut().write("'tabOff'>"); 71 } 72 pageContext.getOut().write("<p>"); 73 if (tab.getHref() != null) 74 { 75 pageContext.getOut().write("<a HREF='" + tab.getHref() + "'>"); 76 } 77 pageContext.getOut().write(name); 78 if (tab.getHref() != null) 79 { 80 pageContext.getOut().write("</a>"); 81 } 82 pageContext.getOut().write("</p></td>"); 83 } 84 pageContext.getOut().write("<td width='100%' align='left' class='tabSpacer'><p> </p></td>"); 86 pageContext.getOut().write("</tr>"); 87 pageContext.getOut().write("</table>"); 88 } 89 catch (IOException e) 90 { 91 throw new JspTagException (e.toString()); 92 } 93 return EVAL_PAGE; 94 } 95 96 100 private boolean isSelected(Tab tab) 101 { 102 boolean selected = false; 103 104 if (tab.isSelected()) 105 { 106 selected = true; 107 } 108 109 if (selectedTabName != null && !selectedTabName.equals("")) 111 { 112 selected = tab.getName().equals(selectedTabName); 113 } 114 115 return selected; 116 } 117 118 public final void setTabs(Tab tab) 119 { 120 tabs.add(tab); 121 } 122 123 126 public String getSelectedTabName() 127 { 128 return selectedTabName; 129 } 130 131 134 public void setSelectedTabName(String string) 135 { 136 selectedTabName = string; 137 } 138 139 } 140 | Popular Tags |