size: '',
max_width: 0,
-
+
+ fit_content: false,
onRender : function(ct, position)
{
resize : function()
{
- this.maskEl.setSize(Roo.lib.Dom.getViewWidth(true), Roo.lib.Dom.getViewHeight(true));
+ this.maskEl.setSize(
+ Roo.lib.Dom.getViewWidth(true),
+ Roo.lib.Dom.getViewHeight(true)
+ );
if (this.fitwindow) {
- var w = this.width || Roo.lib.Dom.getViewportWidth(true) - 30;
- var h = this.height || Roo.lib.Dom.getViewportHeight(true) - 60;
- this.setSize(w,h);
+ this.setSize(
+ this.width || Roo.lib.Dom.getViewportWidth(true) - 30,
+ this.height || Roo.lib.Dom.getViewportHeight(true) - 60
+ );
+ return;
}
- if(!this.fitwindow && this.max_width !== 0){
- var w = Math.min(this.max_width, Roo.lib.Dom.getViewportWidth(true) - 30);
- // var h = this.height || Roo.lib.Dom.getViewportHeight(true) - 60;
- this.setSize(w,this.height);
+ if(this.max_width !== 0) {
+
+ var w = Math.min(
+ this.max_width,
+ Roo.lib.Dom.getViewportWidth(true) - 30
+ );
+
+ if(this.height) {
+ this.setSize(w, this.height);
+ return;
+ }
+
+ if(!this.fit_content) {
+ this.setSize(w, Roo.lib.Dom.getViewportHeight(true) - 60);
+ return;
+ }
+
+ var body_childs = this.bodyEl.dom.childNodes;
+ var full_height = this.headerEl.getHeight() + this.footerEl.getHeight();
+ for(var i = 0; i < body_childs.length; i++) {
+ full_height += body_childs[i].offsetHeight;
+ }
- // var view_height = Roo.lib.Dom.getViewportHeight(true) - 60;
- //
- // if(
- // (
- // this.headerEl.getHeight() +
- // this.bodyEl.getHeight() +
- // this.footerEl.getHeight()
- // ) > view_height) {
- // } {
- // this.setSize(w,view_height);
- // }
+ this.setSize(w, Math.min(full_height, Roo.lib.Dom.getViewportHeight(true) - 60));
}
},