*/
/**
- *
- * This needs some more thought..
- *
- *
- *
* @class Roo.XComponent
- * @extends Roo.data.Observable
- *
* A delayed Element creator...
*
* Mypart.xyx = new Roo.XComponent({
region : 'xxxx'
disabled : function() {}
- items : [ // technically only one component..
+ tree : function() { // return an tree of xtype declared components
+ var MODULE = this;
+ return
{
xtype : 'NestedLayoutPanel',
// technicall
}
]
*})
- *
- *
+ * @extends Roo.util.Observable
+ * @constructor
+ * @param cfg {Object} configuration of component
*
*/
Roo.XComponent = function(cfg) {
'buildcomplete' : true,
});
-
+
Roo.XComponent.register(this);
this.modules = false;
this.el = false; // where the layout goes..
* It's done this way to stay compatible with the Xtype system...
*/
items : false,
+
+
+
});
Roo.apply(Roo.XComponent, {
/**
* Register components to be built later.
- * @param {Object} details about module
*
* This solves the following issues
* - Building is not done on page load, but after an authentication process has occured.
parent : 'Pman.layout',
disabled : false, // or use a function..
})
- *
+
+ * * @param {Object} details about module
*/
register : function(obj) {
this.modules.push(obj);
this.preBuild();
var mods = this.buildOrder();
-
+
//this.allmods = mods;
//console.log(mods);
//return;
var _this = this;
var progressRun = function() {
if (!mods.length) {
+ console.log('hide?');
Roo.MessageBox.hide();
_this.topModule.fireEvent('buildcomplete', _this.topModule);
return;
minTabWidth: 140
}
});
- m.items[0].region = 'center';
- m.el = layoutbase.addxtype( m.items[0] );
- m.panel = this.el;
+ var tree = m.tree();
+ tree.region = 'center';
+ m.el = layoutbase.addxtype(tree);
+ m.panel = m.el;
m.layout = m.panel.layout;
return progressRun.defer(10, _this);
}
-
- m.el = m.parent.el.addxtype(m.items[0]);
+ var tree = m.tree();
+ tree.region = tree.region || m.region;
+ m.el = m.parent.el.addxtype(tree);
m.fireEvent('built', m);
- m.panel = this.el;
+ m.panel = m.el;
m.layout = m.panel.layout;
progressRun.defer(10, _this);