meson.build.o7QLX02
[roobuilder] / src / Project / Gtk.vala
index b44208d..1c0a8f6 100644 (file)
@@ -150,6 +150,10 @@ namespace Project
                public override void onSave()
                {
                        this.meson.save();
+                       var vl = this.language_servers.get("vala");
+                       if (vl != null) {
+                               vl.initialize_server(); // hopefully better than exit?
+                       }
                }
         
                /**
@@ -207,7 +211,37 @@ namespace Project
                {
                        return this.pathsMatching("vapi", false);
                }
+               
+               
+                
+               public override Palete.LanguageClient getLanguageServer(string lang)
+               {
+                       if (this.language_servers.has_key(lang)) {
+                               return this.language_servers.get(lang);
+                       }
+                       switch( lang ) {
+                               case "vala":
+                                       var ls = new Palete.LanguageClientVala(this);
+                                       ls.log.connect((act, msg) => {
+                                               //GLib.debug("log %s: %s", act.to_string(), msg);
+                                               BuilderApplication.showSpinnerLspLog(act,msg);
+                                       });
+                                       this.language_servers.set(lang, ls);
+                                       break;
+                               default :
+                                        return this.language_servers.get("dummy");
+                                        
+                               }
+                               return this.language_servers.get(lang);
+               
+               }
+                
+                
+                
+                
+                
                 
+                // ------------------  new project stufff
                public override void initialize()
                {
                        string[] dirs = {
@@ -247,7 +281,7 @@ namespace Project
                        this.makeMain();
                        this.makeApplication();
                        this.makeWindow();
-                       
+                       this.makeGitIgnore();
 
                        var cg =  new GtkValaSettings(this, this.name);
                        this.compilegroups.set(this.name, cg);
@@ -363,14 +397,18 @@ namespace Project
 }
 """);
        }
-       
+       void makeGitIgnore()
+       {
+                       this.writeFile(".gitignore", """
+build/
+""");
+       }
                        
                
- public override void   initDatabase()
-    {
-         // nOOP
-    }
               public override void   initDatabase()
+               {
+                    // nOOP
+               }
        }