projects
/
roojs1
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
roojs-core.js
[roojs1]
/
Roo
/
BorderLayout.js
diff --git
a/Roo/BorderLayout.js
b/Roo/BorderLayout.js
index
eb979e6
..
8228ced
100644
(file)
--- a/
Roo/BorderLayout.js
+++ b/
Roo/BorderLayout.js
@@
-11,6
+11,7
@@
/**
* @class Roo.BorderLayout
* @extends Roo.LayoutManager
/**
* @class Roo.BorderLayout
* @extends Roo.LayoutManager
+ * @children Roo.ContentPanel
* This class represents a common layout manager used in desktop applications. For screenshots and more details,
* please see: <br><br>
* <a href="http://www.jackslocum.com/yui/2006/10/19/cross-browser-web-20-layouts-with-yahoo-ui/">Cross Browser Layouts - Part 1</a><br>
* This class represents a common layout manager used in desktop applications. For screenshots and more details,
* please see: <br><br>
* <a href="http://www.jackslocum.com/yui/2006/10/19/cross-browser-web-20-layouts-with-yahoo-ui/">Cross Browser Layouts - Part 1</a><br>
@@
-92,6
+93,22
@@
Roo.BorderLayout = function(container, config){
};
Roo.extend(Roo.BorderLayout, Roo.LayoutManager, {
};
Roo.extend(Roo.BorderLayout, Roo.LayoutManager, {
+
+ /**
+ * @cfg {Roo.LayoutRegion} east
+ */
+ /**
+ * @cfg {Roo.LayoutRegion} west
+ */
+ /**
+ * @cfg {Roo.LayoutRegion} north
+ */
+ /**
+ * @cfg {Roo.LayoutRegion} south
+ */
+ /**
+ * @cfg {Roo.LayoutRegion} center
+ */
/**
* Creates and adds a new region if it doesn't already exist.
* @param {String} target The target region key (north, south, east, west or center).
/**
* Creates and adds a new region if it doesn't already exist.
* @param {String} target The target region key (north, south, east, west or center).
@@
-122,7
+139,9
@@
Roo.extend(Roo.BorderLayout, Roo.LayoutManager, {
* Performs a layout update.
*/
layout : function(){
* Performs a layout update.
*/
layout : function(){
- if(this.updating) return;
+ if(this.updating) {
+ return;
+ }
var size = this.getViewSize();
var w = size.width;
var h = size.height;
var size = this.getViewSize();
var w = size.width;
var h = size.height;
@@
-399,6
+418,7
@@
layout.addxtype({
{
case 'ContentPanel': // ContentPanel (el, cfg)
case 'ScrollPanel': // ContentPanel (el, cfg)
{
case 'ContentPanel': // ContentPanel (el, cfg)
case 'ScrollPanel': // ContentPanel (el, cfg)
+ case 'ViewPanel':
if(cfg.autoCreate) {
ret = new Roo[cfg.xtype](cfg); // new panel!!!!!
} else {
if(cfg.autoCreate) {
ret = new Roo[cfg.xtype](cfg); // new panel!!!!!
} else {
@@
-464,34
+484,56
@@
layout.addxtype({
}
break;
}
break;
-
+
+
+
- default:
- alert("Can not add '" + cfg.xtype + "' to BorderLayout");
- return null;
+ default:
+ if (typeof(Roo[cfg.xtype]) != 'undefined') {
+
+ ret = new Roo[cfg.xtype](cfg); // new panel!!!!!
+ this.add(region, ret);
+ } else {
+
+ alert("Can not add '" + cfg.xtype + "' to BorderLayout");
+ return null;
+ }
+
// GridPanel (grid, cfg)
}
this.beginUpdate();
// add children..
var region = '';
// GridPanel (grid, cfg)
}
this.beginUpdate();
// add children..
var region = '';
+ var abn = {};
Roo.each(xitems, function(i) {
Roo.each(xitems, function(i) {
- region = nb && i.region
&& !i.background
? i.region : false;
+ region = nb && i.region ? i.region : false;
var add = ret.addxtype(i);
if (region) {
var add = ret.addxtype(i);
if (region) {
- nb[region] = add;
+ nb[region] = nb[region] == undefined ? 0 : nb[region]+1;
+ if (!i.background) {
+ abn[region] = nb[region] ;
+ }
}
});
this.endUpdate();
}
});
this.endUpdate();
+
// make the last non-background panel active..
// make the last non-background panel active..
-
if (nb) { Roo.log(nb
); }
+
//if (nb) { Roo.log(abn
); }
if (nb) {
if (nb) {
- for(var r in nb) {
- this.getRegion(r).setActivePanel(nb[r]);
+
+ for(var r in abn) {
+ region = this.getRegion(r);
+ if (region) {
+ // tried using nb[r], but it does not work..
+
+ region.showPanel(abn[r]);
+
+ }
}
}
return ret;
}
}
return ret;