docs.js
[gnome.introspection-doc-generator] / docs.js
diff --git a/docs.js b/docs.js
index 174c711..c0b6f26 100644 (file)
--- a/docs.js
+++ b/docs.js
@@ -50,15 +50,20 @@ File.list(__script_path__ + '/templates/').forEach(function(f) {
     if (f == 'resources') {
         continue;
     }
-    langs.push(f);
+    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'),
+    });
 });
 
 
-
+/*
 var cls_template = new Template(__script_path__ + '/templates/class.html');
 var cls_ix_template = new Template(__script_path__ + '/templates/class_ix.html');
 var reference_template = new Template(__script_path__ + '/templates/references.html');
-
+*/
 
 
 var ns_idx = [];
@@ -73,6 +78,7 @@ ns_list.forEach(function(ns_name)
    
     var ns = Introspect.ns(ns_name);
     
+    // gir goes in top level...
     if (File.exists(ns.gir_file)) {
         File.copyFile(ns.gir_file, outputdir + '/'+ ns.gir_filename, Gio.FileCopyFlags.OVERWRITE);
     }
@@ -80,11 +86,14 @@ ns_list.forEach(function(ns_name)
     
     ns['left_bar'] = cls_ix_template.process(ns);
 
-    // namespace template
-    Gio.simple_write(outputdir + '/'+ ns_name +  '.html', cls_template.process(ns));
-    
-    // left bar index of elements in namespace...
-    Gio.simple_write(outputdir + '/_ix_'+ ns_name +  '.shtml', cls_ix_template.process(ns));
+    langs.forEach(function(lang) {
+        // namespace template
+        Gio.simple_write(outputdir + '/'+ lang.name+ '/' +ns_name +  '.html', lang.cls_template.process(ns));
+        
+        // left bar index of elements in namespace...
+        Gio.simple_write(outputdir + '/'+ lang.name + '/_ix_'+ ns_name +  '.shtml', lang.cls_ix_template.process(ns));
+            
+    });
      
     
     var actions = {
@@ -99,17 +108,16 @@ ns_list.forEach(function(ns_name)
         // we flag GLib as a GObject lib...
         idx[i]= ns_name == 'GLib' ? 1 : ns[i].length ;
         ns[i].forEach( function(n) {
-            
-            
-            Gio.simple_write(outputdir + '/'+ ns_name + '.' + n + '.html', 
-                cls_template.process(
-                    XObject.extend(
-                        Introspect.factory(actions[i], ns_name, n),
-                        { 'left_bar' :ns['left_bar'] }
-                    )
+            var odata = XObject.extend(
+                    Introspect.factory(actions[i], ns_name, n),
+                    { 'left_bar' :ns['left_bar'] }
+                )
+            langs.forEach(function(lang) {
+                    
+                Gio.simple_write(outputdir +  '/'+ lang.name + '/' + ns_name + '.' + n + '.html', 
+                    lang.cls_template.process(odata)
                 )
-            )
-                       
+            });
             console.log(ns_name + '.' +n);
         }); 
     }