01: /* ButtonDefault.java
02:
03: {{IS_NOTE
04: Purpose:
05:
06: Description:
07:
08: History:
09: Sep 6, 2007 2:51:53 PM , Created by jumperchen
10: }}IS_NOTE
11:
12: Copyright (C) 2007 Potix Corporation. All Rights Reserved.
13:
14: {{IS_RIGHT
15: This program is distributed under GPL Version 2.0 in the hope that
16: it will be useful, but WITHOUT ANY WARRANTY.
17: }}IS_RIGHT
18: */
19: package org.zkoss.zkmax.zul.render;
20:
21: import java.io.IOException;
22: import java.io.Writer;
23:
24: import org.zkoss.zk.ui.Component;
25: import org.zkoss.zk.ui.Executions;
26: import org.zkoss.zk.ui.render.ComponentRenderer;
27: import org.zkoss.zk.ui.render.Out;
28: import org.zkoss.zk.ui.render.SmartWriter;
29: import org.zkoss.zul.Button;
30:
31: /**
32: *
33: * {@link Button}'s default mold.
34: *
35: * @author jumperchen
36: * @since 3.0.0
37: */
38: public class ButtonDefault implements ComponentRenderer {
39:
40: public void render(Component comp, Writer out) throws IOException {
41: final SmartWriter wh = new SmartWriter(out);
42: final Button self = (Button) comp;
43: final String uuid = self.getUuid();
44: if (!self.isImageAssigned()
45: && Executions.getCurrent().isSafari()) {
46: wh.write("<input type=\"button\" id=\"").write(uuid).write(
47: "\"");
48: wh.write(" z.type=\"zul.widget.Button\" value=\"").write(
49: self.getLabel()).write("\"");
50: wh.write(self.getOuterAttrs()).write(self.getInnerAttrs())
51: .write("/>");
52: } else {
53: wh.write("<button type=\"button\" id=\"").write(uuid)
54: .write("\"");
55: wh.write(" z.type=\"zul.widget.Button\"").write(
56: self.getOuterAttrs());
57: wh.write(self.getInnerAttrs()).write(">");
58:
59: if (self.getDir().equals("reverse")) {
60: new Out(self.getLabel()).render(out);
61: if (self.isImageAssigned()
62: && self.getOrient().equals("vertical"))
63: wh.writeln("<br/>");
64: wh.write(self.getImgTag());
65: } else {
66: wh.write(self.getImgTag());
67: if (self.isImageAssigned()
68: && self.getOrient().equals("vertical"))
69: wh.writeln("<br/>");
70: new Out(self.getLabel()).render(out);
71: }
72: wh.write("</button>");
73: }
74: }
75: }
|