1 static Xcls_DialogPluginWebkit _DialogPluginWebkit;
3 public class Xcls_DialogPluginWebkit : Object
6 private Xcls_DialogPluginWebkit _this;
8 public static Xcls_DialogPluginWebkit singleton()
10 if (_DialogPluginWebkit == null) {
11 _DialogPluginWebkit= new Xcls_DialogPluginWebkit();
13 return _DialogPluginWebkit;
15 public Xcls_webview webview;
20 public Xcls_DialogPluginWebkit()
23 this.el = new Gtk.Dialog();
28 this.el.title = "Add / Edit Component";
29 this.el.default_height = 500;
30 this.el.default_width = 500;
31 this.el.deletable = true;
33 var child_0 = new Xcls_VBox2( _this );
35 this.el.get_content_area().add ( child_0.el );
36 var child_1 = new Xcls_Button5( _this );
38 this.el.add_action_widget ( child_1.el , 0 );
39 var child_2 = new Xcls_Button6( _this );
41 this.el.add_action_widget ( child_2.el , 1 );
44 this.el.delete_event.connect( (self, event) => {
51 // user defined functions
52 public string show (Gtk.Window ?parent, string text) {// JsRender.Node node) {
55 this.el.set_transient_for(parent);
60 var runhtml = "<script type=\"text/javascript\">\n" ;
64 GLib.FileUtils.get_contents(BuilderApplication.configDirectory() + "/resources/roo.builder.js", out builderhtml);
66 runhtml += builderhtml + "\n";
67 runhtml += "</script>\n" ;
69 // fix to make sure they are the same..
71 // need to modify paths
75 GLib.FileUtils.get_contents(
76 BuilderApplication.configDirectory() + "/resources/roo.builder.html"
81 string js_src = js + "\n" +
82 "Roo.onReady(function() {\n" +
83 "if (" + _this.file.name +".show) " + _this.file.name +".show({});\n" +
84 "Roo.XComponent.build();\n" +
88 //var fc = FakeServerCache.factory_with_data(js_src);
89 //this.runjs = fc.fname;
92 var html = inhtml.replace("</head>", runhtml + // + this.runhtml +
94 // "<script type=\"text/javascript\" src=\"xhttp://localhost" + fc.fname + "\"></script>" +
95 // "<script type=\"text/javascript\">\n" +
100 //print("LOAD HTML " + html);
102 //var rootURL = _this.file.project.rootURL;
106 this.webview.el.load_html( html ,
107 //fixme - should be a config option!
108 "xhttp://localhost/app.Builder.js/"
116 var response_id = this.el.run();
117 if (response_id < 1) {
133 public class Xcls_VBox2 : Object
136 private Xcls_DialogPluginWebkit _this;
142 public Xcls_VBox2(Xcls_DialogPluginWebkit _owner )
145 this.el = new Gtk.VBox( false, 0 );
149 // set gobject values
150 var child_0 = new Xcls_ScrolledWindow3( _this );
152 this.el.pack_start ( child_0.el , false,true,3 );
155 // user defined functions
157 public class Xcls_ScrolledWindow3 : Object
159 public Gtk.ScrolledWindow el;
160 private Xcls_DialogPluginWebkit _this;
166 public Xcls_ScrolledWindow3(Xcls_DialogPluginWebkit _owner )
169 this.el = new Gtk.ScrolledWindow( null, null );
173 // set gobject values
174 this.el.expand = true;
175 var child_0 = new Xcls_webview( _this );
177 this.el.add ( child_0.el );
181 this.el.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.AUTOMATIC);
184 // user defined functions
186 public class Xcls_webview : Object
188 public WebKit.WebView el;
189 private Xcls_DialogPluginWebkit _this;
195 public Xcls_webview(Xcls_DialogPluginWebkit _owner )
198 _this.webview = this;
199 this.el = new WebKit.WebView();
203 // set gobject values
208 // this may not work!?
209 var settings = this.el.get_settings();
212 //var fs= new FakeServer(this.el);
214 // this was an attempt to change the url perms.. did not work..
215 // settings.enable_file_access_from_file_uris = true;
216 // settings.enable_offline_web_application_cache - true;
217 // settings.enable_universal_access_from_file_uris = true;
224 // FIXME - base url of script..
225 // we need it so some of the database features work.
226 this.el.load_html( "Render not ready" ,
227 //fixme - should be a config option!
228 // or should we catch stuff and fix it up..
229 "xhttp://localhost/app.Builder/"
238 // user defined functions
240 public class Xcls_Button5 : Object
242 public Gtk.Button el;
243 private Xcls_DialogPluginWebkit _this;
249 public Xcls_Button5(Xcls_DialogPluginWebkit _owner )
252 this.el = new Gtk.Button();
256 // set gobject values
257 this.el.label = "Cancel";
260 // user defined functions
262 public class Xcls_Button6 : Object
264 public Gtk.Button el;
265 private Xcls_DialogPluginWebkit _this;
271 public Xcls_Button6(Xcls_DialogPluginWebkit _owner )
274 this.el = new Gtk.Button();
278 // set gobject values
279 this.el.label = "OK";
282 // user defined functions