java.lang.ObjectButtonRenderer is a class that renders the current value ofjavax.faces.render.Renderer
com.sun.faces.renderkit.html_basic.HtmlBasicRenderer
com.sun.faces.renderkit.html_basic.ButtonRenderer
UICommand as a Button.
Fields inherited from com.sun.faces.renderkit.html_basic.HtmlBasicRenderer: logger
Method from com.sun.faces.renderkit.html_basic.ButtonRenderer Summary:
decode, encodeBegin, encodeEnd
Methods from com.sun.faces.renderkit.html_basic.HtmlBasicRenderer:
augmentIdReference, convertClientId, decode, encodeEnd, encodeRecursive, getChildren, getCurrentValue, getEndTextToRender, getFacet, getForComponent, getFormattedValue, getFormattedValue, getMessageIter, getParamList, getRendersChildren, getValue, rendererParamsNotNull, setSubmittedValue, shouldDecode, shouldEncode, shouldEncodeChildren, shouldWriteIdAttribute, writeIdAttributeIfNecessary
Methods from java.lang.Object:
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Method from com.sun.faces.renderkit.html_basic.ButtonRenderer Detail:
public void decode(FacesContext context,
UIComponent component) {
// ---------------------------------------------------------- Public Methods
rendererParamsNotNull(context, component);
if (!shouldDecode(component)) {
return;
}
if (wasClicked(context, component) && !isReset(component)) {
component.queueEvent(new ActionEvent(component));
if (logger.isLoggable(Level.FINE)) {
logger.fine("This command resulted in form submission " +
" ActionEvent queued.");
logger.log(Level.FINE,
"End decoding component {0}",
component.getId());
}
}
}
public void encodeBegin(FacesContext context,
UIComponent component) throws IOException {
rendererParamsNotNull(context, component);
if (!shouldEncode(component)) {
return;
}
// Which button type (SUBMIT, RESET, or BUTTON) should we generate?
String type = getButtonType(component);
ResponseWriter writer = context.getResponseWriter();
assert(writer != null);
String label = "";
Object value = ((UICommand) component).getValue();
if (value != null) {
label = value.toString();
}
String imageSrc = (String) component.getAttributes().get("image");
writer.startElement("input", component);
writeIdAttributeIfNecessary(context, writer, component);
String clientId = component.getClientId(context);
if (imageSrc != null) {
writer.writeAttribute("type", "image", "type");
writer.writeURIAttribute("src", src(context, imageSrc), "image");
writer.writeAttribute("name", clientId, "clientId");
} else {
writer.writeAttribute("type", type, "type");
writer.writeAttribute("name", clientId, "clientId");
writer.writeAttribute("value", label, "value");
}
RenderKitUtils.renderPassThruAttributes(writer,
component,
ATTRIBUTES);
RenderKitUtils.renderXHTMLStyleBooleanAttributes(writer, component);
String styleClass = (String)
component.getAttributes().get("styleClass");
if (styleClass != null && styleClass.length() > 0) {
writer.writeAttribute("class", styleClass, "styleClass");
}
writer.endElement("input");
}
public void encodeEnd(FacesContext context,
UIComponent component) throws IOException {
rendererParamsNotNull(context, component);
}