01: /**********************************************************************************
02: * $URL: https://source.sakaiproject.org/svn/jsf/tags/sakai_2-4-1/widgets/src/java/org/sakaiproject/jsf/renderer/ViewTitleRenderer.java $
03: * $Id: ViewTitleRenderer.java 9278 2006-05-10 23:29:21Z ray@media.berkeley.edu $
04: ***********************************************************************************
05: *
06: * Copyright (c) 2003, 2004 The Sakai Foundation.
07: *
08: * Licensed under the Educational Community License, Version 1.0 (the "License");
09: * you may not use this file except in compliance with the License.
10: * You may obtain a copy of the License at
11: *
12: * http://www.opensource.org/licenses/ecl1.php
13: *
14: * Unless required by applicable law or agreed to in writing, software
15: * distributed under the License is distributed on an "AS IS" BASIS,
16: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17: * See the License for the specific language governing permissions and
18: * limitations under the License.
19: *
20: **********************************************************************************/package org.sakaiproject.jsf.renderer;
21:
22: import java.io.IOException;
23:
24: import javax.faces.component.UIComponent;
25: import javax.faces.component.UIOutput;
26: import javax.faces.context.FacesContext;
27: import javax.faces.context.ResponseWriter;
28: import javax.faces.render.Renderer;
29:
30: import org.sakaiproject.jsf.util.RendererUtil;
31:
32: public class ViewTitleRenderer extends Renderer {
33: public boolean supportsComponentType(UIComponent component) {
34: return (component instanceof UIOutput);
35: }
36:
37: public void encodeBegin(FacesContext context, UIComponent component)
38: throws IOException {
39: if (!component.isRendered())
40: return;
41:
42: ResponseWriter writer = context.getResponseWriter();
43: writer.startElement("h3", null);
44:
45: // TODO: Should we really write out the ID? Is there any need for this in this tag?
46: // String id = (String) RendererUtil.getAttribute(context, component, "id");
47: // if (id != null)
48: // {
49: // writer.writeAttribute("id", id, null);
50: // }
51:
52: String cssClass = "insColor insBak insBorder";
53: Integer indent = (Integer) RendererUtil.getAttribute(context,
54: component, "indent");
55: if (indent != null) {
56: cssClass = cssClass + " indnt" + indent;
57: }
58: writer.writeAttribute("class", cssClass, null);
59: writer.writeText((String) RendererUtil.getAttribute(context,
60: component, "value"), null);
61: }
62:
63: /**
64: * @param context FacesContext for the request we are processing
65: * @param component UIComponent to be rendered
66: * @exception IOException if an input/output error occurs while rendering
67: * @exception NullPointerException if <code>context</code> or <code>component</code> is null
68: */
69: public void encodeEnd(FacesContext context, UIComponent component)
70: throws IOException {
71: if (!component.isRendered())
72: return;
73:
74: ResponseWriter writer = context.getResponseWriter();
75: writer.endElement("h3");
76: }
77: }
|