--- /dev/null
+//<script type="text/javascript">
+//Gtk = imports.gi.Gtk;
+GI = imports.gi.GIRepository;
+GLib = imports.gi.GLib;
+xml = imports.libxml;
+//GObject = imports.gi.GObject;
+
+XObject = imports.XObject.XObject;
+console = imports.console.console;
+
+
+NameSpace = imports.NameSpace.NameSpace;
+Basic = imports.Basic.Basic;
+
+
+
+Callback = XObject.define(
+ function(sig, memberOf, saveto, keylist) {
+
+
+ var params = this.argsToArrays(sig);
+ // add a reference to self...
+ /*params.unshift({
+ name : 'self',
+ type : memberOf.alias,
+ direction : 'in',
+ be_null : false
+
+ });
+ */
+
+ XObject.extend(this,{
+ name : GI.base_info_get_name(sig),
+ params : params,
+ //memberOf : memberOf.alias,
+ exceptions : [],
+ returns : [ { type : this.typeToName(GI.callable_info_get_return_type(sig)) } ]
+
+ });
+ this.desc = NameSpace.doc(memberOf.alias + '.' + this.name);
+ //memberOf[saveto].push(this);
+ //keylist.push(this.name);
+
+ },
+ Basic,
+ {}
+);
+