2 "build_module" : "builder",
5 "# Project.Project project" : "",
6 "$ homogeneous" : false,
8 "@ void buttonPressed" : "(string btn)",
9 "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
11 "id" : "RooProjectSettings",
14 "$ homogeneous" : true,
16 "* pack" : "pack_start,false,false,0",
17 "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
18 "gboolean expand" : false,
19 "gboolean vexpand" : false,
26 "button_press_event" : [
30 " _this.buttonPressed(\"apply\");",
42 "button_press_event" : [
46 " _this.buttonPressed(\"save\");",
58 "* pack" : "pack_end,true,true,0",
63 "id" : "label_global",
64 "utf8 label" : "Global",
70 "id" : "label_database",
71 "utf8 label" : "Database",
76 "* pack" : "append_page,_this.label_global.el",
77 "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
78 "gboolean homogeneous" : false,
82 "* pack" : "pack_start,false,false,0",
90 "$ homogeneous" : false,
92 "* pack" : "pack_start,false,false,0",
93 "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
94 "gboolean expand" : false,
98 "* pack" : "pack_start,false,false,0",
100 "label" : "HTML template file",
106 "id" : "base_template",
113 "$ homogeneous" : false,
115 "* pack" : "pack_start,false,false,0",
116 "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
117 "gboolean expand" : false,
121 "* pack" : "pack_start,false,false,0",
123 "label" : "root URL",
137 "* pack" : "pack_start,false,false,0",
138 "label" : "HTML To insert at end of <HEAD>",
143 "* pack" : "pack_start,true,true,0",
146 "$ xns" : "GtkSource",
149 " var description = Pango.FontDescription.from_string(\"monospace\");",
150 " description.set_size(9000);",
151 " this.el.override_font(description);"
156 "key_release_event" : [
158 " if (event.keyval != 115) {",
162 " if ( (event.state & Gdk.ModifierType.CONTROL_MASK ) < 1 ) {",
165 " var buf = this.el.get_buffer();",
168 " buf.get_start_iter(out s);",
169 " buf.get_end_iter(out e);",
170 " _this.project.runhtml = buf.get_text(s,e,true);",
173 " _this.buttonPressed(\"save\");",
183 "xtype" : "ScrolledWindow"
190 "* pack" : "append_page,_this.label_database.el",
191 "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
192 "gboolean homogeneous" : false,
196 "* pack" : "pack_start,false,false,0",
197 "label" : "Type (eg. MySQL or PostgreSQL)",
203 "* pack" : "pack_start,false,false,0",
204 "id" : "database_DBTYPE",
206 "key_press_event" : [
209 " if (ev.keyval == Gdk.Key.Tab) {",
210 " _this.database_DBNAME.el.grab_focus();",
224 "* pack" : "pack_start,false,false,0",
231 "* pack" : "pack_start,false,false,0",
232 "id" : "database_DBNAME",
234 "key_press_event" : [
237 " if (ev.keyval == Gdk.Key.Tab) {",
238 " _this.database_DBUSERNAME.el.grab_focus();",
252 "* pack" : "pack_start,false,false,0",
253 "label" : "Username",
259 "* pack" : "pack_start,false,false,0",
260 "id" : "database_DBUSERNAME",
262 "key_press_event" : [
265 " if (ev.keyval == Gdk.Key.Tab) {",
266 " _this.database_DBPASSWORD.el.grab_focus();",
280 "* pack" : "pack_start,false,false,0",
281 "label" : "Password",
287 "* pack" : "pack_start,false,false,0",
288 "id" : "database_DBPASSWORD",
293 "* pack" : "pack_start,false,false,0",
299 " _this.database_ERROR.el.label = \"\";",
300 " Gda.Connection cnc;",
302 " // assumes localhost...",
303 " cnc = Gda.Connection.open_from_string (",
304 "\t\t\t_this.database_DBTYPE.el.get_text(),",
305 "\t\t\t\"DB_NAME=\" + _this.database_DBNAME.el.get_text(), ",
306 "\t\t\t\"USERNAME=\" + _this.database_DBUSERNAME.el.get_text() + ",
307 "\t\t\t\";PASSWORD=\" + _this.database_DBPASSWORD.el.get_text(),",
308 "\t\t\tGda.ConnectionOptions.NONE",
310 " //} catch (Gda.ConnectionError ce) { ",
311 " // _this.database_ERROR.el.label = ce.message; ",
312 " } catch(Gda.ConnectionError ue) {",
313 " _this.database_ERROR.el.label = ue.message;",
315 " } catch(Gda.ConfigError ue) {",
316 " _this.database_ERROR.el.label = ue.message;",
319 " _this.database_ERROR.el.label = \"Connection Succeeded\";",
324 "utf8 label" : "Check Connection",
329 "* pack" : "pack_start,false,false,0",
331 "id" : "database_ERROR",
347 " var buf = _this.view.el.get_buffer();",
350 " buf.get_start_iter(out s);",
351 " buf.get_end_iter(out e);",
352 " _this.project.runhtml = buf.get_text(s,e,true);",
354 " _this.project.rootURL = _this.rootURL.el.get_text();",
355 " _this.project.base_template = _this.base_template.el.get_text(); ",
357 " var js = _this.project.json_project_data;",
358 " js.set_string_member(\"DBTYPE\", _this.database_DBTYPE.el.get_text());",
359 " js.set_string_member(\"DBNAME\", _this.database_DBNAME.el.get_text());",
360 " js.set_string_member(\"DBUSERNAME\", _this.database_DBUSERNAME.el.get_text());",
361 " js.set_string_member(\"DBPASSWORD\", _this.database_DBPASSWORD.el.get_text());",
362 "// _this.project.set_string_member(\"DBHOST\", _this.DBTYPE.el.get_text()); ",
364 " // need to re-init the database ",
366 " _this.project.initRooDatabase();",
371 " (Project.Project project) {",
372 " _this.project = project;",
373 " _this.path.el.label = project.firstPath();",
374 " // get the active project.",
375 " var lm = Gtk.SourceLanguageManager.get_default();",
377 " ((Gtk.SourceBuffer)(_this.view.el.get_buffer())) .set_language(",
379 " lm.get_language(\"html\"));",
381 " //print (project.fn);",
382 " //project.runhtml = project.runhtml || '';",
383 " _this.view.el.get_buffer().set_text(project.runhtml);",
386 " _this.rootURL.el.set_text( _this.project.rootURL );",
387 " _this.base_template.el.set_text(_this.project.base_template); ",
388 " var js = _this.project;",
389 " _this.database_DBTYPE.el.set_text( js.get_string_member(\"DBTYPE\") );",
390 " _this.database_DBNAME.el.set_text( js.get_string_member(\"DBNAME\") );",
391 " _this.database_DBUSERNAME.el.set_text( js.get_string_member(\"DBUSERNAME\") );",
392 " _this.database_DBPASSWORD.el.set_text( js.get_string_member(\"DBPASSWORD\") );",
393 " //this.el.show_all();",
400 "name" : "ProjectSettings",
402 "path" : "/home/alan/gitlive/roobuilder/src/Builder4/ProjectSettings.bjs",