JSDOC/Lang.js
[gnome.introspection-doc-generator] / docs.js
diff --git a/docs.js b/docs.js
index 713b723..a34e3ef 100644 (file)
--- a/docs.js
+++ b/docs.js
@@ -4,15 +4,16 @@ Gtk = imports.gi.Gtk;
 Gio = imports.gi.Gio;
 Gdk = imports.gi.Gdk;
 
-
-XObject = imports.XObject.XObject;
-
-
-
+// generic libraries
+XObject     = imports.XObject.XObject;
 File        = imports.File.File; 
 console     = imports.console.console; 
+Template    = imports.JsTemplate.Template.Template; 
+
+// Introspecion specific..
 NameSpace   = imports.Introspect.NameSpace.NameSpace; 
-Template    = imports.JSDOC.Template..Template; 
+Link        = imports.Introspect.Link.Link; 
+
 
 
 var outputdir = Seed.argv[2];
@@ -47,16 +48,25 @@ ns_list = ns_list.sort();
 langs=[];
 File.list(__script_path__ + '/templates/').forEach(function(f) {
     if (!File.isDirectory(__script_path__ + '/templates/' + f)) {
-        continue;
+        return;
     }
     if (f == 'resources') {
-        continue;
+        return;
     }
     langs.push({
         name : f,
-        cls_template       : new Template(__script_path__ + '/templates/' + f + '/class.html'),
-        cls_ix_template    : new Template(__script_path__ + '/templates/' + f + '/class_ix.html'),
-        reference_template : new Template(__script_path__ + '/templates/' + f + '/references.html'),
+        cls_template       : new Template( {
+            templateFile : __script_path__ + '/templates/' + f + '/class.html',
+            Link : Link // links might be specific to languages..
+        }),
+        cls_ix_template    : new Template( {
+            templateFile : __script_path__ + '/templates/' + f + '/class_ix.html',
+            Link : Link // links might be specific to languages..
+        }),
+        reference_template : new Template({
+            templateFile : __script_path__ + '/templates/' + f + '/references.html',
+            Link : Link // links might be specific to languages..
+        }),
     });
 });
 
@@ -86,9 +96,10 @@ ns_list.forEach(function(ns_name)
     }
     
     
-    ns['left_bar'] = cls_ix_template.process(ns);
+    
 
     langs.forEach(function(lang) {
+        ns['left_bar'] = lang.cls_ix_template.process(ns);
         // namespace template
         Gio.simple_write(outputdir + '/'+ lang.name+ '/' +ns_name +  '.html', lang.cls_template.process(ns));
         
@@ -159,11 +170,15 @@ langs.forEach(function(lang) {
         Gio.simple_write(html_file_path, html);
 
     }
-);
+});
 
 // set up index and resources.
 langs.forEach(function(lang) {
-    var ix_template = new Template(__script_path__ + '/templates/' + lang.name + '/index.html');
+    var ix_template = new Template({
+        templateFile : __script_path__ + '/templates/' + lang.name + '/index.html',
+        Link : Link, // lang specifc?
+    });
     Gio.simple_write(outputdir + '/' + lang.name +  '/index.html', ix_template.process(ns_idx));
-    File.silentRecursiveCopy(__script_path__ + '/templates/resources/', outputdir + '/'  lang.name , Gio.FileCopyFlags.OVERWRITE);
+    File.silentRecursiveCopy(__script_path__ + '/templates/resources/', 
+        outputdir + '/'  + lang.name , Gio.FileCopyFlags.OVERWRITE);
 });
\ No newline at end of file