rendered paste bodypublic class LaszloSwfPanel extends Panel
{
private static final long serialVersionUID = 1L;
public enum SWFCompileVersion {
SWF7, SWF8
}
public LaszloSwfPanel(
String id, String laszlopath, SWFCompileVersion version,
Dimension appsize, boolean debug, String laszloparams
)
{
super(id);
IModel pathModel = new LaszloPathModel(laszlopath, version, debug, laszloparams);
WebMarkupContainer laszloobject = new WebMarkupContainer("laszloobject");
laszloobject.add(new AttributeModifier("data", true, pathModel));
laszloobject.add(new AttributeModifier("height", true, new Model(appsize.height)));
laszloobject.add(new AttributeModifier("width", true, new Model(appsize.width)));
laszloobject.setEscapeModelStrings(false);
WebMarkupContainer laszlomovie = new WebMarkupContainer("laslzlomovie");
laszlomovie.add(new AttributeModifier("value", true, pathModel));
laszlomovie.setEscapeModelStrings(false);
laszloobject.add(laszlomovie);
add(laszloobject);
}
private class LaszloPathModel implements IModel
{
private static final long serialVersionUID = 1L;
private boolean debug;
private String laszlopath;
private String laszloparams;
private SWFCompileVersion version;
LaszloPathModel(
String laszlopath, SWFCompileVersion version, boolean debug, String laszloparams
)
{
super();
this.debug = debug;
this.laszloparams = laszloparams;
this.laszlopath = laszlopath;
this.version = version;
}
// Example ../l2aa/l2aa.lzx?lzt=swf&lzr=swf8&debug=false
public Object getObject()
{
StringBuilder sb = new StringBuilder(laszlopath);
sb.append("?lzt=");
sb.append("swf");
if (version != null) {
sb.append("&lzr=");
sb.append(version.toString().toLowerCase());
}
sb.append("&debug=");
sb.append(Boolean.valueOf(debug).toString().toLowerCase());
// Append any special params
if (laszloparams != null && laszloparams.length() > 0) {
sb.append('&').append(laszloparams);
}
return sb.toString();
}
/** Not implemented */
public void setObject(Object object) {}
/** Not implemented */
public void detach() {}
}
}