KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > fr > improve > struts > taglib > layout > FormActions


1 package fr.improve.struts.taglib.layout;
2
3 import java.io.IOException JavaDoc;
4
5 import javax.servlet.jsp.JspException JavaDoc;
6 import javax.servlet.jsp.JspWriter JavaDoc;
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 /**
14  * Buttons in forms must be added within this tag.
15  * <br>
16  * This tag is deprecated. <layout:line> should be used instead.
17  *
18  * @author: Jean-Noel Ribette
19  * @deprecated
20  *
21  * Can also auto generate the needed buttons;
22  **/

23 public class FormActions extends LabelledTag implements LayoutEventListener {
24     protected String JavaDoc align = "CENTER";
25
26     /**
27      * FormActions constructor comment.
28      */

29     public FormActions() {
30         super();
31     }
32     public int doEndLayoutTag() throws JspException JavaDoc {
33         try {
34             JspWriter JavaDoc out = pageContext.getOut();
35             out.println("</td></tr>");
36         } catch (IOException JavaDoc e) {
37             throw new JspException JavaDoc(e.getMessage());
38         }
39         return EVAL_PAGE;
40     }
41     public int doStartLayoutTag() throws JspException JavaDoc {
42
43         StringBuffer JavaDoc sb = new StringBuffer JavaDoc("<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 JavaDoc action =
49                 LayoutUtils.getBeanFromPageContext(pageContext, name, property).toString();
50             if (action.equals("Edit") || (action.equals("Create"))) {
51                 // +save button
52
sb.append("<input type=\"submit\" name=\"submit\" value=\"");
53                 sb.append(LayoutUtils.getLabel(pageContext, key + ".save", null));
54                 sb.append("\">&nbsp;");
55                 // + reset button
56
sb.append("<input type=\"reset\" name=\"reset\" value=\"");
57                 sb.append(LayoutUtils.getLabel(pageContext, key + ".reset", null));
58                 sb.append("\">&nbsp;");
59             }
60
61             if (action.equals("Delete")) {
62                 // + confirm button
63
sb.append("<input type=\"submit\" name=\"submit\" value=\"");
64                 sb.append(LayoutUtils.getLabel(pageContext, key + ".confirm", null));
65                 sb.append("\">&nbsp;");
66             }
67
68             // + cancel button
69
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 JavaDoc out = pageContext.getOut();
77             out.println(sb.toString());
78         } catch (IOException JavaDoc e) {
79             throw new JspException JavaDoc(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 JavaDoc processStartLayoutEvent(StartLayoutEvent in_event) {
90         return Boolean.FALSE;
91     }
92     public Object JavaDoc processEndLayoutEvent(EndLayoutEvent in_event) {
93         return Boolean.FALSE;
94     }
95     /**
96      * Gets the align.
97      * @return Returns a String
98      */

99     public String JavaDoc getAlign() {
100         return align;
101     }
102
103     /**
104      * Sets the align.
105      * @param align The align to set
106      */

107     public void setAlign(String JavaDoc align) {
108         this.align = align;
109     }
110 }
Popular Tags