1 package fr.improve.struts.taglib.layout; 2 3 import java.io.IOException ; 4 5 import javax.servlet.jsp.JspException ; 6 import javax.servlet.jsp.JspWriter ; 7 8 import fr.improve.struts.taglib.layout.event.EndLayoutEvent; 9 import fr.improve.struts.taglib.layout.event.LayoutEventListener; 10 import fr.improve.struts.taglib.layout.event.StartLayoutEvent; 11 import fr.improve.struts.taglib.layout.util.LayoutUtils; 12 13 23 public class FormActions extends LabelledTag implements LayoutEventListener { 24 protected String align = "CENTER"; 25 26 29 public FormActions() { 30 super(); 31 } 32 public int doEndLayoutTag() throws JspException { 33 try { 34 JspWriter out = pageContext.getOut(); 35 out.println("</td></tr>"); 36 } catch (IOException e) { 37 throw new JspException (e.getMessage()); 38 } 39 return EVAL_PAGE; 40 } 41 public int doStartLayoutTag() throws JspException { 42 43 StringBuffer sb = new StringBuffer ("<tr><td align=\"").append(align).append("\" colspan=\""); 44 sb.append(LayoutUtils.getSkin(pageContext.getSession()).getFieldInterface().getColumnNumber()); 45 sb.append("\">"); 46 47 if (key != null) { 48 String action = 49 LayoutUtils.getBeanFromPageContext(pageContext, name, property).toString(); 50 if (action.equals("Edit") || (action.equals("Create"))) { 51 sb.append("<input type=\"submit\" name=\"submit\" value=\""); 53 sb.append(LayoutUtils.getLabel(pageContext, key + ".save", null)); 54 sb.append("\"> "); 55 sb.append("<input type=\"reset\" name=\"reset\" value=\""); 57 sb.append(LayoutUtils.getLabel(pageContext, key + ".reset", null)); 58 sb.append("\"> "); 59 } 60 61 if (action.equals("Delete")) { 62 sb.append("<input type=\"submit\" name=\"submit\" value=\""); 64 sb.append(LayoutUtils.getLabel(pageContext, key + ".confirm", null)); 65 sb.append("\"> "); 66 } 67 68 sb.append( 70 "<input type=\"submit\" name=\"org.apache.struts.taglib.html.CANCEL\" value=\""); 71 sb.append(LayoutUtils.getLabel(pageContext, key + ".cancel", null)); 72 sb.append("\">"); 73 } 74 75 try { 76 JspWriter out = pageContext.getOut(); 77 out.println(sb.toString()); 78 } catch (IOException e) { 79 throw new JspException (e.getMessage()); 80 } 81 return EVAL_BODY_INCLUDE; 82 } 83 84 public void release() { 85 super.release(); 86 align = "CENTER"; 87 } 88 89 public Object processStartLayoutEvent(StartLayoutEvent in_event) { 90 return Boolean.FALSE; 91 } 92 public Object processEndLayoutEvent(EndLayoutEvent in_event) { 93 return Boolean.FALSE; 94 } 95 99 public String getAlign() { 100 return align; 101 } 102 103 107 public void setAlign(String align) { 108 this.align = align; 109 } 110 } | Popular Tags |