+ protected void processImages(String id)
+ {
+ Map<Arg, ArgValues> m = argParser.linkedArgs(id);
+ AlignFrame af = afMap.get(id);
+
+ if (af == null)
+ {
+ Console.warn("Did not have an alignment window for id=" + id);
+ return;
+ }
+
+ if (ArgParser.getValues(m, Arg.IMAGE) != null)
+ {
+ for (String val : ArgParser.getValues(m, Arg.IMAGE))
+ {
+ SubVal subVal = new SubVal(val);
+ String type = "png"; // default
+ String fileName = subVal.content;
+ File file = new File(fileName);
+ if ("type".equals(subVal.keyName))
+ {
+ type = subVal.keyValue;
+ }
+ else if (fileName != null)
+ {
+ for (String ext : new String[] { "svg", "png", "html" })
+ {
+ if (fileName.toLowerCase(Locale.ROOT).endsWith("." + ext))
+ {
+ type = ext;
+ }
+ }
+ }
+ switch (type)
+ {
+ case "svg":
+ af.createSVG(file);
+ break;
+ case "png":
+ af.createPNG(file);
+ break;
+ case "html":
+ HtmlSvgOutput htmlSVG = new HtmlSvgOutput(af.alignPanel);
+ htmlSVG.exportHTML(fileName);
+ break;
+ }
+ }
+ }
+ }
+
+ private SequenceI getSpecifiedSequence(AlignFrame af, SubVal subId)