1 <html><head><title>Roo/form/Layout.js</title><link rel="stylesheet" type="text/css" href="../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty"><span class="jsdoc-comment">/*
4 * Copyright(c) 2006-2007, Ext JS, LLC.
6 * Originally Released Under LGPL - original licence link has changed is not relivant.
9 * <script type="text/javascript">
13 * @class Roo.form.Layout
14 * @extends Roo.Component
15 * Creates a container for layout and rendering of fields in an {@link Roo.form.Form}.
17 * @param {Object} config Configuration options
19 </span><span class="jsdoc-var">Roo.form.Layout </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
20 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">xitems </span><span class="jsdoc-syntax">= [];
21 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">) {
22 </span><span class="jsdoc-var">xitems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">;
23 </span><span class="jsdoc-keyword">delete </span><span class="jsdoc-var">config.items</span><span class="jsdoc-syntax">;
25 </span><span class="jsdoc-var">Roo.form.Layout.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
26 </span><span class="jsdoc-var">this.stack </span><span class="jsdoc-syntax">= [];
27 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">xitems</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.addxtype</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
31 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.form.Layout</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.Component</span><span class="jsdoc-syntax">, {
32 </span><span class="jsdoc-comment">/**
33 * @cfg {String/Object} autoCreate
34 * A DomHelper element spec used to autocreate the layout (defaults to {tag: 'div', cls: 'x-form-ct'})
37 * @cfg {String/Object/Function} style
38 * A style specification string, e.g. "width:100px", or object in the form {width:"100px"}, or
39 * a function which returns such a specification.
42 * @cfg {String} labelAlign
43 * Valid values are "left," "top" and "right" (defaults to "left")
46 * @cfg {Number} labelWidth
47 * Fixed width in pixels of all field labels (defaults to undefined)
50 * @cfg {Boolean} clear
51 * True to add a clearing element at the end of this layout, equivalent to CSS clear: both (defaults to true)
53 </span><span class="jsdoc-var">clear </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
54 </span><span class="jsdoc-comment">/**
55 * @cfg {String} labelSeparator
56 * The separator to use after field labels (defaults to ':')
58 </span><span class="jsdoc-var">labelSeparator </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">':'</span><span class="jsdoc-syntax">,
59 </span><span class="jsdoc-comment">/**
60 * @cfg {Boolean} hideLabels
61 * True to suppress the display of field labels in this layout (defaults to false)
63 </span><span class="jsdoc-var">hideLabels </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
65 </span><span class="jsdoc-comment">// private
66 </span><span class="jsdoc-var">defaultAutoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-form-ct'</span><span class="jsdoc-syntax">},
68 </span><span class="jsdoc-var">isLayout </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
70 </span><span class="jsdoc-comment">// private
71 </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">){
72 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// from markup
73 </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
74 }</span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{ </span><span class="jsdoc-comment">// generate
75 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getAutoCreate</span><span class="jsdoc-syntax">();
76 </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">ct.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
78 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.style</span><span class="jsdoc-syntax">){
79 </span><span class="jsdoc-var">this.el.applyStyles</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.style</span><span class="jsdoc-syntax">);
81 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelAlign</span><span class="jsdoc-syntax">){
82 </span><span class="jsdoc-var">this.el.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-form-label-'</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.labelAlign</span><span class="jsdoc-syntax">);
84 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hideLabels</span><span class="jsdoc-syntax">){
85 </span><span class="jsdoc-var">this.labelStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"display:none"</span><span class="jsdoc-syntax">;
86 </span><span class="jsdoc-var">this.elementStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"padding-left:0;"</span><span class="jsdoc-syntax">;
87 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
88 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'number'</span><span class="jsdoc-syntax">){
89 </span><span class="jsdoc-var">this.labelStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"width:"</span><span class="jsdoc-syntax">+</span><span class="jsdoc-var">this.labelWidth</span><span class="jsdoc-syntax">+</span><span class="jsdoc-string">"px;"</span><span class="jsdoc-syntax">;
90 </span><span class="jsdoc-var">this.elementStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"padding-left:"</span><span class="jsdoc-syntax">+((</span><span class="jsdoc-var">this.labelWidth</span><span class="jsdoc-syntax">+(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">this.labelPad </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'number' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.labelPad </span><span class="jsdoc-syntax">: 5))+</span><span class="jsdoc-string">'px'</span><span class="jsdoc-syntax">)+</span><span class="jsdoc-string">";"</span><span class="jsdoc-syntax">;
92 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelAlign </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'top'</span><span class="jsdoc-syntax">){
93 </span><span class="jsdoc-var">this.labelStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"width:auto;"</span><span class="jsdoc-syntax">;
94 </span><span class="jsdoc-var">this.elementStyle </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"padding-left:0;"</span><span class="jsdoc-syntax">;
97 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">stack </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.stack</span><span class="jsdoc-syntax">;
98 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">slen </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">stack.length</span><span class="jsdoc-syntax">;
99 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">slen </span><span class="jsdoc-syntax">> 0){
100 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.fieldTpl</span><span class="jsdoc-syntax">){
101 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(
102 </span><span class="jsdoc-string">'<div class="x-form-item {5}">'</span><span class="jsdoc-syntax">,
103 </span><span class="jsdoc-string">'<label for="{0}" style="{2}">{1}{4}</label>'</span><span class="jsdoc-syntax">,
104 </span><span class="jsdoc-string">'<div class="x-form-element" id="x-form-el-{0}" style="{3}">'</span><span class="jsdoc-syntax">,
105 </span><span class="jsdoc-string">'</div>'</span><span class="jsdoc-syntax">,
106 </span><span class="jsdoc-string">'</div><div class="x-form-clear-left"></div>'
107 </span><span class="jsdoc-syntax">);
108 </span><span class="jsdoc-var">t.disableFormats </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
109 </span><span class="jsdoc-var">t.compile</span><span class="jsdoc-syntax">();
110 </span><span class="jsdoc-var">Roo.form.Layout.prototype.fieldTpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">;
112 </span><span class="jsdoc-keyword">for</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">= 0; </span><span class="jsdoc-var">i </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">slen</span><span class="jsdoc-syntax">; </span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">++) {
113 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">stack</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.isFormField</span><span class="jsdoc-syntax">){
114 </span><span class="jsdoc-var">this.renderField</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">stack</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
115 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
116 </span><span class="jsdoc-var">this.renderComponent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">stack</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">]);
120 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.clear</span><span class="jsdoc-syntax">){
121 </span><span class="jsdoc-var">this.el.createChild</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'x-form-clear'</span><span class="jsdoc-syntax">});
125 </span><span class="jsdoc-comment">// private
126 </span><span class="jsdoc-var">renderField </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">f</span><span class="jsdoc-syntax">){
127 </span><span class="jsdoc-var">f.fieldEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fieldTpl.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">, [
128 </span><span class="jsdoc-var">f.id</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//0
129 </span><span class="jsdoc-var">f.fieldLabel</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//1
130 </span><span class="jsdoc-var">f.labelStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">this.labelStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//2
131 </span><span class="jsdoc-var">this.elementStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//3
132 </span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">f.labelSeparator </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.labelSeparator </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">f.labelSeparator</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">//4
133 </span><span class="jsdoc-var">f.itemCls</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">this.itemCls</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">'' </span><span class="jsdoc-comment">//5
134 </span><span class="jsdoc-syntax">], </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.getPrevSibling</span><span class="jsdoc-syntax">());
137 </span><span class="jsdoc-comment">// private
138 </span><span class="jsdoc-var">renderComponent </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c</span><span class="jsdoc-syntax">){
139 </span><span class="jsdoc-var">c.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">c.isLayout </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.el </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.el.createChild</span><span class="jsdoc-syntax">());
141 </span><span class="jsdoc-comment">/**
142 * Adds a object form elements (using the xtype property as the factory method.)
143 * Valid xtypes are: TextField, TextArea .... Button, Layout, FieldSet, Column
144 * @param {Object} config
146 </span><span class="jsdoc-var">addxtype </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">)
148 </span><span class="jsdoc-comment">// create the lement.
149 </span><span class="jsdoc-var">o.form </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.form</span><span class="jsdoc-syntax">;
150 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">fe </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.form</span><span class="jsdoc-syntax">);
151 </span><span class="jsdoc-var">this.form.allItems.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fe</span><span class="jsdoc-syntax">);
152 </span><span class="jsdoc-var">this.stack.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fe</span><span class="jsdoc-syntax">);
154 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fe.isFormField</span><span class="jsdoc-syntax">) {
155 </span><span class="jsdoc-var">this.form.items.add</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fe</span><span class="jsdoc-syntax">);
158 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">fe</span><span class="jsdoc-syntax">;
162 </span><span class="jsdoc-comment">/**
163 * @class Roo.form.Column
164 * @extends Roo.form.Layout
165 * Creates a column container for layout and rendering of fields in an {@link Roo.form.Form}.
167 * @param {Object} config Configuration options
169 </span><span class="jsdoc-var">Roo.form.Column </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
170 </span><span class="jsdoc-var">Roo.form.Column.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
173 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.form.Column</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.form.Layout</span><span class="jsdoc-syntax">, {
174 </span><span class="jsdoc-comment">/**
175 * @cfg {Number/String} width
176 * The fixed width of the column in pixels or CSS value (defaults to "auto")
179 * @cfg {String/Object} autoCreate
180 * A DomHelper element spec used to autocreate the column (defaults to {tag: 'div', cls: 'x-form-ct x-form-column'})
184 </span><span class="jsdoc-var">defaultAutoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-form-ct x-form-column'</span><span class="jsdoc-syntax">},
186 </span><span class="jsdoc-comment">// private
187 </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">){
188 </span><span class="jsdoc-var">Roo.form.Column.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
189 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">){
190 </span><span class="jsdoc-var">this.el.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">);
196 </span><span class="jsdoc-comment">/**
197 * @class Roo.form.Row
198 * @extends Roo.form.Layout
199 * Creates a row container for layout and rendering of fields in an {@link Roo.form.Form}.
201 * @param {Object} config Configuration options
205 </span><span class="jsdoc-var">Roo.form.Row </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
206 </span><span class="jsdoc-var">Roo.form.Row.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
209 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.form.Row</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.form.Layout</span><span class="jsdoc-syntax">, {
210 </span><span class="jsdoc-comment">/**
211 * @cfg {Number/String} width
212 * The fixed width of the column in pixels or CSS value (defaults to "auto")
215 * @cfg {Number/String} height
216 * The fixed height of the column in pixels or CSS value (defaults to "auto")
218 </span><span class="jsdoc-var">defaultAutoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x-form-ct x-form-row'</span><span class="jsdoc-syntax">},
220 </span><span class="jsdoc-var">padWidth </span><span class="jsdoc-syntax">: 20,
221 </span><span class="jsdoc-comment">// private
222 </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">){
223 </span><span class="jsdoc-comment">//console.log('row render');
224 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.rowTpl</span><span class="jsdoc-syntax">){
225 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">t </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.Template</span><span class="jsdoc-syntax">(
226 </span><span class="jsdoc-string">'<div class="x-form-item {5}" style="float:left;width:{6}px">'</span><span class="jsdoc-syntax">,
227 </span><span class="jsdoc-string">'<label for="{0}" style="{2}">{1}{4}</label>'</span><span class="jsdoc-syntax">,
228 </span><span class="jsdoc-string">'<div class="x-form-element" id="x-form-el-{0}" style="{3}">'</span><span class="jsdoc-syntax">,
229 </span><span class="jsdoc-string">'</div>'</span><span class="jsdoc-syntax">,
230 </span><span class="jsdoc-string">'</div>'
231 </span><span class="jsdoc-syntax">);
232 </span><span class="jsdoc-var">t.disableFormats </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
233 </span><span class="jsdoc-var">t.compile</span><span class="jsdoc-syntax">();
234 </span><span class="jsdoc-var">Roo.form.Layout.prototype.rowTpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">;
236 </span><span class="jsdoc-var">this.fieldTpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.rowTpl</span><span class="jsdoc-syntax">;
238 </span><span class="jsdoc-comment">//console.log('lw' + this.labelWidth +', la:' + this.labelAlign);
239 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">labelWidth </span><span class="jsdoc-syntax">= 100;
241 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">((</span><span class="jsdoc-var">this.labelAlign </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">'top'</span><span class="jsdoc-syntax">)) {
242 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'number'</span><span class="jsdoc-syntax">) {
243 </span><span class="jsdoc-var">labelWidth </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.labelWidth
244 </span><span class="jsdoc-syntax">}
245 </span><span class="jsdoc-var">this.padWidth </span><span class="jsdoc-syntax">= 20 + </span><span class="jsdoc-var">labelWidth</span><span class="jsdoc-syntax">;
249 </span><span class="jsdoc-var">Roo.form.Column.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
250 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">){
251 </span><span class="jsdoc-var">this.el.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width</span><span class="jsdoc-syntax">);
253 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.height</span><span class="jsdoc-syntax">){
254 </span><span class="jsdoc-var">this.el.setHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.height</span><span class="jsdoc-syntax">);
258 </span><span class="jsdoc-comment">// private
259 </span><span class="jsdoc-var">renderField </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">f</span><span class="jsdoc-syntax">){
260 </span><span class="jsdoc-var">f.fieldEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.fieldTpl.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">, [
261 </span><span class="jsdoc-var">f.id</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">f.fieldLabel</span><span class="jsdoc-syntax">,
262 </span><span class="jsdoc-var">f.labelStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">this.labelStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
263 </span><span class="jsdoc-var">this.elementStyle</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
264 </span><span class="jsdoc-keyword">typeof </span><span class="jsdoc-var">f.labelSeparator </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.labelSeparator </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">f.labelSeparator</span><span class="jsdoc-syntax">,
265 </span><span class="jsdoc-var">f.itemCls</span><span class="jsdoc-syntax">||</span><span class="jsdoc-var">this.itemCls</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
266 </span><span class="jsdoc-var">f.width </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">f.width </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.padWidth </span><span class="jsdoc-syntax">: 160 + </span><span class="jsdoc-var">this.padWidth
267 </span><span class="jsdoc-syntax">],</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
272 </span><span class="jsdoc-comment">/**
273 * @class Roo.form.FieldSet
274 * @extends Roo.form.Layout
275 * Creates a fieldset container for layout and rendering of fields in an {@link Roo.form.Form}.
277 * @param {Object} config Configuration options
279 </span><span class="jsdoc-var">Roo.form.FieldSet </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
280 </span><span class="jsdoc-var">Roo.form.FieldSet.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
283 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.form.FieldSet</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.form.Layout</span><span class="jsdoc-syntax">, {
284 </span><span class="jsdoc-comment">/**
285 * @cfg {String} legend
286 * The text to display as the legend for the FieldSet (defaults to '')
289 * @cfg {String/Object} autoCreate
290 * A DomHelper element spec used to autocreate the fieldset (defaults to {tag: 'fieldset', cn: {tag:'legend'}})
294 </span><span class="jsdoc-var">defaultAutoCreate </span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'fieldset'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: {</span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'legend'</span><span class="jsdoc-syntax">}},
296 </span><span class="jsdoc-comment">// private
297 </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">){
298 </span><span class="jsdoc-var">Roo.form.FieldSet.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
299 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.legend</span><span class="jsdoc-syntax">){
300 </span><span class="jsdoc-var">this.setLegend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.legend</span><span class="jsdoc-syntax">);
304 </span><span class="jsdoc-comment">// private
305 </span><span class="jsdoc-var">setLegend </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">){
306 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">){
307 </span><span class="jsdoc-var">this.el.child</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'legend'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.update</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">);
310 });</span></code></body></html>