2 "build_module" : "builder",
7 "default_height" : 200,
11 "$ pack" : "get_content_area().add ",
13 "Gtk.Orientation orientation" : "Gtk.Orientation.VERTICAL",
17 "* pack" : "pack_start,false,false,0",
18 "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
23 "* pack" : "pack_start,false,false",
24 "label" : "Select Template : ",
29 "* init" : "this.el.add_attribute(_this.cellrenderer.el , \"markup\", 1 );",
35 "* pack" : "pack_start,true",
36 "id" : "cellrenderer",
37 "xtype" : "CellRendererText"
40 "$ columns" : "typeof(string),typeof(string)",
42 "* pack" : "set_model",
45 "xtype" : "ListStore",
47 " (GLib.List<string> data) {",
49 " Gtk.TreeIter iter;",
52 " /// el.append(out iter);",
55 " // el.set_value(iter, 0, \"\");",
56 " // el.set_value(iter, 1, \"aaa - Just add Element - aaa\");",
58 " for (var i = 0; i < data.length();i++) {",
61 " el.append(out iter);",
62 " var str = data.nth_data(i);",
63 " var fn = Path.get_basename (str);",
64 " fn.replace(\".json\", \"\");",
66 " el.set_value(iter, 0, str);",
67 " el.set_value(iter, 1, fn);",
70 " this.el.set_sort_column_id(1, Gtk.SortType.ASCENDING); ",
84 "* pack" : "pack_start,false,false,0",
85 "Gtk.Orientation orientation" : "Gtk.Orientation.HORIZONTAL",
90 "* pack" : "pack_start,false,false",
91 "label" : "Select Database Table : ",
96 "* init" : "this.el.add_attribute(_this.dbcellrenderer.el , \"markup\", 1 );",
102 "* pack" : "pack_start,true",
103 "id" : "dbcellrenderer",
104 "xtype" : "CellRendererText"
107 "$ columns" : "typeof(string),typeof(string)",
109 "* pack" : "set_model",
112 "xtype" : "ListStore",
113 "| void loadData" : [
114 " (Gee.ArrayList<string> data) {",
115 " this.el.clear(); ",
116 " Gtk.TreeIter iter;",
117 " var el = this.el;",
119 " /// el.append(out iter);",
122 " // el.set_value(iter, 0, \"\");",
123 " // el.set_value(iter, 1, \"aaa - Just add Element - aaa\");",
125 " el.append(out iter);",
128 " el.set_value(iter, 0, \"\");",
129 " el.set_value(iter, 1, \"-- select a table --\");",
132 " for (var i = 0; i < data.size;i++) {",
135 " el.append(out iter);",
137 " el.set_value(iter, 0, data.get(i));",
138 " el.set_value(iter, 1, data.get(i));",
141 " this.el.set_sort_column_id(0, Gtk.SortType.ASCENDING); ",
158 "* pack" : "add_action_widget,0",
164 "* pack" : "add_action_widget,1",
165 "label" : "Just add it",
170 "* pack" : "add_action_widget,2",
177 " (self, event) =>{",
183 "title" : "Add an Object",
185 "| JsRender.Node? show" : [
186 " (Xcls_MainWindow mwindow, Palete.Palete pal, JsRender.Node node, Project.Project project) {",
188 " this.el.show_all();",
189 " var opts = pal.listTemplates(node);",
190 " if (opts.length() < 1) {",
194 " this.el.set_attached_to( mwindow.el);",
195 " this.el.set_transient_for( mwindow.el);",
197 " //opts.unshift({ path: '' , name :'Just add Element' });",
198 " _this.model.loadData(opts);",
199 " _this.combo.el.set_active(-1);",
202 " var db = new Palete.RooDatabase.from_project(project);",
203 " _this.dbmodel.loadData(db.readTablesGee());",
205 " var plug = mwindow.windowstate.webkit_plugin;",
207 " _this.dbcombo.el.set_active(-1);",
211 " var res = this.el.run();",
213 " //var ix = _this.combo.el.get_active();",
215 " return null; // 0 = cancel.",
218 " return node; // 1 = just add it..",
221 " // have they selected a table??",
223 " Gtk.TreeIter iter; ",
225 " if (_this.dbcombo.el.get_active_iter (out iter)) { ",
226 " this.dbmodel.el.get_value (iter, 0, out vfname);",
227 " if (((string)vfname).length > 0 && plug.has_plugin(node.fqn())) {",
228 " var json_str = plug.show(mwindow.el, project, node.fqn(), (string)vfname);",
229 " print(\"json_str = %s\\n\", json_str);",
230 " if (json_str.length < 1) {",
234 " var pa = new Json.Parser();",
237 "\t pa.load_from_data(json_str);",
238 "\t } catch(Error e) {",
241 "\t var new_node = pa.get_root();",
243 "\t if (new_node.get_node_type () != Json.NodeType.OBJECT) {",
246 "\t var obj = new_node.get_object ();",
248 "\t var ret = new JsRender.Node();",
250 "\t ret.loadFromJson(obj, 1);",
256 " if (!_this.combo.el.get_active_iter (out iter)) {",
258 " return node; // nothing selected...",
261 " this.model.el.get_value (iter, 0, out vfname);",
264 " return pal.loadTemplate((string)vfname);",
272 "name" : "DialogTemplateSelect",
274 "path" : "/home/alan/gitlive/roobuilder/src/Builder4/DialogTemplateSelect.bjs",