commit - 571b56bd688a06c5f5489a2dc1baf737567921bc
commit + 0128f7972fcedc22087277fcce144de7ff4c3385
blob - 18958f0f1703379146334804e1e9b841fa673724
blob + 186065af2b3c984fdfac22918291d4bcad3c3431
--- src/org/snipsnap/render/macro/GraphMacro.java
+++ src/org/snipsnap/render/macro/GraphMacro.java
import org.radeox.util.i18n.ResourceManager;
import org.snipsnap.net.RenderServlet;
import org.snipsnap.render.macro.parameter.SnipMacroParameter;
-import snipsnap.api.snip.Snip;
import snipsnap.api.snip.SnipLink;
+import snipsnap.api.snip.Snip;
import java.io.IOException;
import java.io.Writer;
public void execute(Writer writer, SnipMacroParameter params)
throws IllegalArgumentException, IOException {
- snipsnap.api.snip.Snip snip = params.getSnipRenderContext().getSnip();
+ Snip snip = params.getSnipRenderContext().getSnip();
String name = snip.getName();
String handler = params.get("handler", 0);
- writer.write("<img src=\"exec/render?name=");
+ String size = params.get("size", 1);
+ String imageMap = params.get("ismap", 2);
+
+ writer.write("<img class=\"graph-image\" ");
+ if (null != size && size.matches("[0-9]+%")) {
+ writer.write("width=\"");
+ writer.write(size);
+ writer.write("\" ");
+ }
+ writer.write("src=\"exec/render?name=");
writer.write(SnipLink.encode(name));
writer.write("&handler=");
writer.write(handler);
-
String content = Encoder.unescape(params.getContent());
- writer.write("&id=" + RenderServlet.addContent(content));
+ String renderId = RenderServlet.addContent(name, content);
+ writer.write("&id=");
+ writer.write(renderId);
+ if (null != imageMap) {
+ writer.write("\" usemap=\"#");
+ writer.write(renderId);
+ }
writer.write("\"/>");
+
+ if (null != imageMap) {
+ writer.write(RenderServlet.getImageMap(renderId, handler));
+ }
}
}