X-Git-Url: http://git.roojs.org/?p=app.Builder.js;a=blobdiff_plain;f=src%2FBuilder4%2FDialogPluginWebkit.vala;h=e4c46f440fd67582590fdba8e79653d84f4c0402;hp=f887c6231c12135f0df5235b1319f01f985591fa;hb=HEAD;hpb=1624bb8cb466cc9d0339d62f09f9dacee095ca93 diff --git a/src/Builder4/DialogPluginWebkit.vala b/src/Builder4/DialogPluginWebkit.vala index f887c6231..e4c46f440 100644 --- a/src/Builder4/DialogPluginWebkit.vala +++ b/src/Builder4/DialogPluginWebkit.vala @@ -1,6 +1,6 @@ static Xcls_DialogPluginWebkit _DialogPluginWebkit; -public class Xcls_DialogPluginWebkit : Object +public class Xcls_DialogPluginWebkit : Object { public Gtk.Dialog el; private Xcls_DialogPluginWebkit _this; @@ -18,7 +18,7 @@ public class Xcls_DialogPluginWebkit : Object public string tmpjs; public string result_json; - // ctor + // ctor public Xcls_DialogPluginWebkit() { _this = this; @@ -29,10 +29,10 @@ public class Xcls_DialogPluginWebkit : Object // set gobject values this.el.title = "Add / Edit Component"; this.el.default_height = 500; - this.el.default_width = 500; + this.el.default_width = 750; this.el.deletable = true; this.el.modal = true; - var child_0 = new Xcls_VBox2( _this ); + var child_0 = new Xcls_Box2( _this ); child_0.ref(); this.el.get_content_area().add ( child_0.el ); var child_1 = new Xcls_Button5( _this ); @@ -45,7 +45,7 @@ public class Xcls_DialogPluginWebkit : Object child_3.ref(); this.el.add_action_widget ( child_3.el , 1 ); - // listeners + //listeners this.el.delete_event.connect( (self, event) => { this.el.hide(); return true; @@ -53,7 +53,7 @@ public class Xcls_DialogPluginWebkit : Object }); } - // user defined functions + // user defined functions public string show (Gtk.Window ?parent, Project.Project project, string cls, string tbl) {// JsRender.Node node) { if (parent != null) { @@ -71,13 +71,17 @@ public class Xcls_DialogPluginWebkit : Object var runhtml = "" + + "" + ""); @@ -147,14 +153,19 @@ public class Xcls_DialogPluginWebkit : Object if (response_id == 1) { // OK... var loop = new MainLoop(); // run toBJS to get the data... (calls back into alert handler) - this.webview.el.run_javascript.begin("Editor." + cls + ".panel.toBJS();", null, (obj, res) => { - - this.webview.el.run_javascript.end(res); - - loop.quit(); - }); - loop.run(); - ret = _this.result_json; + _this.result_json = ""; + this.webview.el.run_javascript.begin("Editor." + cls + ".panel.toBJS();", null, (obj, res) => { + try { + this.webview.el.run_javascript.end(res); + } catch(Error e) { + + } + loop.quit(); + }); + loop.run(); + ret = _this.result_json; + + // print("LOOP END?"); // try and get the resopse... break; @@ -185,31 +196,32 @@ public class Xcls_DialogPluginWebkit : Object } - public class Xcls_VBox2 : Object + public class Xcls_Box2 : Object { - public Gtk.VBox el; + public Gtk.Box el; private Xcls_DialogPluginWebkit _this; // my vars (def) - // ctor - public Xcls_VBox2(Xcls_DialogPluginWebkit _owner ) + // ctor + public Xcls_Box2(Xcls_DialogPluginWebkit _owner ) { _this = _owner; - this.el = new Gtk.VBox( false, 0 ); + this.el = new Gtk.Box( Gtk.Orientation.VERTICAL, 0 ); // my vars (dec) // set gobject values + this.el.homogeneous = false; var child_0 = new Xcls_ScrolledWindow3( _this ); child_0.ref(); this.el.pack_start ( child_0.el , false,true,3 ); } - // user defined functions + // user defined functions } - public class Xcls_ScrolledWindow3 : Object + public class Xcls_ScrolledWindow3 : Object { public Gtk.ScrolledWindow el; private Xcls_DialogPluginWebkit _this; @@ -217,7 +229,7 @@ public class Xcls_DialogPluginWebkit : Object // my vars (def) - // ctor + // ctor public Xcls_ScrolledWindow3(Xcls_DialogPluginWebkit _owner ) { _this = _owner; @@ -231,14 +243,14 @@ public class Xcls_DialogPluginWebkit : Object child_0.ref(); this.el.add ( child_0.el ); - // init method + // init method this.el.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC); } - // user defined functions + // user defined functions } - public class Xcls_webview : Object + public class Xcls_webview : Object { public WebKit.WebView el; private Xcls_DialogPluginWebkit _this; @@ -246,7 +258,7 @@ public class Xcls_DialogPluginWebkit : Object // my vars (def) - // ctor + // ctor public Xcls_webview(Xcls_DialogPluginWebkit _owner ) { _this = _owner; @@ -257,7 +269,7 @@ public class Xcls_DialogPluginWebkit : Object // set gobject values - // init method + // init method { // this may not work!? @@ -289,7 +301,7 @@ public class Xcls_DialogPluginWebkit : Object } - // listeners + //listeners this.el.script_dialog.connect( (dialog) => { if (this.el == null) { return true; @@ -326,9 +338,12 @@ public class Xcls_DialogPluginWebkit : Object }); } - // user defined functions + // user defined functions } - public class Xcls_Button5 : Object + + + + public class Xcls_Button5 : Object { public Gtk.Button el; private Xcls_DialogPluginWebkit _this; @@ -336,7 +351,7 @@ public class Xcls_DialogPluginWebkit : Object // my vars (def) - // ctor + // ctor public Xcls_Button5(Xcls_DialogPluginWebkit _owner ) { _this = _owner; @@ -348,9 +363,10 @@ public class Xcls_DialogPluginWebkit : Object this.el.label = "Reload"; } - // user defined functions + // user defined functions } - public class Xcls_Button6 : Object + + public class Xcls_Button6 : Object { public Gtk.Button el; private Xcls_DialogPluginWebkit _this; @@ -358,7 +374,7 @@ public class Xcls_DialogPluginWebkit : Object // my vars (def) - // ctor + // ctor public Xcls_Button6(Xcls_DialogPluginWebkit _owner ) { _this = _owner; @@ -370,9 +386,10 @@ public class Xcls_DialogPluginWebkit : Object this.el.label = "Cancel"; } - // user defined functions + // user defined functions } - public class Xcls_Button7 : Object + + public class Xcls_Button7 : Object { public Gtk.Button el; private Xcls_DialogPluginWebkit _this; @@ -380,7 +397,7 @@ public class Xcls_DialogPluginWebkit : Object // my vars (def) - // ctor + // ctor public Xcls_Button7(Xcls_DialogPluginWebkit _owner ) { _this = _owner; @@ -392,6 +409,7 @@ public class Xcls_DialogPluginWebkit : Object this.el.label = "OK"; } - // user defined functions + // user defined functions } + }