/* Img.java
Purpose:
Description:
History:
Tue Sep 20 15:13:32 2005, Created by tomyeh
Copyright (C) 2005 Potix Corporation. All Rights Reserved.
{{IS_RIGHT
This program is distributed under LGPL Version 2.1 in the hope that
it will be useful, but WITHOUT ANY WARRANTY.
}}IS_RIGHT
*/
package org.zkoss.web.servlet.dsp.action.html;
import java.io.IOException;
import org.zkoss.web.mesg.MWeb;
import org.zkoss.web.servlet.dsp.DspException;
import org.zkoss.web.servlet.dsp.action.AbstractAction;
import org.zkoss.web.servlet.dsp.action.ActionContext;
/**
* Generates the HTML <img> tag
*
* @author tomyeh
*/
public class Img extends AbstractAction {
private String _id, _onclick;
private String _src, _height, _width, _border, _hspace, _vspace;
private String _align, _title, _alt, _sclass, _style;
/** Returns the id attribute.
* Default: null.
*/
public String getId() {
return _id;
}
/** Sets the id attribute.
*/
public void setId(String id) {
_id = id;
}
/** Returns the src (URL).
* Default: null.
*/
public String getSrc() {
return _src;
}
/** Sets the src (URL).
*/
public void setSrc(String src) {
_src = src;
}
/** Returns the alignment.
* Default: null.
*/
public String getAlign() {
return _align;
}
/** Sets the alignment.
*/
public void setAlign(String align) {
_align = align;
}
/** Returns the alt.
* Default: null.
*/
public String getAlt() {
return _alt;
}
/** Sets the alt.
*/
public void setAlt(String alt) {
_alt = alt;
}
/** Returns the border.
* Default: null.
*/
public String getBorder() {
return _border;
}
/** Sets the border.
*/
public void setBorder(String border) {
_border = border;
}
/** Returns the hspace.
* Default: null.
*/
public String getHspace() {
return _hspace;
}
/** Sets the hspace.
*/
public void setHspace(String hspace) {
_hspace = hspace;
}
/** Returns the vspace.
* Default: null.
*/
public String getVspace() {
return _vspace;
}
/** Sets the vspace.
*/
public void setVspace(String vspace) {
_vspace = vspace;
}
/** Returns the style class.
* Default: null.
*/
public String getSclass() {
return _sclass;
}
/** Sets the style class.
*/
public void setSclass(String sclass) {
_sclass = sclass;
}
/** Returns the style.
* Default: null.
*/
public String getStyle() {
return _style;
}
/** Sets the style.
*/
public void setStyle(String style) {
_style = style;
}
/** Returns the height.
* Default: null.
*/
public String getHeight() {
return _height;
}
/** Sets the height.
*/
public void setHeight(String height) {
_height = height;
}
/** Returns the width.
* Default: null.
*/
public String getWidth() {
return _width;
}
/** Sets the width.
*/
public void setWidth(String width) {
_width = width;
}
/** Returns the title.
* Default: null (no title at all).
*/
public String getTitle() {
return _title;
}
/** Sets the title.
*/
public void setTitle(String title) {
_title = title;
}
/** Returns the onclick.
* Default: null.
*/
public String getOnclick() {
return _onclick;
}
/** Sets the onclick.
*/
public void setOnclick(String onclick) {
_onclick = onclick;
}
//-- Action --//
public void render(ActionContext ac, boolean nested) throws DspException, IOException {
if (!isEffective() || _src == null || _src.length() == 0)
return; //nothing to generate
if (nested)
throw new DspException(MWeb.DSP_NESTED_ACTION_NOT_ALLOWED,
new Object[] { this, new Integer(ac.getLineNumber()) });
final StringBuffer sb = new StringBuffer(64).append("<img src=\"").append(ac.encodeURL(_src)).append('"');
append(sb, "id", _id);
append(sb, "height", _height);
append(sb, "width", _width);
append(sb, "title", _title);
append(sb, "align", _align);
append(sb, "alt", _alt);
append(sb, "class", _sclass);
append(sb, "style", _style);
append(sb, "border", _border);
append(sb, "hspace", _hspace);
append(sb, "vspace", _vspace);
append(sb, "onclick", _onclick);
sb.append("/>");
ac.getOut().write(sb.toString());
}
//-- Object --//
public String toString() {
return "image";
}
}