All pastes #987884 Raw Edit

Unnamed

public text v1 · immutable
#987884 ·published 2008-04-17 01:55 UTC
rendered paste body
public 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() {}
    }
}