src/Builder4/DialogPluginWebkit.bjs
authorAlan Knowles <alan@roojs.com>
Wed, 22 Apr 2015 10:12:39 +0000 (18:12 +0800)
committerAlan Knowles <alan@roojs.com>
Wed, 22 Apr 2015 10:12:39 +0000 (18:12 +0800)
src/Builder4/DialogPluginWebkit.vala

src/Builder4/DialogPluginWebkit.bjs
src/Builder4/DialogPluginWebkit.vala

index f2f9d63..05f3197 100644 (file)
@@ -11,8 +11,8 @@
     "delete_event" : "(self, event) => {\n    this.el.hide();\n    return true; \n    //test  \n}\n "
    },
    "string tmpjs" : "",
-   "id" : "DialogPluginWebkit",
    "utf8 title" : "Add / Edit Component",
+   "id" : "DialogPluginWebkit",
    "gint default_height" : 500,
    "gboolean deletable" : true,
    "xtype" : "Dialog",
      "items" : [
       {
        "* init" : "  this.el.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC);\n \n",
-       "* pack" : "pack_start,false,true,3",
        "xtype" : "ScrolledWindow",
+       "* pack" : "pack_start,false,true,3",
        "gboolean expand" : true,
        "$ xns" : "Gtk",
        "items" : [
         {
          "listeners" : {
-          "script_dialog" : " (dialog) => {\n    if (this.el == null) {\n        return true;\n    }\n    \n     var msg = dialog.get_message();\n     if (msg.length < 4) {\n        return false;\n     }\n     if (msg.substring(0,4) != \"IPC:\") {\n         return false;\n     }\n     var ar = msg.split(\":\", 3);\n    if (ar.length < 3) {\n        return false;\n    }\n    print(\"CMD: %s\\n\",ar[1]);\n        print(\"ARGS: %s\\n\",ar[2]);\n    switch(ar[1]) {\n        case \"SAVEHTML\":\n          print(\"%sw\",ar[2]);\n          //  _this.file.saveHTML(ar[2]);\n            return true;\n        default:\n            return true;\n    }\n    \n}"
+          "script_dialog" : " (dialog) => {\n    if (this.el == null) {\n        return true;\n    }\n    \n     var msg = dialog.get_message();\n     if (msg.length < 4) {\n        return false;\n     }\n     if (msg.substring(0,4) != \"IPC:\") {\n         return false;\n     }\n     var ar = msg.split(\":\", 3);\n    if (ar.length < 3) {\n        return false;\n    }\n    print(\"CMD: %s\\n\",ar[1]);\n    print(\"ARGS: %s\\n\",ar[2]);\n    switch(ar[1]) {\n        case \"SAVEHTML\":\n          print(\"%sw\",ar[2]);\n          //  _this.file.saveHTML(ar[2]);\n            return true;\n            \n        case \"OUT\":\n            _this.json = ar[2];\n        default:\n            return true;\n    }\n    \n}"
          },
          "id" : "webview",
          "* init" : " {\n    // this may not work!?\n    var settings =  this.el.get_settings();\n    settings.enable_write_console_messages_to_stdout = true;\n     \n    var fs= new FakeServer(this.el);\n    fs.ref();\n    // this was an attempt to change the url perms.. did not work..\n    // settings.enable_file_access_from_file_uris = true;\n    // settings.enable_offline_web_application_cache - true;\n    // settings.enable_universal_access_from_file_uris = true;\n   \n     \n    \n    \n    \n\n     // FIXME - base url of script..\n     // we need it so some of the database features work.\n    this.el.load_html( \"Render not ready\" , \n            //fixme - should be a config option!\n            // or should we catch stuff and fix it up..\n            \"xhttp://localhost/app.Builder/\"\n    );\n        \n        \n    \n    \n}\n",
     },
     {
      "label" : "Reload",
-     "xtype" : "Button",
      "* pack" : "add_action_widget,3",
+     "xtype" : "Button",
      "$ xns" : "Gtk"
     },
     {
      "label" : "Cancel",
-     "* pack" : "add_action_widget,0",
      "xtype" : "Button",
+     "* pack" : "add_action_widget,0",
      "$ xns" : "Gtk"
     },
     {
      "label" : "OK",
-     "xtype" : "Button",
      "* pack" : "add_action_widget,1",
+     "xtype" : "Button",
      "$ xns" : "Gtk"
     }
    ]
index af5f05a..08cb5f5 100644 (file)
@@ -307,12 +307,15 @@ public class Xcls_DialogPluginWebkit : Object
                     return false;
                 }
                 print("CMD: %s\n",ar[1]);
-                    print("ARGS: %s\n",ar[2]);
+                print("ARGS: %s\n",ar[2]);
                 switch(ar[1]) {
                     case "SAVEHTML":
                       print("%sw",ar[2]);
                       //  _this.file.saveHTML(ar[2]);
                         return true;
+                        
+                    case "OUT":
+                        _this.json = ar[2];
                     default:
                         return true;
                 }