"xtype" : "Viewport",
"string id" : "GtkView",
"$ xns" : "Gtk",
- "| void addNode" : "(Object? parent, JsRender.Node node) { \n\n var type = GLib.Type.from_name(node.fqn());\n if (type < 1) {\n return;\n }\n // some types can not be created -- eg. dialogs...\n \n var child = new Object(type);\n\n var pack = \"\";\n if (parent == null) {\n pack = \"add\";\n parent = this.container.el;\n }\n var node_pack = node.get(\"* pack\");\n string[] args = {}'\n if (pack.length < 1 && node_pack.length > 0) {\n var ar = pack.split(\",\");\n pack = ar[0];\n for (var i =1; i < ar.length; i++) {\n args += ar[i];\n }\n }\n switch(pack) {\n case \"add\":\n parent.add(child);\n break;\n case \"pack_start\":\n \n default:\n print(\"unknown pack: \" + pack);\n return;\n }\n \n \n var iter = node.items.list_iterator();\n while (iter.next()) {\n this.addNode(child, iter.get());\n }\n \n \n\n}",
+ "| void addNode" : "(Object? parent, JsRender.Node node) { \n\n var type = GLib.Type.from_name(node.fqn());\n if (type < 1) {\n return;\n }\n // some types can not be created -- eg. dialogs...\n \n var child = new Object(type);\n\n var pack = \"\";\n if (parent == null) {\n pack = \"add\";\n parent = this.container.el;\n }\n var node_pack = node.get(\"* pack\");\n string[] args = {}'\n if (pack.length < 1 && node_pack.length > 0) {\n var ar = pack.split(\",\");\n pack = ar[0];\n for (var i =1; i < ar.length; i++) {\n args += ar[i];\n }\n }\n switch(pack) {\n case \"add\":\n ((Gtk.Container) parent).add(child);\n break;\n case \"pack_start\":\n ((Gtk.Box) parent).pack_start(\n child, \n args.length > 0 && args[0].down() == \"false\" ? false : true\n args.length > 1 && args[1].down() == \"true\" ? true : false\n args.length > 2 ? uint64.parse(args[2])\n );\n break;\n case \"pack_end\":\n ((Gtk.Box) parent).pack_end(\n child, \n args.length > 0 && args[0].down() == \"false\" ? false : true\n args.length > 1 && args[1].down() == \"true\" ? true : false\n args.length > 2 ? uint64.parse(args[2])\n ); \n \n \n \n default:\n print(\"unknown pack: \" + pack);\n return;\n }\n \n \n var iter = node.items.list_iterator();\n while (iter.next()) {\n this.addNode(child, iter.get());\n }\n \n \n\n}",
"items" : [
{
"* pack" : "add",
}
switch(pack) {
case "add":
- parent.add(child);
+ ((Gtk.Container) parent).add(child);
break;
case "pack_start":
+ ((Gtk.Box) parent).pack_start(
+ child,
+ args.length > 0 && args[0].down() == "false" ? false : true
+ args.length > 1 && args[1].down() == "true" ? true : false
+ args.length > 2 ? uint64.parse(args[2])
+ );
+ break;
+ case "pack_end":
+ ((Gtk.Box) parent).pack_end(
+ child,
+ args.length > 0 && args[0].down() == "false" ? false : true
+ args.length > 1 && args[1].down() == "true" ? true : false
+ args.length > 2 ? uint64.parse(args[2])
+ );
+
+
default:
print("unknown pack: " + pack);
}
switch(pack) {
case "add":
- parent.add(child);
+ ((Gtk.Container) parent).add(child);
break;
case "pack_start":
+ ((Gtk.Box) parent).pack_start(
+ child,
+ args.length > 0 && args[0].down() == "false" ? false : true
+ args.length > 1 && args[1].down() == "true" ? true : false
+ args.length > 2 ? uint64.parse(args[2])
+ );
+ break;
+ case "pack_end":
+ ((Gtk.Box) parent).pack_end(
+ child,
+ args.length > 0 && args[0].down() == "false" ? false : true
+ args.length > 1 && args[1].down() == "true" ? true : false
+ args.length > 2 ? uint64.parse(args[2])
+ );
+
+
default:
print("unknown pack: " + pack);