src/Builder4/config1.builder
[app.Builder.js] / src / Builder4 / Editor.vala
index fe189b6..f5d13a1 100644 (file)
@@ -49,6 +49,7 @@ public class Editor : Object
 
         // set gobject values
         this.el.homogeneous = false;
+        this.el.hexpand = true;
         var child_0 = new Xcls_Box2( _this );
         child_0.ref();
         this.el.pack_start (  child_0.el , false,true );
@@ -120,13 +121,14 @@ public class Editor : Object
                 val = node.props.get(key);
             }
             this.view.load(val);
-    
+            this.key_edit.el.show();
+            this.key_edit.el.text = key;  
         
         } else {
             this.view.load(        file.toSource() );
-    
+            this.key_edit.el.hide();
         }
-        this.key_edit.el.text = key;  
+    
            
     }
     public class Xcls_Box2 : Object
@@ -262,6 +264,8 @@ public class Editor : Object
             this.el.show_line_marks = true;
             this.el.insert_spaces_instead_of_tabs = true;
             this.el.show_line_numbers = true;
+            this.el.draw_spaces = Gtk.SourceDrawSpacesFlags.LEADING + Gtk.SourceDrawSpacesFlags.TRAILING + Gtk.SourceDrawSpacesFlags.TAB + Gtk.SourceDrawSpacesFlags.SPACE;
+            this.el.tab_width = 4;
             this.el.highlight_current_line = true;
             var child_0 = new Xcls_buffer( _this );
             child_0.ref();
@@ -272,8 +276,8 @@ public class Editor : Object
             var description =   Pango.FontDescription.from_string("monospace");
                 description.set_size(8000);
                 this.el.override_font(description);
-            
-            
+               this.el.completion.add_provider(new Palete.CompletionProvider());
+             
               
                 var attrs = new Gtk.SourceMarkAttributes();
                 var  pink =   Gdk.RGBA();
@@ -336,7 +340,7 @@ public class Editor : Object
         
         
           // this.get('/BottomPane').el.set_current_page(0);
-          var buf = (Gtk.SourceBuffer)this.el.get_buffer();
+            var buf = (Gtk.SourceBuffer)this.el.get_buffer();
             buf.set_text(str, str.length);
             buf.set_undo_manager(null);
             
@@ -345,14 +349,21 @@ public class Editor : Object
             if (_this.file != null) {
                  lang = _this.file.language;
             }
-            
-         
-            ((Gtk.SourceBuffer)(this.el.get_buffer())) .set_language(
-                    _this.file.content_type.length > 0  ?
+            print("lang=%s, content_type = %s\n", lang, _this.file.content_type);
+            var lg = _this.file.content_type.length > 0  ?
                     lm.guess_language(_this.file.path, _this.file.content_type) :
-                    lm.get_language(lang)
-                );
-         
+                    lm.get_language(lang);
+            
+           
+           
+            ((Gtk.SourceBuffer)(this.el.get_buffer())) .set_language(lg); 
+        
+            this.el.insert_spaces_instead_of_tabs = true;
+            
+            print("sourcelanguage  = %s\n", lg.name);
+            if (lg.name == "Vala") {
+                this.el.insert_spaces_instead_of_tabs = false;
+            }
              
             _this.dirty = false;
             this.el.grab_focus();
@@ -473,10 +484,13 @@ public class Editor : Object
                 // assume it's gtk...
                    this.check_running = true;
         
-                 _this.window.windowstate.valasource.checkPlainFileSpawn(
+                 if (!_this.window.windowstate.valasource.checkPlainFileSpawn(
                   _this.file,
                    str
-                );
+                )) {
+                    this.check_running = false;
+                }
+               
                 return true;
             
             }
@@ -508,16 +522,15 @@ public class Editor : Object
             // clear the buttons.
          
             
-            p.validateVala(
-                _this.window.windowstate,
-                str, 
-                 _this.key, 
-                _this.ptype,
+           if (! _this.window.windowstate.valasource.checkFileWithNodePropChange(
                 _this.file,
-                _this.node 
-                
-                
-            );
+                _this.node,
+                 _this.key,        
+                 _this.ptype,
+                    str
+                )) {
+                this.check_running = false;
+            }