X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=XObject.js;h=05463b0d291ecc904b4f60290696dcd4a8f331ee;hb=a2128b349140be7a014ce977f171abb7377e1157;hp=d3e7edbc9424706c81783fda89fef32934ceccfb;hpb=928d5f2e54889dc6faf64ea5f4e0149b306b87e0;p=app.Builder.js diff --git a/XObject.js b/XObject.js index d3e7edbc9..05463b0d2 100644 --- a/XObject.js +++ b/XObject.js @@ -69,30 +69,11 @@ function XObject (cfg) { if (!this.constructor) { this.constructor = XObject; - - // start by seeing if we have a base class.... - try { - // loocks for XObject/Gtk/TreeView.js [ TreeView = { .... } ] - // xns is not a string!!!? - var gname = false; - if (typeof(cfg.xtype) == 'object') { - gname = GObject.type_name(cfg.xtype.type); - // print("GNAME:" +gname + " GTYPE:"+cfg.xtype.type); - } - - // in the situation where we have been called and there is a base object - // defining the behavior.. - // then we should copy the prototypes from the base object into this.. - var base = gname ? imports.XObjectBase[gname][gname] : false; - if (base) { - // print("Overlaying XOBJBECT-BASE." + cfg.xtype); - XObject.extend(this,base.prototype); - } - - } catch (e) { - // if debug? - XObject.log("error finding " + gname + " - " + e.toString()); + var base = XObject.baseXObject(cfg); + if (base) { + XObject.extend(this,base.prototype); } + } // copy down all elements into self.. @@ -147,15 +128,14 @@ function XObject (cfg) { this.items = []; // create XObject for all the children. items.forEach(function(i,n) { - - var item = (i.constructor == XObject) ? o : new XObject(i); + var base = XObject.baseXObject(i); + base = base || XObject; + var item = (i.constructor == XObject) ? i : new base(i); item.parent = _this; _this.items.push(item); //_this.addItem(i); }); - if (this.onConstruct) { - this.onConstruct.call(this); - } + } @@ -732,7 +712,7 @@ XObject.extend(XObject, return ret; }, /** - * return the Gobject name of a constructor + * return the Gobject name of a constructor - does not appear to work on structs.. * @param {Object} gobject ctr * @return {String} returns name * @member XObject type @@ -761,7 +741,7 @@ XObject.extend(XObject, gname = XObject.type(cfg.xtype); } - + print("TRYING BASE OBJECT : " + gname); // in the situation where we have been called and there is a base object // defining the behavior.. // then we should copy the prototypes from the base object into this..