sync
[app.Builder.js] / src / Palete / VapiParser.vala
index 8c95979..b336e98 100644 (file)
@@ -27,7 +27,7 @@ namespace Palete {
                                
                                return;
                        }
-                       print("parsing namespace %s\n", element.name);
+                       //print("parsing namespace %s\n", element.name);
                        if (element.name == null) {
                                element.accept_children(this); // catch sub namespaces..
                                return;
@@ -207,12 +207,13 @@ namespace Palete {
                        var n = met.name == null ? "" : met.name;
                        var ty  = "Method";
                        if (met is Vala.CreationMethod) {
-                               ty = "Ctor");
-                               if(n == "") {
+                               ty = "Ctor";
+                               if(n == "" || n == ".new") {
                                        n = "new";
                                }
                                
                        }
+                       //print("add_method :  %s\n", n);
                        
                        var c = new GirObject(ty,n);
                        c.gparent = parent;
@@ -243,7 +244,7 @@ namespace Palete {
                        
                        
                        foreach(var p in params) {
-                               if (p.name == null) {
+                               if (p.name == null && !p.ellipsis) {
                                        continue;
                                }
                                this.add_param(cc, p);
@@ -253,11 +254,19 @@ namespace Palete {
                
                public void add_param(GirObject parent, Vala.Parameter pam)
                {
-                       var c = new GirObject("Param",pam.name);
+                       
+                       var n = pam.name;
+                       if (pam.ellipsis) {
+                               n = "___";
+                       }
+                       var c = new GirObject("Param",n);
                        c.gparent = parent;
                        c.ns = parent.ns;
                        parent.params.add(c);
-                       c.type = pam.variable_type.data_type == null ? "" : pam.variable_type.data_type.get_full_name();
+                       
+                       if (!pam.ellipsis) {
+                               c.type = pam.variable_type.data_type == null ? "" : pam.variable_type.data_type.get_full_name();
+                       }
                        Gir.checkParamOverride(c); 
                        
                }
@@ -375,16 +384,14 @@ namespace Palete {
         
        }
 }
+ /*
 int main (string[] args) {
        
-       var g = Palete.Gir.factoryFqn("Gtk.Dialog");
+       var g = Palete.Gir.factoryFqn("Gtk.SourceView");
        print("%s\n", g.asJSONString());
        
        return 0;
 }
  
-
 
+*/