FieldContainer.js
1.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/**
* @private
*/
Ext.define('Ext.layout.component.field.FieldContainer', {
/* Begin Definitions */
extend: 'Ext.layout.component.field.Field',
alias: 'layout.fieldcontainer',
/* End Definitions */
type: 'fieldcontainer',
waitForOuterHeightInDom: true,
waitForOuterWidthInDom: true,
beginLayout: function(ownerContext) {
this.callParent(arguments);
// Tell Component.measureAutoDimensions to measure the DOM when containerChildrenDone is true
ownerContext.hasRawContent = true;
ownerContext.target.bodyEl.setStyle('height', '');
},
measureContentHeight: function (ownerContext) {
// since we are measuring the outer el, we have to wait for whatever is in our
// container to be flushed to the DOM... especially for things like box layouts
// that size the innerCt since that is all that will contribute to our size!
return ownerContext.hasDomProp('containerLayoutDone') ? this.callParent(arguments) : NaN;
},
measureContentWidth: function (ownerContext) {
// see measureContentHeight
return ownerContext.hasDomProp('containerLayoutDone') ? this.callParent(arguments) : NaN;
},
publishInnerWidth: function (ownerContext, width) {
var bodyContext = ownerContext.bodyCellContext;
bodyContext.setWidth(bodyContext.el.getWidth(), false);
},
publishInnerHeight: function (ownerContext, height) {
var bodyContext = ownerContext.bodyCellContext;
bodyContext.setHeight(height - this.measureLabelErrorHeight(ownerContext));
}
});