Integration of Freemarker API to the Jalview help system to aid self-documentation...
[jalview.git] / src / jalview / help / freemarker / AllignmentMenuTemplateData.java
diff --git a/src/jalview/help/freemarker/AllignmentMenuTemplateData.java b/src/jalview/help/freemarker/AllignmentMenuTemplateData.java
new file mode 100644 (file)
index 0000000..a1b808b
--- /dev/null
@@ -0,0 +1,59 @@
+package jalview.help.freemarker;
+
+import jalview.io.AppletFormatAdapter;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.OutputStreamWriter;
+import java.io.Writer;
+import java.util.HashMap;
+import java.util.Map;
+
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import freemarker.template.TemplateException;
+
+public class AllignmentMenuTemplateData
+{
+
+  public static void main(String[] args)
+  {
+    // System.out.println("Absolute Path " + new File().getAbsoluteFile());
+    generateAllignmentMenuTemplateData();
+  }
+  public static void generateAllignmentMenuTemplateData()
+  {
+    Configuration cfg = new Configuration();
+    try
+    {
+      // Load template from source folder
+      Template template = cfg
+              .getTemplate("/help/freemarker_templates/alignmentMenu.ftl");
+
+      // Build the data-model
+      Map<String, Object> data = new HashMap<String, Object>();
+      data.put("format_adapters", AppletFormatAdapter.WRITEABLE_FORMATS);
+
+      // Console output
+      Writer out = new OutputStreamWriter(System.out);
+      template.process(data, out);
+      out.flush();
+
+      // File output
+      Writer file = new FileWriter(
+              new File(
+                      "help/html/freemarker_html_output/alignmentMenu.html"));
+      template.process(data, file);
+      file.flush();
+      file.close();
+
+    } catch (IOException e)
+    {
+      e.printStackTrace();
+    } catch (TemplateException e)
+    {
+      e.printStackTrace();
+    }
+  }
+}