From 94232867a523ea35d2f0493a878f0624392c1828 Mon Sep 17 00:00:00 2001 From: Alan Knowles Date: Sun, 25 Feb 2024 16:45:54 +0800 Subject: [PATCH] Fix #8048 - context provider start work - fix meson build flag - project settings dialg - loading indicator and idle looping --- .roobuilder.jcfg | 4 +- meson.build | 3 +- resources/gresources.xml | 18 +- src/Builder4/Editor.bjs | 5 +- src/Builder4/Editor.vala | 5 +- src/Builder4/ValaProjectSettingsPopover.bjs | 35 ++- src/Builder4/ValaProjectSettingsPopover.vala | 257 ++++++++++--------- src/Palete/HoverProvider.vala | 35 +++ src/Project/Gtk.vala | 5 +- src/Project/Project.vala | 8 +- src/vapi/gtksourceview-5.vapi | 2 +- 11 files changed, 225 insertions(+), 152 deletions(-) create mode 100644 src/Palete/HoverProvider.vala diff --git a/.roobuilder.jcfg b/.roobuilder.jcfg index 9e4dbd687..7b18131e9 100644 --- a/.roobuilder.jcfg +++ b/.roobuilder.jcfg @@ -70,13 +70,15 @@ "src/JsRender/NodeToValaExtended.vala", "src/JsRender/NodeToValaWrapped.vala", "src/Builder4/MainWindow.bjs", - "src/Settings.vala" + "src/Settings.vala", + "src/Palete/HoverProvider.vala" ] } ], "compile_flags" : "", "version" : "5.0.4", "licence" : "LGPL", + "generate_meson" : true, "packages" : [ "gtk4", "gee-0.8", diff --git a/meson.build b/meson.build index 4c54fc39d..8ed140636 100644 --- a/meson.build +++ b/meson.build @@ -79,7 +79,7 @@ gnome.post_install(gtk_update_icon_cache : true) roobuilder_resources = gnome.compile_resources( 'roobuilder-resources', 'resources/gresources.xml', - source_dir: [ 'resources/glade-icons', 'resources/html', 'resources/data', 'resources/css', 'resources/Editors' ], + source_dir: [ 'resources/Editors', 'resources/css', 'resources/data', 'resources/glade-icons', 'resources/html' ], c_name: 'roobuilder_resources' ) @@ -156,6 +156,7 @@ roobuilder_src = files([ 'src/JsRender/NodeToValaWrapped.vala', 'src/Builder4/MainWindow.vala', 'src/Settings.vala', + 'src/Palete/HoverProvider.vala', ]) diff --git a/resources/gresources.xml b/resources/gresources.xml index ae81543db..64d91e6e8 100644 --- a/resources/gresources.xml +++ b/resources/gresources.xml @@ -1,5 +1,13 @@ - + + + + roobuilder.css + + + roodata.json + + widget-gtk-aboutdialog.png widget-gtk-accelgroup.png widget-gtk-accellabel.png @@ -162,12 +170,4 @@ roo.builder.html roo.builder.js - - roodata.json - - - roobuilder.css - - - diff --git a/src/Builder4/Editor.bjs b/src/Builder4/Editor.bjs index f52fdfbfd..18efba575 100644 --- a/src/Builder4/Editor.bjs +++ b/src/Builder4/Editor.bjs @@ -133,7 +133,10 @@ "this.el.completion.add_provider(", "\tnew Palete.CompletionProvider(_this)", ");", - " ", + " ", + "var hover = this.el.get_hover();", + "hover.add_provider(new Palete.HoverProvider());", + "", "//this.el.completion.unblock_interactive();", "this.el.completion.select_on_show = true; // select", "//this.el.completion.remember_info_visibility\t = true;", diff --git a/src/Builder4/Editor.vala b/src/Builder4/Editor.vala index 27baccb54..a893ee681 100644 --- a/src/Builder4/Editor.vala +++ b/src/Builder4/Editor.vala @@ -654,7 +654,10 @@ public class Editor : Object this.el.completion.add_provider( new Palete.CompletionProvider(_this) ); - + + var hover = this.el.get_hover(); + hover.add_provider(new Palete.HoverProvider()); + //this.el.completion.unblock_interactive(); this.el.completion.select_on_show = true; // select //this.el.completion.remember_info_visibility = true; diff --git a/src/Builder4/ValaProjectSettingsPopover.bjs b/src/Builder4/ValaProjectSettingsPopover.bjs index 9299b4048..6ec2fe848 100644 --- a/src/Builder4/ValaProjectSettingsPopover.bjs +++ b/src/Builder4/ValaProjectSettingsPopover.bjs @@ -91,7 +91,7 @@ "$ xns" : "Gtk", "id" : "generate_meson", "listeners" : { - "activate" : [ + "toggled" : [ "( ) => {", "", "\t_this.project.generate_meson = this.el.active;", @@ -1086,6 +1086,8 @@ " //print(\"ValaProjectSettings show\\n\");", " this.doneObj = doneObj;", " this.project= project;", + " ", + " this.project.loading = true;", "\t ", " this.compile_flags.el.buffer.set_text(", " \tproject.compile_flags.data", @@ -1096,23 +1098,32 @@ "\t this.licence.el.buffer.set_text(", " \tproject.licence.data", "\t); ", - " project.loadVapiIntoStore(_this.vapimodel.el);", - " GLib.Timeout.add(500, () => {", - " \t\t this.vapi_scroll.el.vadjustment.value = 0;\t ", - "\t return false;", - " });", - " ", + "\t", + "\t", + "\t", + "\tGLib.Idle.add(() => {", + "\t\tproject.loadVapiIntoStore(_this.vapimodel.el);", + "\t\t GLib.Timeout.add(500, () => {", + "\t \t\t this.vapi_scroll.el.vadjustment.value = 0;\t ", + "\t\t\t return false;", + "\t \t});", + " \t \tproject.loadTargetsIntoStore(this.target_model.el);", + " \t\t_this.target_sel.el.selected = Gtk.INVALID_LIST_POSITION;", + "\t\t_this.target_sel.selectTarget(null);", + "\t\t this.project.loading = false;", + "\t \treturn false;", + " \t});", + "\t\t", " this.generate_meson.el.active = this.project.generate_meson;", " \t", - " \tproject.loadTargetsIntoStore(this.target_model.el);", + "", "\t", - " \t_this.target_sel.el.selected = Gtk.INVALID_LIST_POSITION;", - "\t_this.target_sel.selectTarget(null);", + " ", "//\tGtk.Allocation rect;", "\t//btn.get_allocation(out rect);", " // this.el.set_pointing_to(rect);", - " this.el.application = pwin.application; // ??? make it modal?", - "\t this.el.set_transient_for(pwin);", + " \tthis.el.application = pwin.application; // ??? make it modal?", + "\tthis.el.set_transient_for(pwin);", "\t ", "\t// window + header?", "\t// print(\"SHOWALL - POPIP\\n\");", diff --git a/src/Builder4/ValaProjectSettingsPopover.vala b/src/Builder4/ValaProjectSettingsPopover.vala index 90f89f6e4..ef7c1e921 100644 --- a/src/Builder4/ValaProjectSettingsPopover.vala +++ b/src/Builder4/ValaProjectSettingsPopover.vala @@ -92,6 +92,8 @@ 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 @@ -102,23 +104,32 @@ public class ValaProjectSettingsPopover : Object this.licence.el.buffer.set_text( project.licence.data ); - project.loadVapiIntoStore(_this.vapimodel.el); - GLib.Timeout.add(500, () => { - this.vapi_scroll.el.vadjustment.value = 0; - return false; - }); - + + + + 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"); @@ -200,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_Box63( _this ); + var child_2 = new Xcls_Box65( _this ); child_2.ref(); this.el.append( child_2.el ); } @@ -231,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_Paned30( _this ); + var child_4 = new Xcls_Paned32( _this ); child_4.ref(); this.el.append_page ( child_4.el , _this.label_targets.el ); } @@ -305,7 +316,7 @@ public class ValaProjectSettingsPopover : Object var child_1 = new Xcls_Box8( _this ); child_1.ref(); this.el.append( child_1.el ); - var child_2 = new Xcls_Box102( _this ); + var child_2 = new Xcls_Box12( _this ); child_2.ref(); this.el.append( child_2.el ); new Xcls_vapi_scroll( _this ); @@ -422,7 +433,7 @@ public class ValaProjectSettingsPopover : Object this.el.label = "Generate Meson"; //listeners - this.el.activate.connect( ( ) => { + this.el.toggled.connect( ( ) => { _this.project.generate_meson = this.el.active; }); @@ -432,7 +443,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_Box102 : Object + public class Xcls_Box12 : Object { public Gtk.Box el; private ValaProjectSettingsPopover _this; @@ -441,7 +452,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Box102(ValaProjectSettingsPopover _owner ) + public Xcls_Box12(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 10 ); @@ -449,12 +460,12 @@ public class ValaProjectSettingsPopover : Object // my vars (dec) // set gobject values - var child_1 = new Xcls_Label105( _this ); + 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_Label107( _this ); + var child_3 = new Xcls_Label15( _this ); child_3.ref(); this.el.append( child_3.el ); new Xcls_licence( _this ); @@ -463,7 +474,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Label105 : Object + public class Xcls_Label13 : Object { public Gtk.Label el; private ValaProjectSettingsPopover _this; @@ -472,7 +483,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Label105(ValaProjectSettingsPopover _owner ) + public Xcls_Label13(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Label( "Version:" ); @@ -520,7 +531,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Label107 : Object + public class Xcls_Label15 : Object { public Gtk.Label el; private ValaProjectSettingsPopover _this; @@ -529,7 +540,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Label107(ValaProjectSettingsPopover _owner ) + public Xcls_Label15(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Label( "Licence:" ); @@ -601,14 +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_ColumnView16( _this ); + var child_1 = new Xcls_ColumnView18( _this ); child_1.ref(); this.el.child = child_1.el; } // user defined functions } - public class Xcls_ColumnView16 : Object + public class Xcls_ColumnView18 : Object { public Gtk.ColumnView el; private ValaProjectSettingsPopover _this; @@ -617,27 +628,27 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnView16(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnView18(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_NoSelection17( _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_ColumnViewColumn25( _this ); + var child_2 = new Xcls_ColumnViewColumn27( _this ); child_2.ref(); this.el.append_column ( child_2.el ); - var child_3 = new Xcls_ColumnViewColumn27( _this ); + var child_3 = new Xcls_ColumnViewColumn29( _this ); child_3.ref(); this.el.append_column ( child_3.el ); } // user defined functions } - public class Xcls_NoSelection17 : Object + public class Xcls_NoSelection19 : Object { public Gtk.NoSelection el; private ValaProjectSettingsPopover _this; @@ -646,10 +657,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_NoSelection17(ValaProjectSettingsPopover _owner ) + public Xcls_NoSelection19(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_FilterListModel18( _this ); + var child_1 = new Xcls_FilterListModel20( _this ); child_1.ref(); this.el = new Gtk.NoSelection( child_1.el ); @@ -660,7 +671,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_FilterListModel18 : Object + public class Xcls_FilterListModel20 : Object { public Gtk.FilterListModel el; private ValaProjectSettingsPopover _this; @@ -669,10 +680,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_FilterListModel18(ValaProjectSettingsPopover _owner ) + public Xcls_FilterListModel20(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_SortListModel19( _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 ); @@ -684,7 +695,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SortListModel19 : Object + public class Xcls_SortListModel21 : Object { public Gtk.SortListModel el; private ValaProjectSettingsPopover _this; @@ -693,11 +704,11 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SortListModel19(ValaProjectSettingsPopover _owner ) + public Xcls_SortListModel21(ValaProjectSettingsPopover _owner ) { _this = _owner; new Xcls_vapimodel( _this ); - var child_2 = new Xcls_StringSorter21( _this ); + var child_2 = new Xcls_StringSorter23( _this ); child_2.ref(); this.el = new Gtk.SortListModel( _this.vapimodel.el, child_2.el ); @@ -731,7 +742,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_StringSorter21 : Object + public class Xcls_StringSorter23 : Object { public Gtk.StringSorter el; private ValaProjectSettingsPopover _this; @@ -740,10 +751,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_StringSorter21(ValaProjectSettingsPopover _owner ) + public Xcls_StringSorter23(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_PropertyExpression22( _this ); + var child_1 = new Xcls_PropertyExpression24( _this ); child_1.ref(); this.el = new Gtk.StringSorter( child_1.el ); @@ -754,7 +765,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_PropertyExpression22 : Object + public class Xcls_PropertyExpression24 : Object { public Gtk.PropertyExpression el; private ValaProjectSettingsPopover _this; @@ -763,7 +774,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_PropertyExpression22(ValaProjectSettingsPopover _owner ) + public Xcls_PropertyExpression24(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.PropertyExpression( typeof(Project.VapiSelection), null, "sortkey" ); @@ -791,7 +802,7 @@ public class ValaProjectSettingsPopover : Object { _this = _owner; _this.vapi_filter = this; - var child_1 = new Xcls_PropertyExpression24( _this ); + var child_1 = new Xcls_PropertyExpression26( _this ); child_1.ref(); this.el = new Gtk.StringFilter( child_1.el ); @@ -802,7 +813,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_PropertyExpression24 : Object + public class Xcls_PropertyExpression26 : Object { public Gtk.PropertyExpression el; private ValaProjectSettingsPopover _this; @@ -811,7 +822,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_PropertyExpression24(ValaProjectSettingsPopover _owner ) + public Xcls_PropertyExpression26(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.PropertyExpression( typeof(Project.VapiSelection), null, "sortkey" ); @@ -827,7 +838,7 @@ public class ValaProjectSettingsPopover : Object - public class Xcls_ColumnViewColumn25 : Object + public class Xcls_ColumnViewColumn27 : Object { public Gtk.ColumnViewColumn el; private ValaProjectSettingsPopover _this; @@ -836,10 +847,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnViewColumn25(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnViewColumn27(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_SignalListItemFactory26( _this ); + var child_1 = new Xcls_SignalListItemFactory28( _this ); child_1.ref(); this.el = new Gtk.ColumnViewColumn( "Vapi Package", child_1.el ); @@ -851,7 +862,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SignalListItemFactory26 : Object + public class Xcls_SignalListItemFactory28 : Object { public Gtk.SignalListItemFactory el; private ValaProjectSettingsPopover _this; @@ -860,7 +871,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SignalListItemFactory26(ValaProjectSettingsPopover _owner ) + public Xcls_SignalListItemFactory28(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.SignalListItemFactory(); @@ -899,7 +910,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_ColumnViewColumn27 : Object + public class Xcls_ColumnViewColumn29 : Object { public Gtk.ColumnViewColumn el; private ValaProjectSettingsPopover _this; @@ -908,10 +919,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnViewColumn27(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnViewColumn29(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_SignalListItemFactory28( _this ); + var child_1 = new Xcls_SignalListItemFactory30( _this ); child_1.ref(); this.el = new Gtk.ColumnViewColumn( "use", child_1.el ); @@ -922,7 +933,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SignalListItemFactory28 : Object + public class Xcls_SignalListItemFactory30 : Object { public Gtk.SignalListItemFactory el; private ValaProjectSettingsPopover _this; @@ -931,7 +942,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SignalListItemFactory28(ValaProjectSettingsPopover _owner ) + public Xcls_SignalListItemFactory30(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.SignalListItemFactory(); @@ -1013,7 +1024,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_Paned30 : Object + public class Xcls_Paned32 : Object { public Gtk.Paned el; private ValaProjectSettingsPopover _this; @@ -1022,7 +1033,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Paned30(ValaProjectSettingsPopover _owner ) + public Xcls_Paned32(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Paned( Gtk.Orientation.HORIZONTAL ); @@ -1034,7 +1045,7 @@ 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_Box47( _this ); + var child_2 = new Xcls_Box49( _this ); child_2.ref(); this.el.start_child = child_2.el; } @@ -1060,14 +1071,14 @@ public class ValaProjectSettingsPopover : Object // set gobject values this.el.homogeneous = false; - var child_1 = new Xcls_ScrolledWindow32( _this ); + var child_1 = new Xcls_ScrolledWindow34( _this ); child_1.ref(); this.el.append( child_1.el ); } // user defined functions } - public class Xcls_ScrolledWindow32 : Object + public class Xcls_ScrolledWindow34 : Object { public Gtk.ScrolledWindow el; private ValaProjectSettingsPopover _this; @@ -1076,7 +1087,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ScrolledWindow32(ValaProjectSettingsPopover _owner ) + public Xcls_ScrolledWindow34(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.ScrolledWindow(); @@ -1112,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_ColumnViewColumn45( _this ); + var child_3 = new Xcls_ColumnViewColumn47( _this ); child_3.ref(); this.el.append_column ( child_3.el ); } @@ -1132,7 +1143,7 @@ public class ValaProjectSettingsPopover : Object { _this = _owner; _this.treeselmodel = this; - var child_1 = new Xcls_FilterListModel35( _this ); + var child_1 = new Xcls_FilterListModel37( _this ); child_1.ref(); this.el = new Gtk.SingleSelection( child_1.el ); @@ -1143,7 +1154,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_FilterListModel35 : Object + public class Xcls_FilterListModel37 : Object { public Gtk.FilterListModel el; private ValaProjectSettingsPopover _this; @@ -1152,11 +1163,11 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_FilterListModel35(ValaProjectSettingsPopover _owner ) + public Xcls_FilterListModel37(ValaProjectSettingsPopover _owner ) { _this = _owner; new Xcls_treelistsort( _this ); - var child_2 = new Xcls_CustomFilter42( _this ); + var child_2 = new Xcls_CustomFilter44( _this ); child_2.ref(); this.el = new Gtk.FilterListModel( _this.treelistsort.el, child_2.el ); @@ -1181,7 +1192,7 @@ public class ValaProjectSettingsPopover : Object _this = _owner; _this.treelistsort = this; new Xcls_treelistmodel( _this ); - var child_2 = new Xcls_TreeListRowSorter39( _this ); + var child_2 = new Xcls_TreeListRowSorter41( _this ); child_2.ref(); this.el = new Gtk.SortListModel( _this.treelistmodel.el, child_2.el ); @@ -1248,7 +1259,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_TreeListRowSorter39 : Object + public class Xcls_TreeListRowSorter41 : Object { public Gtk.TreeListRowSorter el; private ValaProjectSettingsPopover _this; @@ -1257,10 +1268,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_TreeListRowSorter39(ValaProjectSettingsPopover _owner ) + public Xcls_TreeListRowSorter41(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_StringSorter40( _this ); + var child_1 = new Xcls_StringSorter42( _this ); child_1.ref(); this.el = new Gtk.TreeListRowSorter( child_1.el ); @@ -1271,7 +1282,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_StringSorter40 : Object + public class Xcls_StringSorter42 : Object { public Gtk.StringSorter el; private ValaProjectSettingsPopover _this; @@ -1280,10 +1291,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_StringSorter40(ValaProjectSettingsPopover _owner ) + public Xcls_StringSorter42(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_PropertyExpression41( _this ); + var child_1 = new Xcls_PropertyExpression43( _this ); child_1.ref(); this.el = new Gtk.StringSorter( child_1.el ); @@ -1294,7 +1305,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_PropertyExpression41 : Object + public class Xcls_PropertyExpression43 : Object { public Gtk.PropertyExpression el; private ValaProjectSettingsPopover _this; @@ -1303,7 +1314,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_PropertyExpression41(ValaProjectSettingsPopover _owner ) + public Xcls_PropertyExpression43(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.PropertyExpression( typeof(JsRender.JsRender), null, "name" ); @@ -1319,7 +1330,7 @@ public class ValaProjectSettingsPopover : Object - public class Xcls_CustomFilter42 : Object + public class Xcls_CustomFilter44 : Object { public Gtk.CustomFilter el; private ValaProjectSettingsPopover _this; @@ -1328,7 +1339,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_CustomFilter42(ValaProjectSettingsPopover _owner ) + public Xcls_CustomFilter44(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.CustomFilter( (item) => { @@ -1380,7 +1391,7 @@ public class ValaProjectSettingsPopover : Object { _this = _owner; _this.name = this; - var child_1 = new Xcls_SignalListItemFactory44( _this ); + var child_1 = new Xcls_SignalListItemFactory46( _this ); child_1.ref(); this.el = new Gtk.ColumnViewColumn( "Other Files", child_1.el ); @@ -1404,7 +1415,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SignalListItemFactory44 : Object + public class Xcls_SignalListItemFactory46 : Object { public Gtk.SignalListItemFactory el; private ValaProjectSettingsPopover _this; @@ -1413,7 +1424,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SignalListItemFactory44(ValaProjectSettingsPopover _owner ) + public Xcls_SignalListItemFactory46(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.SignalListItemFactory(); @@ -1479,7 +1490,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_ColumnViewColumn45 : Object + public class Xcls_ColumnViewColumn47 : Object { public Gtk.ColumnViewColumn el; private ValaProjectSettingsPopover _this; @@ -1488,10 +1499,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnViewColumn45(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnViewColumn47(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_SignalListItemFactory46( _this ); + var child_1 = new Xcls_SignalListItemFactory48( _this ); child_1.ref(); this.el = new Gtk.ColumnViewColumn( "use", child_1.el ); @@ -1502,7 +1513,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SignalListItemFactory46 : Object + public class Xcls_SignalListItemFactory48 : Object { public Gtk.SignalListItemFactory el; private ValaProjectSettingsPopover _this; @@ -1511,7 +1522,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SignalListItemFactory46(ValaProjectSettingsPopover _owner ) + public Xcls_SignalListItemFactory48(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.SignalListItemFactory(); @@ -1569,7 +1580,7 @@ public class ValaProjectSettingsPopover : Object - public class Xcls_Box47 : Object + public class Xcls_Box49 : Object { public Gtk.Box el; private ValaProjectSettingsPopover _this; @@ -1578,7 +1589,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Box47(ValaProjectSettingsPopover _owner ) + public Xcls_Box49(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 ); @@ -1586,10 +1597,10 @@ public class ValaProjectSettingsPopover : Object // my vars (dec) // set gobject values - var child_1 = new Xcls_Box48( _this ); + var child_1 = new Xcls_Box50( _this ); child_1.ref(); this.el.append( child_1.el ); - var child_2 = new Xcls_ScrolledWindow51( _this ); + var child_2 = new Xcls_ScrolledWindow53( _this ); child_2.ref(); this.el.append( child_2.el ); new Xcls_set_vboxb( _this ); @@ -1598,7 +1609,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Box48 : Object + public class Xcls_Box50 : Object { public Gtk.Box el; private ValaProjectSettingsPopover _this; @@ -1607,7 +1618,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Box48(ValaProjectSettingsPopover _owner ) + public Xcls_Box50(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 ); @@ -1616,17 +1627,17 @@ public class ValaProjectSettingsPopover : Object // set gobject values this.el.hexpand = true; - var child_1 = new Xcls_Button49( _this ); + var child_1 = new Xcls_Button51( _this ); child_1.ref(); this.el.append( child_1.el ); - var child_2 = new Xcls_Button50( _this ); + var child_2 = new Xcls_Button52( _this ); child_2.ref(); this.el.append( child_2.el ); } // user defined functions } - public class Xcls_Button49 : Object + public class Xcls_Button51 : Object { public Gtk.Button el; private ValaProjectSettingsPopover _this; @@ -1635,7 +1646,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Button49(ValaProjectSettingsPopover _owner ) + public Xcls_Button51(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Button(); @@ -1673,7 +1684,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Button50 : Object + public class Xcls_Button52 : Object { public Gtk.Button el; private ValaProjectSettingsPopover _this; @@ -1682,7 +1693,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Button50(ValaProjectSettingsPopover _owner ) + public Xcls_Button52(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Button(); @@ -1718,7 +1729,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_ScrolledWindow51 : Object + public class Xcls_ScrolledWindow53 : Object { public Gtk.ScrolledWindow el; private ValaProjectSettingsPopover _this; @@ -1727,7 +1738,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ScrolledWindow51(ValaProjectSettingsPopover _owner ) + public Xcls_ScrolledWindow53(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.ScrolledWindow(); @@ -1736,7 +1747,7 @@ public class ValaProjectSettingsPopover : Object // set gobject values this.el.vexpand = true; - var child_1 = new Xcls_ColumnView52( _this ); + var child_1 = new Xcls_ColumnView54( _this ); child_1.ref(); this.el.child = child_1.el; @@ -1750,7 +1761,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_ColumnView52 : Object + public class Xcls_ColumnView54 : Object { public Gtk.ColumnView el; private ValaProjectSettingsPopover _this; @@ -1759,7 +1770,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnView52(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnView54(ValaProjectSettingsPopover _owner ) { _this = _owner; new Xcls_target_sel( _this ); @@ -1768,7 +1779,7 @@ public class ValaProjectSettingsPopover : Object // my vars (dec) // set gobject values - var child_2 = new Xcls_ColumnViewColumn55( _this ); + var child_2 = new Xcls_ColumnViewColumn57( _this ); child_2.ref(); this.el.append_column ( child_2.el ); } @@ -1880,7 +1891,7 @@ public class ValaProjectSettingsPopover : Object } - public class Xcls_ColumnViewColumn55 : Object + public class Xcls_ColumnViewColumn57 : Object { public Gtk.ColumnViewColumn el; private ValaProjectSettingsPopover _this; @@ -1889,10 +1900,10 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_ColumnViewColumn55(ValaProjectSettingsPopover _owner ) + public Xcls_ColumnViewColumn57(ValaProjectSettingsPopover _owner ) { _this = _owner; - var child_1 = new Xcls_SignalListItemFactory56( _this ); + var child_1 = new Xcls_SignalListItemFactory58( _this ); child_1.ref(); this.el = new Gtk.ColumnViewColumn( "Build Target", child_1.el ); @@ -1904,7 +1915,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_SignalListItemFactory56 : Object + public class Xcls_SignalListItemFactory58 : Object { public Gtk.SignalListItemFactory el; private ValaProjectSettingsPopover _this; @@ -1913,7 +1924,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_SignalListItemFactory56(ValaProjectSettingsPopover _owner ) + public Xcls_SignalListItemFactory58(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.SignalListItemFactory(); @@ -1972,12 +1983,12 @@ public class ValaProjectSettingsPopover : Object // my vars (dec) // set gobject values - var child_1 = new Xcls_Label58( _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_Label60( _this ); + var child_3 = new Xcls_Label62( _this ); child_3.ref(); this.el.append( child_3.el ); new Xcls_build_execute_args( _this ); @@ -1988,7 +1999,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Label58 : Object + public class Xcls_Label60 : Object { public Gtk.Label el; private ValaProjectSettingsPopover _this; @@ -1997,7 +2008,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Label58(ValaProjectSettingsPopover _owner ) + public Xcls_Label60(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Label( "Build Name (executable name)" ); @@ -2101,7 +2112,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Label60 : Object + public class Xcls_Label62 : Object { public Gtk.Label el; private ValaProjectSettingsPopover _this; @@ -2110,7 +2121,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Label60(ValaProjectSettingsPopover _owner ) + public Xcls_Label62(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Label( "test argments - when run after a build" ); @@ -2193,7 +2204,7 @@ public class ValaProjectSettingsPopover : Object - public class Xcls_Box63 : Object + public class Xcls_Box65 : Object { public Gtk.Box el; private ValaProjectSettingsPopover _this; @@ -2202,7 +2213,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Box63(ValaProjectSettingsPopover _owner ) + public Xcls_Box65(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Box( Gtk.Orientation.HORIZONTAL, 0 ); @@ -2215,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_Button64( _this ); + var child_1 = new Xcls_Button66( _this ); child_1.ref(); this.el.append( child_1.el ); - var child_2 = new Xcls_Label65( _this ); + var child_2 = new Xcls_Label67( _this ); child_2.ref(); this.el.append( child_2.el ); new Xcls_save_btn( _this ); @@ -2227,7 +2238,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Button64 : Object + public class Xcls_Button66 : Object { public Gtk.Button el; private ValaProjectSettingsPopover _this; @@ -2236,7 +2247,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Button64(ValaProjectSettingsPopover _owner ) + public Xcls_Button66(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Button(); @@ -2257,7 +2268,7 @@ public class ValaProjectSettingsPopover : Object // user defined functions } - public class Xcls_Label65 : Object + public class Xcls_Label67 : Object { public Gtk.Label el; private ValaProjectSettingsPopover _this; @@ -2266,7 +2277,7 @@ public class ValaProjectSettingsPopover : Object // my vars (def) // ctor - public Xcls_Label65(ValaProjectSettingsPopover _owner ) + public Xcls_Label67(ValaProjectSettingsPopover _owner ) { _this = _owner; this.el = new Gtk.Label( "" ); diff --git a/src/Palete/HoverProvider.vala b/src/Palete/HoverProvider.vala new file mode 100644 index 000000000..5799f4e9c --- /dev/null +++ b/src/Palete/HoverProvider.vala @@ -0,0 +1,35 @@ + + +namespace Palete { + public class HoverProvider : Object, GtkSource.HoverProvider + { + + public async bool populate_async ( GtkSource.HoverContext context, GtkSource.HoverDisplay display, Cancellable? cancellable) throws Error + { + + + global::Gtk.TextIter begin, end , pos; + + if (!context.get_bounds(out begin, out end)) { + return false; + } + + context.get_iter(out pos); + + GLib.debug("populate hover async Word: %s || %s" ,begin.get_text(pos) , pos.get_text(end) ); + display.append(new global::Gtk.Label("test")); + return true; + } + public bool populate (GtkSource.HoverContext context, GtkSource.HoverDisplay display) throws Error + { + global::Gtk.TextIter begin, end; + + if (!context.get_bounds(out begin, out end)) { + return true; + } + GLib.debug("populate hover Word: %s" ,begin.get_text(end));return false; + return true; + + } + } +} \ No newline at end of file diff --git a/src/Project/Gtk.vala b/src/Project/Gtk.vala index bccbfb9be..42afbc972 100644 --- a/src/Project/Gtk.vala +++ b/src/Project/Gtk.vala @@ -105,6 +105,9 @@ namespace Project } if (obj.has_member("licence")) { this.licence = obj.get_string_member("licence"); + } + if (obj.has_member("generate_meson")) { + this.generate_meson = obj.get_boolean_member("generate_meson"); } if (!obj.has_member("compilegroups") || obj.get_member("compilegroups").get_node_type () != Json.NodeType.ARRAY) { // make _default_ ? @@ -139,7 +142,7 @@ namespace Project obj.set_string_member("compile_flags", this.compile_flags); obj.set_string_member("version", this.version); obj.set_string_member("licence", this.licence); - + obj.set_boolean_member("generate_meson",this.generate_meson); var par = new Json.Array(); foreach(var p in this.packages) { par.add_string_element(p); diff --git a/src/Project/Project.vala b/src/Project/Project.vala index c9bd36036..6f03ac3c8 100644 --- a/src/Project/Project.vala +++ b/src/Project/Project.vala @@ -85,7 +85,7 @@ namespace Project { public Gee.HashMap gir_cache = null; // used by Gir ??? is this used by Roo? //public Palete.ValaCompileRequest last_request = null; // depricated? public Gee.HashMap? errorsByType = null; - + public bool loading = false; // flag this to block saving (normally when loading ui that might trigger save.. protected Gee.HashMap language_servers; @@ -416,7 +416,11 @@ namespace Project { public void save() { - + + if (this.loading) { + return; + } + var s = this.toJSON(); GLib.debug("Save Project %s\n%s", this.name, s); try { diff --git a/src/vapi/gtksourceview-5.vapi b/src/vapi/gtksourceview-5.vapi index 51f0b9b0b..872b71e66 100644 --- a/src/vapi/gtksourceview-5.vapi +++ b/src/vapi/gtksourceview-5.vapi @@ -347,7 +347,7 @@ namespace GtkSource { protected HoverContext (); public bool get_bounds (out Gtk.TextIter begin, out Gtk.TextIter end); public unowned GtkSource.Buffer get_buffer (); - public bool get_iter (Gtk.TextIter iter); + public bool get_iter (out Gtk.TextIter iter); public unowned GtkSource.View get_view (); } [CCode (cheader_filename = "gtksourceview/gtksource.h", type_id = "gtk_source_hover_display_get_type ()")] -- 2.39.2