Fix #8048 - context provider start work - fix meson build flag - project settings...
[roobuilder] / src / Builder4 / ValaProjectSettingsPopover.vala
index c6fc50a..ef7c1e9 100644 (file)
@@ -16,6 +16,9 @@ public class ValaProjectSettingsPopover : Object
        public Xcls_label_global label_global;
        public Xcls_label_targets label_targets;
        public Xcls_compile_flags compile_flags;
+       public Xcls_generate_meson generate_meson;
+       public Xcls_version version;
+       public Xcls_licence licence;
        public Xcls_vapi_scroll vapi_scroll;
        public Xcls_vapimodel vapimodel;
        public Xcls_vapi_filter vapi_filter;
@@ -32,6 +35,7 @@ public class ValaProjectSettingsPopover : Object
        public Xcls_set_vboxb set_vboxb;
        public Xcls_build_name build_name;
        public Xcls_build_execute_args build_execute_args;
+       public Xcls_build_as_library build_as_library;
        public Xcls_save_btn save_btn;
 
                // my vars (def)
@@ -39,9 +43,9 @@ public class ValaProjectSettingsPopover : Object
        public bool cg_loading;
        public Xcls_MainWindow window;
        public Project.GtkValaSettings? selected_target;
-       public uint border_width;
        public bool done;
        public Project.Gtk project;
+       public uint border_width;
 
        // ctor
        public ValaProjectSettingsPopover()
@@ -54,13 +58,14 @@ public class ValaProjectSettingsPopover : Object
                this.cg_loading = false;
                this.window = null;
                this.selected_target = null;
-               this.border_width = 0;
                this.done = false;
                this.project = null;
+               this.border_width = 0;
 
                // set gobject values
                this.el.modal = true;
                var child_1 = new Xcls_HeaderBar1( _this );
+               child_1.ref();
                this.el.titlebar = child_1.el;
                var child_2 = new Xcls_Box3( _this );
                child_2.ref();
@@ -87,28 +92,44 @@ public class ValaProjectSettingsPopover : Object
            //print("ValaProjectSettings show\n");
            this.doneObj = doneObj;
            this.project=  project;
+           
+           this.project.loading = true;
                 
            this.compile_flags.el.buffer.set_text(
                project.compile_flags.data
                );
-                  
-           project.loadVapiIntoStore(_this.vapimodel.el);
-            GLib.Timeout.add(500, () => {
-                        this.vapi_scroll.el.vadjustment.value  = 0;     
-                    return false;
-            });
-           
-          
+          this.version.el.buffer.set_text(
+               project.version.data
+               );
+                 this.licence.el.buffer.set_text(
+               project.licence.data
+               ); 
+               
+               
+               
+               GLib.Idle.add(() => {
+                       project.loadVapiIntoStore(_this.vapimodel.el);
+                        GLib.Timeout.add(500, () => {
+                                this.vapi_scroll.el.vadjustment.value  = 0;     
+                                return false;
+                       });
+                       project.loadTargetsIntoStore(this.target_model.el);
+                       _this.target_sel.el.selected = Gtk.INVALID_LIST_POSITION;
+                       _this.target_sel.selectTarget(null);
+                        this.project.loading = false;
+                       return false;
+               });
+                       
+          this.generate_meson.el.active = this.project.generate_meson;
                
-               project.loadTargetsIntoStore(this.target_model.el);
+       
                
-               _this.target_sel.el.selected = Gtk.INVALID_LIST_POSITION;
-               _this.target_sel.selectTarget(null);
+        
        //      Gtk.Allocation rect;
                //btn.get_allocation(out rect);
         //   this.el.set_pointing_to(rect);
-        this.el.application = pwin.application; // ??? make it modal?
-                this.el.set_transient_for(pwin);
+               this.el.application = pwin.application; // ??? make it modal?
+               this.el.set_transient_for(pwin);
                 
                // window + header?
                // print("SHOWALL - POPIP\n");
@@ -140,6 +161,7 @@ public class ValaProjectSettingsPopover : Object
 
                        // set gobject values
                        var child_1 = new Xcls_Label2( _this );
+                       child_1.ref();
                        this.el.title_widget = child_1.el;
                }
 
@@ -189,7 +211,7 @@ public class ValaProjectSettingsPopover : Object
                        this.el.vexpand = true;
                        new Xcls_notebook( _this );
                        this.el.append( _this.notebook.el );
-                       var child_2 = new Xcls_Box57( _this );
+                       var child_2 = new Xcls_Box65( _this );
                        child_2.ref();
                        this.el.append( child_2.el );
                }
@@ -220,7 +242,7 @@ public class ValaProjectSettingsPopover : Object
                        var child_3 = new Xcls_Box7( _this );
                        child_3.ref();
                        this.el.append_page ( child_3.el , _this.label_global.el );
-                       var child_4 = new Xcls_Paned25( _this );
+                       var child_4 = new Xcls_Paned32( _this );
                        child_4.ref();
                        this.el.append_page ( child_4.el , _this.label_targets.el );
                }
@@ -291,11 +313,12 @@ public class ValaProjectSettingsPopover : Object
 
                        // set gobject values
                        this.el.homogeneous = false;
-                       var child_1 = new Xcls_Label8( _this );
+                       var child_1 = new Xcls_Box8( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
-                       new Xcls_compile_flags( _this );
-                       this.el.append( _this.compile_flags.el );
+                       var child_2 = new Xcls_Box12( _this );
+                       child_2.ref();
+                       this.el.append( child_2.el );
                        new Xcls_vapi_scroll( _this );
                        this.el.append( _this.vapi_scroll.el );
                        new Xcls_vapi_search( _this );
@@ -304,7 +327,35 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_Label8 : Object
+       public class Xcls_Box8 : Object
+       {
+               public Gtk.Box el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_Box8(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 10 );
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       var child_1 = new Xcls_Label9( _this );
+                       child_1.ref();
+                       this.el.append( child_1.el );
+                       new Xcls_compile_flags( _this );
+                       this.el.append( _this.compile_flags.el );
+                       new Xcls_generate_meson( _this );
+                       this.el.append( _this.generate_meson.el );
+               }
+
+               // user defined functions
+       }
+       public class Xcls_Label9 : Object
        {
                public Gtk.Label el;
                private ValaProjectSettingsPopover  _this;
@@ -313,16 +364,16 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Label8(ValaProjectSettingsPopover _owner )
+               public Xcls_Label9(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       this.el = new Gtk.Label( "compile flags" );
+                       this.el = new Gtk.Label( "Compile flags:" );
 
                        // my vars (dec)
 
                        // set gobject values
                        this.el.halign = Gtk.Align.START;
-                       this.el.hexpand = true;
+                       this.el.hexpand = false;
                }
 
                // user defined functions
@@ -361,6 +412,183 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
+       public class Xcls_generate_meson : Object
+       {
+               public Gtk.CheckButton el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_generate_meson(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       _this.generate_meson = this;
+                       this.el = new Gtk.CheckButton();
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.label = "Generate Meson";
+
+                       //listeners
+                       this.el.toggled.connect( ( ) => {
+                       
+                               _this.project.generate_meson = this.el.active;
+                       });
+               }
+
+               // user defined functions
+       }
+
+
+       public class Xcls_Box12 : Object
+       {
+               public Gtk.Box el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_Box12(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 10 );
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       var child_1 = new Xcls_Label13( _this );
+                       child_1.ref();
+                       this.el.append( child_1.el );
+                       new Xcls_version( _this );
+                       this.el.append( _this.version.el );
+                       var child_3 = new Xcls_Label15( _this );
+                       child_3.ref();
+                       this.el.append( child_3.el );
+                       new Xcls_licence( _this );
+                       this.el.append( _this.licence.el );
+               }
+
+               // user defined functions
+       }
+       public class Xcls_Label13 : Object
+       {
+               public Gtk.Label el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_Label13(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       this.el = new Gtk.Label( "Version:" );
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.halign = Gtk.Align.START;
+                       this.el.hexpand = false;
+               }
+
+               // user defined functions
+       }
+
+       public class Xcls_version : Object
+       {
+               public Gtk.Entry el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_version(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       _this.version = this;
+                       this.el = new Gtk.Entry();
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.placeholder_text = "eg. 1.5";
+
+                       //listeners
+                       this.el.changed.connect( () => {
+                           
+                          _this.project.version = this.el.buffer.text;
+                          _this.project.save();
+                       //    _this.project.save();
+                       
+                       });
+               }
+
+               // user defined functions
+       }
+
+       public class Xcls_Label15 : Object
+       {
+               public Gtk.Label el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_Label15(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       this.el = new Gtk.Label( "Licence:" );
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.halign = Gtk.Align.START;
+                       this.el.hexpand = false;
+               }
+
+               // user defined functions
+       }
+
+       public class Xcls_licence : Object
+       {
+               public Gtk.Entry el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_licence(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       _this.licence = this;
+                       this.el = new Gtk.Entry();
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.placeholder_text = "eg. LGPL";
+
+                       //listeners
+                       this.el.changed.connect( () => {
+                           
+                          _this.project.licence = this.el.buffer.text;
+                          _this.project.save();
+                       //    _this.project.save();
+                       
+                       });
+               }
+
+               // user defined functions
+       }
+
+
        public class Xcls_vapi_scroll : Object
        {
                public Gtk.ScrolledWindow el;
@@ -384,13 +612,14 @@ public class ValaProjectSettingsPopover : Object
                        this.el.hexpand = true;
                        this.el.vexpand = true;
                        this.el.hscrollbar_policy = Gtk.PolicyType.AUTOMATIC;
-                       var child_1 = new Xcls_ColumnView11( _this );
+                       var child_1 = new Xcls_ColumnView18( _this );
+                       child_1.ref();
                        this.el.child = child_1.el;
                }
 
                // user defined functions
        }
-       public class Xcls_ColumnView11 : Object
+       public class Xcls_ColumnView18 : Object
        {
                public Gtk.ColumnView el;
                private ValaProjectSettingsPopover  _this;
@@ -399,27 +628,27 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnView11(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnView18(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_NoSelection12( _this );
+                       var child_1 = new Xcls_NoSelection19( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnView( child_1.el );
 
                        // my vars (dec)
 
                        // set gobject values
-                       var child_2 = new Xcls_ColumnViewColumn20( _this );
+                       var child_2 = new Xcls_ColumnViewColumn27( _this );
                        child_2.ref();
                        this.el.append_column ( child_2.el  );
-                       var child_3 = new Xcls_ColumnViewColumn22( _this );
+                       var child_3 = new Xcls_ColumnViewColumn29( _this );
                        child_3.ref();
                        this.el.append_column ( child_3.el  );
                }
 
                // user defined functions
        }
-       public class Xcls_NoSelection12 : Object
+       public class Xcls_NoSelection19 : Object
        {
                public Gtk.NoSelection el;
                private ValaProjectSettingsPopover  _this;
@@ -428,10 +657,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_NoSelection12(ValaProjectSettingsPopover _owner )
+               public Xcls_NoSelection19(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_FilterListModel13( _this );
+                       var child_1 = new Xcls_FilterListModel20( _this );
                        child_1.ref();
                        this.el = new Gtk.NoSelection( child_1.el );
 
@@ -442,7 +671,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_FilterListModel13 : Object
+       public class Xcls_FilterListModel20 : Object
        {
                public Gtk.FilterListModel el;
                private ValaProjectSettingsPopover  _this;
@@ -451,10 +680,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_FilterListModel13(ValaProjectSettingsPopover _owner )
+               public Xcls_FilterListModel20(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_SortListModel14( _this );
+                       var child_1 = new Xcls_SortListModel21( _this );
                        child_1.ref();
                        new Xcls_vapi_filter( _this );
                        this.el = new Gtk.FilterListModel( child_1.el, _this.vapi_filter.el );
@@ -466,7 +695,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SortListModel14 : Object
+       public class Xcls_SortListModel21 : Object
        {
                public Gtk.SortListModel el;
                private ValaProjectSettingsPopover  _this;
@@ -475,11 +704,11 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SortListModel14(ValaProjectSettingsPopover _owner )
+               public Xcls_SortListModel21(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        new Xcls_vapimodel( _this );
-                       var child_2 = new Xcls_StringSorter16( _this );
+                       var child_2 = new Xcls_StringSorter23( _this );
                        child_2.ref();
                        this.el = new Gtk.SortListModel( _this.vapimodel.el, child_2.el );
 
@@ -513,7 +742,7 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
-       public class Xcls_StringSorter16 : Object
+       public class Xcls_StringSorter23 : Object
        {
                public Gtk.StringSorter el;
                private ValaProjectSettingsPopover  _this;
@@ -522,10 +751,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_StringSorter16(ValaProjectSettingsPopover _owner )
+               public Xcls_StringSorter23(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_PropertyExpression17( _this );
+                       var child_1 = new Xcls_PropertyExpression24( _this );
                        child_1.ref();
                        this.el = new Gtk.StringSorter( child_1.el );
 
@@ -536,7 +765,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_PropertyExpression17 : Object
+       public class Xcls_PropertyExpression24 : Object
        {
                public Gtk.PropertyExpression el;
                private ValaProjectSettingsPopover  _this;
@@ -545,7 +774,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_PropertyExpression17(ValaProjectSettingsPopover _owner )
+               public Xcls_PropertyExpression24(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.PropertyExpression( typeof(Project.VapiSelection), null, "sortkey" );
@@ -573,7 +802,7 @@ public class ValaProjectSettingsPopover : Object
                {
                        _this = _owner;
                        _this.vapi_filter = this;
-                       var child_1 = new Xcls_PropertyExpression19( _this );
+                       var child_1 = new Xcls_PropertyExpression26( _this );
                        child_1.ref();
                        this.el = new Gtk.StringFilter( child_1.el );
 
@@ -584,7 +813,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_PropertyExpression19 : Object
+       public class Xcls_PropertyExpression26 : Object
        {
                public Gtk.PropertyExpression el;
                private ValaProjectSettingsPopover  _this;
@@ -593,7 +822,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_PropertyExpression19(ValaProjectSettingsPopover _owner )
+               public Xcls_PropertyExpression26(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.PropertyExpression( typeof(Project.VapiSelection), null, "sortkey" );
@@ -609,7 +838,7 @@ public class ValaProjectSettingsPopover : Object
 
 
 
-       public class Xcls_ColumnViewColumn20 : Object
+       public class Xcls_ColumnViewColumn27 : Object
        {
                public Gtk.ColumnViewColumn el;
                private ValaProjectSettingsPopover  _this;
@@ -618,10 +847,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnViewColumn20(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnViewColumn27(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_SignalListItemFactory21( _this );
+                       var child_1 = new Xcls_SignalListItemFactory28( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnViewColumn( "Vapi Package", child_1.el );
 
@@ -633,7 +862,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SignalListItemFactory21 : Object
+       public class Xcls_SignalListItemFactory28 : Object
        {
                public Gtk.SignalListItemFactory el;
                private ValaProjectSettingsPopover  _this;
@@ -642,7 +871,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SignalListItemFactory21(ValaProjectSettingsPopover _owner )
+               public Xcls_SignalListItemFactory28(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.SignalListItemFactory();
@@ -681,7 +910,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_ColumnViewColumn22 : Object
+       public class Xcls_ColumnViewColumn29 : Object
        {
                public Gtk.ColumnViewColumn el;
                private ValaProjectSettingsPopover  _this;
@@ -690,10 +919,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnViewColumn22(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnViewColumn29(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_SignalListItemFactory23( _this );
+                       var child_1 = new Xcls_SignalListItemFactory30( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnViewColumn( "use", child_1.el );
 
@@ -704,7 +933,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SignalListItemFactory23 : Object
+       public class Xcls_SignalListItemFactory30 : Object
        {
                public Gtk.SignalListItemFactory el;
                private ValaProjectSettingsPopover  _this;
@@ -713,7 +942,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SignalListItemFactory23(ValaProjectSettingsPopover _owner )
+               public Xcls_SignalListItemFactory30(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.SignalListItemFactory();
@@ -795,7 +1024,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_Paned25 : Object
+       public class Xcls_Paned32 : Object
        {
                public Gtk.Paned el;
                private ValaProjectSettingsPopover  _this;
@@ -804,7 +1033,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Paned25(ValaProjectSettingsPopover _owner )
+               public Xcls_Paned32(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Paned( Gtk.Orientation.HORIZONTAL );
@@ -816,7 +1045,8 @@ public class ValaProjectSettingsPopover : Object
                        this.el.position = 300;
                        new Xcls_set_vbox( _this );
                        this.el.set_end_child ( _this.set_vbox.el  );
-                       var child_2 = new Xcls_Box42( _this );
+                       var child_2 = new Xcls_Box49( _this );
+                       child_2.ref();
                        this.el.start_child = child_2.el;
                }
 
@@ -841,14 +1071,14 @@ public class ValaProjectSettingsPopover : Object
 
                        // set gobject values
                        this.el.homogeneous = false;
-                       var child_1 = new Xcls_ScrolledWindow27( _this );
+                       var child_1 = new Xcls_ScrolledWindow34( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
                }
 
                // user defined functions
        }
-       public class Xcls_ScrolledWindow27 : Object
+       public class Xcls_ScrolledWindow34 : Object
        {
                public Gtk.ScrolledWindow el;
                private ValaProjectSettingsPopover  _this;
@@ -857,7 +1087,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ScrolledWindow27(ValaProjectSettingsPopover _owner )
+               public Xcls_ScrolledWindow34(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.ScrolledWindow();
@@ -893,7 +1123,7 @@ public class ValaProjectSettingsPopover : Object
                        // set gobject values
                        new Xcls_name( _this );
                        this.el.append_column ( _this.name.el  );
-                       var child_3 = new Xcls_ColumnViewColumn40( _this );
+                       var child_3 = new Xcls_ColumnViewColumn47( _this );
                        child_3.ref();
                        this.el.append_column ( child_3.el  );
                }
@@ -913,7 +1143,7 @@ public class ValaProjectSettingsPopover : Object
                {
                        _this = _owner;
                        _this.treeselmodel = this;
-                       var child_1 = new Xcls_FilterListModel30( _this );
+                       var child_1 = new Xcls_FilterListModel37( _this );
                        child_1.ref();
                        this.el = new Gtk.SingleSelection( child_1.el );
 
@@ -924,7 +1154,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_FilterListModel30 : Object
+       public class Xcls_FilterListModel37 : Object
        {
                public Gtk.FilterListModel el;
                private ValaProjectSettingsPopover  _this;
@@ -933,11 +1163,11 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_FilterListModel30(ValaProjectSettingsPopover _owner )
+               public Xcls_FilterListModel37(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        new Xcls_treelistsort( _this );
-                       var child_2 = new Xcls_CustomFilter37( _this );
+                       var child_2 = new Xcls_CustomFilter44( _this );
                        child_2.ref();
                        this.el = new Gtk.FilterListModel( _this.treelistsort.el, child_2.el );
 
@@ -962,7 +1192,7 @@ public class ValaProjectSettingsPopover : Object
                        _this = _owner;
                        _this.treelistsort = this;
                        new Xcls_treelistmodel( _this );
-                       var child_2 = new Xcls_TreeListRowSorter34( _this );
+                       var child_2 = new Xcls_TreeListRowSorter41( _this );
                        child_2.ref();
                        this.el = new Gtk.SortListModel( _this.treelistmodel.el, child_2.el );
 
@@ -1029,7 +1259,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_TreeListRowSorter34 : Object
+       public class Xcls_TreeListRowSorter41 : Object
        {
                public Gtk.TreeListRowSorter el;
                private ValaProjectSettingsPopover  _this;
@@ -1038,10 +1268,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_TreeListRowSorter34(ValaProjectSettingsPopover _owner )
+               public Xcls_TreeListRowSorter41(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_StringSorter35( _this );
+                       var child_1 = new Xcls_StringSorter42( _this );
                        child_1.ref();
                        this.el = new Gtk.TreeListRowSorter( child_1.el );
 
@@ -1052,7 +1282,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_StringSorter35 : Object
+       public class Xcls_StringSorter42 : Object
        {
                public Gtk.StringSorter el;
                private ValaProjectSettingsPopover  _this;
@@ -1061,10 +1291,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_StringSorter35(ValaProjectSettingsPopover _owner )
+               public Xcls_StringSorter42(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_PropertyExpression36( _this );
+                       var child_1 = new Xcls_PropertyExpression43( _this );
                        child_1.ref();
                        this.el = new Gtk.StringSorter( child_1.el );
 
@@ -1075,7 +1305,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_PropertyExpression36 : Object
+       public class Xcls_PropertyExpression43 : Object
        {
                public Gtk.PropertyExpression el;
                private ValaProjectSettingsPopover  _this;
@@ -1084,7 +1314,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_PropertyExpression36(ValaProjectSettingsPopover _owner )
+               public Xcls_PropertyExpression43(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.PropertyExpression( typeof(JsRender.JsRender), null, "name" );
@@ -1100,7 +1330,7 @@ public class ValaProjectSettingsPopover : Object
 
 
 
-       public class Xcls_CustomFilter37 : Object
+       public class Xcls_CustomFilter44 : Object
        {
                public Gtk.CustomFilter el;
                private ValaProjectSettingsPopover  _this;
@@ -1109,7 +1339,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_CustomFilter37(ValaProjectSettingsPopover _owner )
+               public Xcls_CustomFilter44(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.CustomFilter( (item) => { 
@@ -1161,7 +1391,7 @@ public class ValaProjectSettingsPopover : Object
                {
                        _this = _owner;
                        _this.name = this;
-                       var child_1 = new Xcls_SignalListItemFactory39( _this );
+                       var child_1 = new Xcls_SignalListItemFactory46( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnViewColumn( "Other Files", child_1.el );
 
@@ -1185,7 +1415,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SignalListItemFactory39 : Object
+       public class Xcls_SignalListItemFactory46 : Object
        {
                public Gtk.SignalListItemFactory el;
                private ValaProjectSettingsPopover  _this;
@@ -1194,7 +1424,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SignalListItemFactory39(ValaProjectSettingsPopover _owner )
+               public Xcls_SignalListItemFactory46(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.SignalListItemFactory();
@@ -1260,7 +1490,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_ColumnViewColumn40 : Object
+       public class Xcls_ColumnViewColumn47 : Object
        {
                public Gtk.ColumnViewColumn el;
                private ValaProjectSettingsPopover  _this;
@@ -1269,10 +1499,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnViewColumn40(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnViewColumn47(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_SignalListItemFactory41( _this );
+                       var child_1 = new Xcls_SignalListItemFactory48( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnViewColumn( "use", child_1.el );
 
@@ -1283,7 +1513,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SignalListItemFactory41 : Object
+       public class Xcls_SignalListItemFactory48 : Object
        {
                public Gtk.SignalListItemFactory el;
                private ValaProjectSettingsPopover  _this;
@@ -1292,7 +1522,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SignalListItemFactory41(ValaProjectSettingsPopover _owner )
+               public Xcls_SignalListItemFactory48(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.SignalListItemFactory();
@@ -1350,7 +1580,7 @@ public class ValaProjectSettingsPopover : Object
 
 
 
-       public class Xcls_Box42 : Object
+       public class Xcls_Box49 : Object
        {
                public Gtk.Box el;
                private ValaProjectSettingsPopover  _this;
@@ -1359,7 +1589,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Box42(ValaProjectSettingsPopover _owner )
+               public Xcls_Box49(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 );
@@ -1367,10 +1597,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (dec)
 
                        // set gobject values
-                       var child_1 = new Xcls_Box43( _this );
+                       var child_1 = new Xcls_Box50( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
-                       var child_2 = new Xcls_ScrolledWindow46( _this );
+                       var child_2 = new Xcls_ScrolledWindow53( _this );
                        child_2.ref();
                        this.el.append( child_2.el );
                        new Xcls_set_vboxb( _this );
@@ -1379,7 +1609,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_Box43 : Object
+       public class Xcls_Box50 : Object
        {
                public Gtk.Box el;
                private ValaProjectSettingsPopover  _this;
@@ -1388,7 +1618,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Box43(ValaProjectSettingsPopover _owner )
+               public Xcls_Box50(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
@@ -1397,17 +1627,17 @@ public class ValaProjectSettingsPopover : Object
 
                        // set gobject values
                        this.el.hexpand = true;
-                       var child_1 = new Xcls_Button44( _this );
+                       var child_1 = new Xcls_Button51( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
-                       var child_2 = new Xcls_Button45( _this );
+                       var child_2 = new Xcls_Button52( _this );
                        child_2.ref();
                        this.el.append( child_2.el );
                }
 
                // user defined functions
        }
-       public class Xcls_Button44 : Object
+       public class Xcls_Button51 : Object
        {
                public Gtk.Button el;
                private ValaProjectSettingsPopover  _this;
@@ -1416,7 +1646,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Button44(ValaProjectSettingsPopover _owner )
+               public Xcls_Button51(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Button();
@@ -1454,7 +1684,7 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
-       public class Xcls_Button45 : Object
+       public class Xcls_Button52 : Object
        {
                public Gtk.Button el;
                private ValaProjectSettingsPopover  _this;
@@ -1463,7 +1693,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Button45(ValaProjectSettingsPopover _owner )
+               public Xcls_Button52(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Button();
@@ -1499,7 +1729,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_ScrolledWindow46 : Object
+       public class Xcls_ScrolledWindow53 : Object
        {
                public Gtk.ScrolledWindow el;
                private ValaProjectSettingsPopover  _this;
@@ -1508,7 +1738,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ScrolledWindow46(ValaProjectSettingsPopover _owner )
+               public Xcls_ScrolledWindow53(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.ScrolledWindow();
@@ -1517,7 +1747,8 @@ public class ValaProjectSettingsPopover : Object
 
                        // set gobject values
                        this.el.vexpand = true;
-                       var child_1 = new Xcls_ColumnView47( _this );
+                       var child_1 = new Xcls_ColumnView54( _this );
+                       child_1.ref();
                        this.el.child = child_1.el;
 
                        // init method
@@ -1530,7 +1761,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_ColumnView47 : Object
+       public class Xcls_ColumnView54 : Object
        {
                public Gtk.ColumnView el;
                private ValaProjectSettingsPopover  _this;
@@ -1539,7 +1770,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnView47(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnView54(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        new Xcls_target_sel( _this );
@@ -1548,7 +1779,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (dec)
 
                        // set gobject values
-                       var child_2 = new Xcls_ColumnViewColumn50( _this );
+                       var child_2 = new Xcls_ColumnViewColumn57( _this );
                        child_2.ref();
                        this.el.append_column ( child_2.el  );
                }
@@ -1630,7 +1861,7 @@ public class ValaProjectSettingsPopover : Object
                         GLib.debug("Set name to %s", cg.name);
                         
                        _this.build_name.el.buffer.set_text(cg.name.data);
-                
+                       _this.build_as_library.el.active = cg.is_library;
                 
                        _this.build_execute_args.el.buffer.set_text(  cg.execute_args.data );
                 
@@ -1660,7 +1891,7 @@ public class ValaProjectSettingsPopover : Object
        }
 
 
-       public class Xcls_ColumnViewColumn50 : Object
+       public class Xcls_ColumnViewColumn57 : Object
        {
                public Gtk.ColumnViewColumn el;
                private ValaProjectSettingsPopover  _this;
@@ -1669,10 +1900,10 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_ColumnViewColumn50(ValaProjectSettingsPopover _owner )
+               public Xcls_ColumnViewColumn57(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
-                       var child_1 = new Xcls_SignalListItemFactory51( _this );
+                       var child_1 = new Xcls_SignalListItemFactory58( _this );
                        child_1.ref();
                        this.el = new Gtk.ColumnViewColumn( "Build Target", child_1.el );
 
@@ -1684,7 +1915,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_SignalListItemFactory51 : Object
+       public class Xcls_SignalListItemFactory58 : Object
        {
                public Gtk.SignalListItemFactory el;
                private ValaProjectSettingsPopover  _this;
@@ -1693,7 +1924,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_SignalListItemFactory51(ValaProjectSettingsPopover _owner )
+               public Xcls_SignalListItemFactory58(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.SignalListItemFactory();
@@ -1752,21 +1983,23 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (dec)
 
                        // set gobject values
-                       var child_1 = new Xcls_Label53( _this );
+                       var child_1 = new Xcls_Label60( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
                        new Xcls_build_name( _this );
                        this.el.append( _this.build_name.el );
-                       var child_3 = new Xcls_Label55( _this );
+                       var child_3 = new Xcls_Label62( _this );
                        child_3.ref();
                        this.el.append( child_3.el );
                        new Xcls_build_execute_args( _this );
                        this.el.append( _this.build_execute_args.el );
+                       new Xcls_build_as_library( _this );
+                       this.el.append( _this.build_as_library.el );
                }
 
                // user defined functions
        }
-       public class Xcls_Label53 : Object
+       public class Xcls_Label60 : Object
        {
                public Gtk.Label el;
                private ValaProjectSettingsPopover  _this;
@@ -1775,7 +2008,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Label53(ValaProjectSettingsPopover _owner )
+               public Xcls_Label60(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Label( "Build Name (executable name)" );
@@ -1879,7 +2112,7 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
-       public class Xcls_Label55 : Object
+       public class Xcls_Label62 : Object
        {
                public Gtk.Label el;
                private ValaProjectSettingsPopover  _this;
@@ -1888,7 +2121,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Label55(ValaProjectSettingsPopover _owner )
+               public Xcls_Label62(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Label( "test argments - when run after a build" );
@@ -1934,11 +2167,44 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
+       public class Xcls_build_as_library : Object
+       {
+               public Gtk.CheckButton el;
+               private ValaProjectSettingsPopover  _this;
+
+
+                       // my vars (def)
+
+               // ctor
+               public Xcls_build_as_library(ValaProjectSettingsPopover _owner )
+               {
+                       _this = _owner;
+                       _this.build_as_library = this;
+                       this.el = new Gtk.CheckButton();
+
+                       // my vars (dec)
+
+                       // set gobject values
+                       this.el.label = "build as library";
+
+                       //listeners
+                       this.el.notify["active"].connect( () => {
+                           if (_this.selected_target == null) {
+                               return;
+                           }
+                           _this.selected_target.is_library = this.el.active;
+                           
+                       });
+               }
+
+               // user defined functions
+       }
+
 
 
 
 
-       public class Xcls_Box57 : Object
+       public class Xcls_Box65 : Object
        {
                public Gtk.Box el;
                private ValaProjectSettingsPopover  _this;
@@ -1947,7 +2213,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Box57(ValaProjectSettingsPopover _owner )
+               public Xcls_Box65(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 );
@@ -1960,10 +2226,10 @@ public class ValaProjectSettingsPopover : Object
                        this.el.hexpand = true;
                        this.el.margin_bottom = 4;
                        this.el.margin_top = 4;
-                       var child_1 = new Xcls_Button58( _this );
+                       var child_1 = new Xcls_Button66( _this );
                        child_1.ref();
                        this.el.append( child_1.el );
-                       var child_2 = new Xcls_Label59( _this );
+                       var child_2 = new Xcls_Label67( _this );
                        child_2.ref();
                        this.el.append( child_2.el );
                        new Xcls_save_btn( _this );
@@ -1972,7 +2238,7 @@ public class ValaProjectSettingsPopover : Object
 
                // user defined functions
        }
-       public class Xcls_Button58 : Object
+       public class Xcls_Button66 : Object
        {
                public Gtk.Button el;
                private ValaProjectSettingsPopover  _this;
@@ -1981,7 +2247,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Button58(ValaProjectSettingsPopover _owner )
+               public Xcls_Button66(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Button();
@@ -2002,7 +2268,7 @@ public class ValaProjectSettingsPopover : Object
                // user defined functions
        }
 
-       public class Xcls_Label59 : Object
+       public class Xcls_Label67 : Object
        {
                public Gtk.Label el;
                private ValaProjectSettingsPopover  _this;
@@ -2011,7 +2277,7 @@ public class ValaProjectSettingsPopover : Object
                        // my vars (def)
 
                // ctor
-               public Xcls_Label59(ValaProjectSettingsPopover _owner )
+               public Xcls_Label67(ValaProjectSettingsPopover _owner )
                {
                        _this = _owner;
                        this.el = new Gtk.Label( "" );