1 <html><head><title>Roo/bootstrap/form/ComboBox.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">/*
7 * @class Roo.bootstrap.form.ComboBox
8 * @extends Roo.bootstrap.form.TriggerField
9 * A combobox control with support for autocomplete, remote-loading, paging and many other features.
10 * @cfg {Boolean} append (true|false) default false
11 * @cfg {Boolean} autoFocus (true|false) auto focus the first item, default true
12 * @cfg {Boolean} tickable ComboBox with tickable selections (true|false), default false
13 * @cfg {Boolean} triggerList trigger show the list or not (true|false) default true
14 * @cfg {Boolean} showToggleBtn show toggle button or not (true|false) default true
15 * @cfg {String} btnPosition set the position of the trigger button (left | right) default right
16 * @cfg {Boolean} animate default true
17 * @cfg {Boolean} emptyResultText only for touch device
18 * @cfg {String} triggerText multiple combobox trigger button text default 'Select'
19 * @cfg {String} emptyTitle default ''
20 * @cfg {Number} width fixed with? experimental
22 * Create a new ComboBox.
23 * @param {Object} config Configuration options
25 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox </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">){
26 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.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">);
27 </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
28 </span><span class="jsdoc-comment">/**
30 * Fires when the dropdown list is expanded
31 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
33 </span><span class="jsdoc-string">'expand' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
34 </span><span class="jsdoc-comment">/**
36 * Fires when the dropdown list is collapsed
37 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
39 </span><span class="jsdoc-string">'collapse' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
40 </span><span class="jsdoc-comment">/**
42 * Fires before a list item is selected. Return false to cancel the selection.
43 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
44 * @param {Roo.data.Record} record The data record returned from the underlying store
45 * @param {Number} index The index of the selected item in the dropdown list
47 </span><span class="jsdoc-string">'beforeselect' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
48 </span><span class="jsdoc-comment">/**
50 * Fires when a list item is selected
51 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
52 * @param {Roo.data.Record} record The data record returned from the underlying store (or false on clear)
53 * @param {Number} index The index of the selected item in the dropdown list
55 </span><span class="jsdoc-string">'select' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
56 </span><span class="jsdoc-comment">/**
58 * Fires before all queries are processed. Return false to cancel the query or set cancel to true.
59 * The event object passed has these properties:
60 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
61 * @param {String} query The query
62 * @param {Boolean} forceAll true to force "all" query
63 * @param {Boolean} cancel true to cancel the query
64 * @param {Object} e The query event object
66 </span><span class="jsdoc-string">'beforequery'</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
67 </span><span class="jsdoc-comment">/**
69 * Fires when the 'add' icon is pressed (add a listener to enable add button)
70 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
72 </span><span class="jsdoc-string">'add' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
73 </span><span class="jsdoc-comment">/**
75 * Fires when the 'edit' icon is pressed (add a listener to enable add button)
76 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
77 * @param {Roo.data.Record|false} record The data record returned from the underlying store (or false on nothing selected)
79 </span><span class="jsdoc-string">'edit' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
80 </span><span class="jsdoc-comment">/**
82 * Fires when the remove value from the combobox array
83 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
85 </span><span class="jsdoc-string">'remove' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
86 </span><span class="jsdoc-comment">/**
88 * Fires when the remove value from the combobox array
89 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
91 </span><span class="jsdoc-string">'afterremove' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
92 </span><span class="jsdoc-comment">/**
93 * @event specialfilter
94 * Fires when specialfilter
95 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
97 </span><span class="jsdoc-string">'specialfilter' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
98 </span><span class="jsdoc-comment">/**
100 * Fires when tick the element
101 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
103 </span><span class="jsdoc-string">'tick' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
104 </span><span class="jsdoc-comment">/**
105 * @event touchviewdisplay
106 * Fires when touch view require special display (default is using displayField)
107 * @param {Roo.bootstrap.form.ComboBox} combo This combo box
108 * @param {Object} cfg set html .
110 </span><span class="jsdoc-string">'touchviewdisplay' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
112 </span><span class="jsdoc-syntax">});
114 </span><span class="jsdoc-var">this.item </span><span class="jsdoc-syntax">= [];
115 </span><span class="jsdoc-var">this.tickItems </span><span class="jsdoc-syntax">= [];
117 </span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">= -1;
118 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'local'</span><span class="jsdoc-syntax">){
119 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.queryDelay </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">){
120 </span><span class="jsdoc-var">this.queryDelay </span><span class="jsdoc-syntax">= 10;
122 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config.minChars </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">){
123 </span><span class="jsdoc-var">this.minChars </span><span class="jsdoc-syntax">= 0;
128 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.form.TriggerField</span><span class="jsdoc-syntax">, {
130 </span><span class="jsdoc-comment">/**
131 * @cfg {Boolean} lazyRender True to prevent the ComboBox from rendering until requested (should always be used when
132 * rendering into an Roo.Editor, defaults to false)
135 * @cfg {Boolean/Object} autoCreate A DomHelper element spec, or true for a default element spec (defaults to:
136 * {tag: "input", type: "text", size: "24", autocomplete: "off"})
139 * @cfg {Roo.data.Store} store The data store to which this combo is bound (defaults to undefined)
142 * @cfg {String} title If supplied, a header element is created containing this text and added into the top of
143 * the dropdown list (defaults to undefined, with no header element)
147 * @cfg {String/Roo.Template} tpl The template to use to render the output default is '<a class="dropdown-item" href="#">{' + this.displayField + '}</a>'
151 * @cfg {Number} listWidth The width in pixels of the dropdown list (defaults to the width of the ComboBox field)
153 </span><span class="jsdoc-var">listWidth</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
154 </span><span class="jsdoc-comment">/**
155 * @cfg {String} displayField The underlying data field name to bind to this CombBox (defaults to undefined if
156 * mode = 'remote' or 'text' if mode = 'local')
158 </span><span class="jsdoc-var">displayField</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
160 </span><span class="jsdoc-comment">/**
161 * @cfg {String} valueField The underlying data value name to bind to this CombBox (defaults to undefined if
162 * mode = 'remote' or 'value' if mode = 'local').
163 * Note: use of a valueField requires the user make a selection
164 * in order for a value to be mapped.
166 </span><span class="jsdoc-var">valueField</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
167 </span><span class="jsdoc-comment">/**
168 * @cfg {String} modalTitle The title of the dialog that pops up on mobile views.
170 </span><span class="jsdoc-var">modalTitle </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
172 </span><span class="jsdoc-comment">/**
173 * @cfg {String} hiddenName If specified, a hidden form field with this name is dynamically generated to store the
174 * field's data value (defaults to the underlying DOM element's name)
176 </span><span class="jsdoc-var">hiddenName</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
177 </span><span class="jsdoc-comment">/**
178 * @cfg {String} listClass CSS class to apply to the dropdown list element (defaults to '')
180 </span><span class="jsdoc-var">listClass</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
181 </span><span class="jsdoc-comment">/**
182 * @cfg {String} selectedClass CSS class to apply to the selected item in the dropdown list (defaults to 'x-combo-selected')
184 </span><span class="jsdoc-var">selectedClass</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'active'</span><span class="jsdoc-syntax">,
186 </span><span class="jsdoc-comment">/**
187 * @cfg {Boolean/String} shadow True or "sides" for the default effect, "frame" for 4-way shadow, and "drop" for bottom-right
189 </span><span class="jsdoc-var">shadow</span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'sides'</span><span class="jsdoc-syntax">,
190 </span><span class="jsdoc-comment">/**
191 * @cfg {String} listAlign A valid anchor position value. See {@link Roo.Element#alignTo} for details on supported
192 * anchor positions (defaults to 'tl-bl')
194 </span><span class="jsdoc-var">listAlign</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tl-bl?'</span><span class="jsdoc-syntax">,
195 </span><span class="jsdoc-comment">/**
196 * @cfg {Number} maxHeight The maximum height in pixels of the dropdown list before scrollbars are shown (defaults to 300)
198 </span><span class="jsdoc-var">maxHeight</span><span class="jsdoc-syntax">: 300,
199 </span><span class="jsdoc-comment">/**
200 * @cfg {String} triggerAction The action to execute when the trigger field is activated. Use 'all' to run the
201 * query specified by the allQuery config option (defaults to 'query')
203 </span><span class="jsdoc-var">triggerAction</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'query'</span><span class="jsdoc-syntax">,
204 </span><span class="jsdoc-comment">/**
205 * @cfg {Number} minChars The minimum number of characters the user must type before autocomplete and typeahead activate
206 * (defaults to 4, does not apply if editable = false)
208 </span><span class="jsdoc-var">minChars </span><span class="jsdoc-syntax">: 4,
209 </span><span class="jsdoc-comment">/**
210 * @cfg {Boolean} typeAhead True to populate and autoselect the remainder of the text being typed after a configurable
211 * delay (typeAheadDelay) if it matches a known value (defaults to false)
213 </span><span class="jsdoc-var">typeAhead</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
214 </span><span class="jsdoc-comment">/**
215 * @cfg {Number} queryDelay The length of time in milliseconds to delay between the start of typing and sending the
216 * query to filter the dropdown list (defaults to 500 if mode = 'remote' or 10 if mode = 'local')
218 </span><span class="jsdoc-var">queryDelay</span><span class="jsdoc-syntax">: 500,
219 </span><span class="jsdoc-comment">/**
220 * @cfg {Number} pageSize If greater than 0, a paging toolbar is displayed in the footer of the dropdown list and the
221 * filter queries will execute with page start and limit parameters. Only applies when mode = 'remote' (defaults to 0)
223 </span><span class="jsdoc-var">pageSize</span><span class="jsdoc-syntax">: 0,
224 </span><span class="jsdoc-comment">/**
225 * @cfg {Boolean} selectOnFocus True to select any existing text in the field immediately on focus. Only applies
226 * when editable = true (defaults to false)
228 </span><span class="jsdoc-var">selectOnFocus</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
229 </span><span class="jsdoc-comment">/**
230 * @cfg {String} queryParam Name of the query as it will be passed on the querystring (defaults to 'query')
232 </span><span class="jsdoc-var">queryParam</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'query'</span><span class="jsdoc-syntax">,
233 </span><span class="jsdoc-comment">/**
234 * @cfg {String} loadingText The text to display in the dropdown list while data is loading. Only applies
235 * when mode = 'remote' (defaults to 'Loading...')
237 </span><span class="jsdoc-var">loadingText</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Loading...'</span><span class="jsdoc-syntax">,
238 </span><span class="jsdoc-comment">/**
239 * @cfg {Boolean} resizable True to add a resize handle to the bottom of the dropdown list (defaults to false)
241 </span><span class="jsdoc-var">resizable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
242 </span><span class="jsdoc-comment">/**
243 * @cfg {Number} handleHeight The height in pixels of the dropdown list resize handle if resizable = true (defaults to 8)
245 </span><span class="jsdoc-var">handleHeight </span><span class="jsdoc-syntax">: 8,
246 </span><span class="jsdoc-comment">/**
247 * @cfg {Boolean} editable False to prevent the user from typing text directly into the field, just like a
248 * traditional select (defaults to true)
250 </span><span class="jsdoc-var">editable</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
251 </span><span class="jsdoc-comment">/**
252 * @cfg {String} allQuery The text query to send to the server to return all records for the list with no filtering (defaults to '')
254 </span><span class="jsdoc-var">allQuery</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
255 </span><span class="jsdoc-comment">/**
256 * @cfg {String} mode Set to 'local' if the ComboBox loads local data (defaults to 'remote' which loads from the server)
258 </span><span class="jsdoc-var">mode</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'remote'</span><span class="jsdoc-syntax">,
259 </span><span class="jsdoc-comment">/**
260 * @cfg {Number} minListWidth The minimum width of the dropdown list in pixels (defaults to 70, will be ignored if
261 * listWidth has a higher value)
263 </span><span class="jsdoc-var">minListWidth </span><span class="jsdoc-syntax">: 70,
264 </span><span class="jsdoc-comment">/**
265 * @cfg {Boolean} forceSelection True to restrict the selected value to one of the values in the list, false to
266 * allow the user to set arbitrary text into the field (defaults to false)
268 </span><span class="jsdoc-var">forceSelection</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
269 </span><span class="jsdoc-comment">/**
270 * @cfg {Number} typeAheadDelay The length of time in milliseconds to wait until the typeahead text is displayed
271 * if typeAhead = true (defaults to 250)
273 </span><span class="jsdoc-var">typeAheadDelay </span><span class="jsdoc-syntax">: 250,
274 </span><span class="jsdoc-comment">/**
275 * @cfg {String} valueNotFoundText When using a name/value combo, if the value passed to setValue is not found in
276 * the store, valueNotFoundText will be displayed as the field text if defined (defaults to undefined)
278 </span><span class="jsdoc-var">valueNotFoundText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">,
279 </span><span class="jsdoc-comment">/**
280 * @cfg {Boolean} blockFocus Prevents all focus calls, so it can work with things like HTML edtor bar
282 </span><span class="jsdoc-var">blockFocus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
284 </span><span class="jsdoc-comment">/**
285 * @cfg {Boolean} disableClear Disable showing of clear button.
287 </span><span class="jsdoc-var">disableClear </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
288 </span><span class="jsdoc-comment">/**
289 * @cfg {Boolean} alwaysQuery Disable caching of results, and always send query
291 </span><span class="jsdoc-var">alwaysQuery </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
293 </span><span class="jsdoc-comment">/**
294 * @cfg {Boolean} multiple (true|false) ComboBobArray, default false
296 </span><span class="jsdoc-var">multiple </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
298 </span><span class="jsdoc-comment">/**
299 * @cfg {String} invalidClass DEPRICATED - uses BS4 is-valid now
301 </span><span class="jsdoc-var">invalidClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"has-warning"</span><span class="jsdoc-syntax">,
303 </span><span class="jsdoc-comment">/**
304 * @cfg {String} validClass DEPRICATED - uses BS4 is-valid now
306 </span><span class="jsdoc-var">validClass </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"has-success"</span><span class="jsdoc-syntax">,
308 </span><span class="jsdoc-comment">/**
309 * @cfg {Boolean} specialFilter (true|false) special filter default false
311 </span><span class="jsdoc-var">specialFilter </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
313 </span><span class="jsdoc-comment">/**
314 * @cfg {Boolean} mobileTouchView (true|false) show mobile touch view when using a mobile default true
316 </span><span class="jsdoc-var">mobileTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
318 </span><span class="jsdoc-comment">/**
319 * @cfg {Boolean} useNativeIOS (true|false) render it as classic select for ios, not support dynamic load data (default false)
321 </span><span class="jsdoc-var">useNativeIOS </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
323 </span><span class="jsdoc-comment">/**
324 * @cfg {Boolean} mobile_restrict_height (true|false) restrict height for touch view
326 </span><span class="jsdoc-var">mobile_restrict_height </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
328 </span><span class="jsdoc-var">ios_options </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
330 </span><span class="jsdoc-comment">//private
331 </span><span class="jsdoc-var">addicon </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
332 </span><span class="jsdoc-var">editicon</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
334 </span><span class="jsdoc-var">page</span><span class="jsdoc-syntax">: 0,
335 </span><span class="jsdoc-var">hasQuery</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
336 </span><span class="jsdoc-var">append</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
337 </span><span class="jsdoc-var">loadNext</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
338 </span><span class="jsdoc-var">autoFocus </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
339 </span><span class="jsdoc-var">tickable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
340 </span><span class="jsdoc-var">btnPosition </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">,
341 </span><span class="jsdoc-var">triggerList </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
342 </span><span class="jsdoc-var">showToggleBtn </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
343 </span><span class="jsdoc-var">animate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
344 </span><span class="jsdoc-var">emptyResultText</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Empty'</span><span class="jsdoc-syntax">,
345 </span><span class="jsdoc-var">triggerText </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Select'</span><span class="jsdoc-syntax">,
346 </span><span class="jsdoc-var">emptyTitle </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
347 </span><span class="jsdoc-var">width </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
349 </span><span class="jsdoc-comment">// element that contains real text value.. (when hidden is used..)
351 </span><span class="jsdoc-var">getAutoCreate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
353 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
354 </span><span class="jsdoc-comment">//render
356 * Render classic select for iso
359 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
360 </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getAutoCreateNativeIOS</span><span class="jsdoc-syntax">();
361 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
364 </span><span class="jsdoc-comment">/*
368 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isTouch </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.mobileTouchView</span><span class="jsdoc-syntax">){
369 </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getAutoCreateTouchView</span><span class="jsdoc-syntax">();
370 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;;
373 </span><span class="jsdoc-comment">/*
376 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
377 </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.getAutoCreate.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
378 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
381 </span><span class="jsdoc-comment">/*
382 * ComboBox with tickable selections
385 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">align </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.labelAlign </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.parentLabelAlign</span><span class="jsdoc-syntax">();
387 </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= {
388 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-group roo-combobox-tickable' </span><span class="jsdoc-comment">//input-group
389 </span><span class="jsdoc-syntax">};
391 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">btn_text_select </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
392 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">btn_text_done </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
393 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">btn_text_cancel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
395 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.btn_text_show</span><span class="jsdoc-syntax">) {
396 </span><span class="jsdoc-var">btn_text_select </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'Select'</span><span class="jsdoc-syntax">;
397 </span><span class="jsdoc-var">btn_text_done </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'Done'</span><span class="jsdoc-syntax">;
398 </span><span class="jsdoc-var">btn_text_cancel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'Cancel'</span><span class="jsdoc-syntax">;
401 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">buttons </span><span class="jsdoc-syntax">= {
402 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
403 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'tickable-buttons'</span><span class="jsdoc-syntax">,
404 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
406 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
407 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
408 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-link btn-edit pull-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.btnPosition</span><span class="jsdoc-syntax">,
409 </span><span class="jsdoc-comment">//html : this.triggerText
410 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">btn_text_select
411 </span><span class="jsdoc-syntax">},
413 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
414 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
415 </span><span class="jsdoc-var">name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ok'</span><span class="jsdoc-syntax">,
416 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-link btn-ok pull-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.btnPosition</span><span class="jsdoc-syntax">,
417 </span><span class="jsdoc-comment">//html : 'Done'
418 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">btn_text_done
419 </span><span class="jsdoc-syntax">},
421 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
422 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
423 </span><span class="jsdoc-var">name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'cancel'</span><span class="jsdoc-syntax">,
424 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-link btn-cancel pull-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.btnPosition</span><span class="jsdoc-syntax">,
425 </span><span class="jsdoc-comment">//html : 'Cancel'
426 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">btn_text_cancel
427 </span><span class="jsdoc-syntax">}
431 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
432 </span><span class="jsdoc-var">buttons.cn.unshift</span><span class="jsdoc-syntax">({
433 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
434 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-search-field-input'
435 </span><span class="jsdoc-syntax">});
438 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
440 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">buttons.cn</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">){
441 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.size</span><span class="jsdoc-syntax">) {
442 </span><span class="jsdoc-var">c.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' btn-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">_this.size</span><span class="jsdoc-syntax">;
445 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.disabled</span><span class="jsdoc-syntax">) {
446 </span><span class="jsdoc-var">c.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
450 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">box </span><span class="jsdoc-syntax">= {
451 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
452 </span><span class="jsdoc-var">style </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'display: contents'</span><span class="jsdoc-syntax">,
453 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
455 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
456 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'hidden'</span><span class="jsdoc-syntax">,
457 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-hidden-field'
458 </span><span class="jsdoc-syntax">},
460 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ul'</span><span class="jsdoc-syntax">,
461 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-choices'</span><span class="jsdoc-syntax">,
462 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">:[
464 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">,
465 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-search-field'</span><span class="jsdoc-syntax">,
466 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
467 </span><span class="jsdoc-var">buttons
468 </span><span class="jsdoc-syntax">]
475 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">combobox </span><span class="jsdoc-syntax">= {
476 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-container input-group roo-select2-container-multi'</span><span class="jsdoc-syntax">,
477 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
479 </span><span class="jsdoc-var">box
480 </span><span class="jsdoc-comment">// {
482 // cls: 'typeahead typeahead-long dropdown-menu',
483 // style: 'display:none; max-height:' + this.maxHeight + 'px;'
485 </span><span class="jsdoc-syntax">]
488 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hasFeedback </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.allowBlank</span><span class="jsdoc-syntax">){
490 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">feedback </span><span class="jsdoc-syntax">= {
491 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
492 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'glyphicon form-control-feedback'
493 </span><span class="jsdoc-syntax">};
495 </span><span class="jsdoc-var">combobox.cn.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">feedback</span><span class="jsdoc-syntax">);
500 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">indicator </span><span class="jsdoc-syntax">= {
501 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
502 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-required-indicator ' </span><span class="jsdoc-syntax">+ (</span><span class="jsdoc-var">this.indicatorpos </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'right' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'right' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'left'</span><span class="jsdoc-syntax">) +</span><span class="jsdoc-string">'-indicator text-danger fa fa-lg fa-star'</span><span class="jsdoc-syntax">,
503 </span><span class="jsdoc-var">tooltip </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'This field is required'
504 </span><span class="jsdoc-syntax">};
505 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.version </span><span class="jsdoc-syntax">== 4) {
506 </span><span class="jsdoc-var">indicator </span><span class="jsdoc-syntax">= {
507 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
508 </span><span class="jsdoc-var">style </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'display:none'
509 </span><span class="jsdoc-syntax">};
511 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">align </span><span class="jsdoc-syntax">===</span><span class="jsdoc-string">'left' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.fieldLabel.length</span><span class="jsdoc-syntax">) {
513 </span><span class="jsdoc-var">cfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' roo-form-group-label-left' </span><span class="jsdoc-syntax">+ (</span><span class="jsdoc-var">Roo.bootstrap.version </span><span class="jsdoc-syntax">== 4 ? </span><span class="jsdoc-string">' row' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">);
515 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
516 </span><span class="jsdoc-var">indicator</span><span class="jsdoc-syntax">,
518 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
519 </span><span class="jsdoc-string">'for' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
520 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label col-form-label'</span><span class="jsdoc-syntax">,
521 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
523 </span><span class="jsdoc-syntax">},
525 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">,
526 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
527 </span><span class="jsdoc-var">combobox
528 </span><span class="jsdoc-syntax">]
533 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">labelCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[1];
534 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">contentCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[2];
537 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indicatorpos </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">){
539 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
541 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
542 </span><span class="jsdoc-string">'for' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
543 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label col-form-label'</span><span class="jsdoc-syntax">,
544 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
546 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
547 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
548 </span><span class="jsdoc-syntax">},
549 </span><span class="jsdoc-var">indicator
550 </span><span class="jsdoc-syntax">]
553 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">""</span><span class="jsdoc-syntax">,
554 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
555 </span><span class="jsdoc-var">combobox
556 </span><span class="jsdoc-syntax">]
563 </span><span class="jsdoc-var">labelCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[0];
564 </span><span class="jsdoc-var">contentCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[1];
568 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">> 12){
569 </span><span class="jsdoc-var">labelCfg.style </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">;
571 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.width </span><span class="jsdoc-syntax">* 1 > 0){
572 </span><span class="jsdoc-var">contentCfg.style </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">"width: " </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.width </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'px'</span><span class="jsdoc-syntax">;
574 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">< 13 && </span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">== 0){
575 </span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.labelWidth</span><span class="jsdoc-syntax">;
578 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labellg </span><span class="jsdoc-syntax">> 0){
579 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-lg-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labellg</span><span class="jsdoc-syntax">;
580 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-lg-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labellg</span><span class="jsdoc-syntax">);
583 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">> 0){
584 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-md-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelmd</span><span class="jsdoc-syntax">;
585 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-md-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelmd</span><span class="jsdoc-syntax">);
588 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelsm </span><span class="jsdoc-syntax">> 0){
589 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-sm-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelsm</span><span class="jsdoc-syntax">;
590 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-sm-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelsm</span><span class="jsdoc-syntax">);
593 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelxs </span><span class="jsdoc-syntax">> 0){
594 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-xs-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelxs</span><span class="jsdoc-syntax">;
595 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-xs-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelxs</span><span class="jsdoc-syntax">);
599 } </span><span class="jsdoc-keyword">else if </span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.fieldLabel.length</span><span class="jsdoc-syntax">) {
600 </span><span class="jsdoc-comment">// Roo.log(" label");
601 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
602 </span><span class="jsdoc-var">indicator</span><span class="jsdoc-syntax">,
604 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
605 </span><span class="jsdoc-comment">//cls : 'input-group-addon',
606 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
607 </span><span class="jsdoc-syntax">},
608 </span><span class="jsdoc-var">combobox
609 </span><span class="jsdoc-syntax">];
611 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indicatorpos </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">){
612 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
614 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
615 </span><span class="jsdoc-comment">//cls : 'input-group-addon',
616 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
617 </span><span class="jsdoc-syntax">},
618 </span><span class="jsdoc-var">indicator</span><span class="jsdoc-syntax">,
619 </span><span class="jsdoc-var">combobox
620 </span><span class="jsdoc-syntax">];
624 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
626 </span><span class="jsdoc-comment">// Roo.log(" no label && no align");
627 </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">combobox
630 </span><span class="jsdoc-syntax">}
632 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">=</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
633 [</span><span class="jsdoc-string">'xs'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'sm'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'md'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'lg'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.map</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">){
634 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">]) {
635 </span><span class="jsdoc-var">cfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">size </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">];
639 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
643 </span><span class="jsdoc-var">_initEventsCalled </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
645 </span><span class="jsdoc-comment">// private
646 </span><span class="jsdoc-var">initEvents</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
648 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this._initEventsCalled</span><span class="jsdoc-syntax">) { </span><span class="jsdoc-comment">// as we call render... prevent looping...
649 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
651 </span><span class="jsdoc-var">this._initEventsCalled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
653 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">) {
654 </span><span class="jsdoc-keyword">throw </span><span class="jsdoc-string">"can not find store for combo"</span><span class="jsdoc-syntax">;
657 </span><span class="jsdoc-var">this.indicator </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.indicatorEl</span><span class="jsdoc-syntax">();
659 </span><span class="jsdoc-var">this.store </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.factory</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.data</span><span class="jsdoc-syntax">);
660 </span><span class="jsdoc-var">this.store.parent </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
662 </span><span class="jsdoc-comment">// if we are building from html. then this element is so complex, that we can not really
663 // use the rendered HTML.
664 // so we have to trash and replace the previous code.
665 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.XComponent.build_from_html</span><span class="jsdoc-syntax">) {
666 </span><span class="jsdoc-comment">// remove this element....
667 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">e </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.dom</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">=0;
668 </span><span class="jsdoc-keyword">while </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e </span><span class="jsdoc-syntax">) { </span><span class="jsdoc-var">e </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">e.previousSibling</span><span class="jsdoc-syntax">; ++</span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">;}
670 </span><span class="jsdoc-var">this.el.remove</span><span class="jsdoc-syntax">();
672 </span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">=</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
673 </span><span class="jsdoc-var">this.rendered </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
675 </span><span class="jsdoc-var">this.render</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.parent</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getChildContainer</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">);
678 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
679 </span><span class="jsdoc-var">this.initIOSView</span><span class="jsdoc-syntax">();
680 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
683 </span><span class="jsdoc-comment">/*
687 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isTouch </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.mobileTouchView</span><span class="jsdoc-syntax">){
688 </span><span class="jsdoc-var">this.initTouchView</span><span class="jsdoc-syntax">();
689 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
692 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
693 </span><span class="jsdoc-var">this.initTickableEvents</span><span class="jsdoc-syntax">();
694 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
697 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.initEvents.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
699 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">){
701 </span><span class="jsdoc-var">this.hiddenField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input.form-hidden-field'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
703 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">=
704 </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">:
705 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
707 </span><span class="jsdoc-comment">// prevent input submission
708 </span><span class="jsdoc-var">this.el.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">);
709 </span><span class="jsdoc-var">this.hiddenField.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">);
713 </span><span class="jsdoc-comment">//if(Roo.isGecko){
714 // this.el.dom.setAttribute('autocomplete', 'off');
717 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'x-combo-list'</span><span class="jsdoc-syntax">;
719 </span><span class="jsdoc-comment">//this.list = new Roo.Layer({
720 // shadow: this.shadow, cls: [cls, this.listClass].join(' '), constrain:false
723 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
725 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
726 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">lw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">_this.listWidth </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getWidth</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">_this.minListWidth</span><span class="jsdoc-syntax">);
727 </span><span class="jsdoc-var">_this.list.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">lw</span><span class="jsdoc-syntax">);
728 })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(100);
730 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseover'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewOver</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
731 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousemove'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewMove</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
732 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'scroll'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewScroll</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
734 </span><span class="jsdoc-comment">/*
735 this.list.swallowEvent('mousewheel');
736 this.assetHeight = 0;
739 this.header = this.list.createChild({cls:cls+'-hd', html: this.title});
740 this.assetHeight += this.header.getHeight();
743 this.innerList = this.list.createChild({cls:cls+'-inner'});
744 this.innerList.on('mouseover', this.onViewOver, this);
745 this.innerList.on('mousemove', this.onViewMove, this);
746 this.innerList.setWidth(lw - this.list.getFrameWidth('lr'));
748 if(this.allowBlank && !this.pageSize && !this.disableClear){
749 this.footer = this.list.createChild({cls:cls+'-ft'});
750 this.pageTb = new Roo.Toolbar(this.footer);
754 this.footer = this.list.createChild({cls:cls+'-ft'});
755 this.pageTb = new Roo.PagingToolbar(this.footer, this.store,
756 {pageSize: this.pageSize});
760 if (this.pageTb && this.allowBlank && !this.disableClear) {
762 this.pageTb.add(new Roo.Toolbar.Fill(), {
763 cls: 'x-btn-icon x-btn-clear',
769 _this.onSelect(false, -1);
774 this.assetHeight += this.footer.getHeight();
778 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.tpl</span><span class="jsdoc-syntax">){
779 </span><span class="jsdoc-var">this.tpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.bootstrap.version </span><span class="jsdoc-syntax">== 4 ?
780 </span><span class="jsdoc-string">'<a class="dropdown-item" href="#">{' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.displayField </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'}</a>' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-comment">// 4 does not need <li> and it get's really confisued.
781 </span><span class="jsdoc-string">'<li><a class="dropdown-item" href="#">{' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.displayField </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'}</a></li>'</span><span class="jsdoc-syntax">;
784 </span><span class="jsdoc-var">this.view </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.View</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.list</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.tpl</span><span class="jsdoc-syntax">, {
785 </span><span class="jsdoc-var">singleSelect</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">store</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">selectedClass</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.selectedClass
786 </span><span class="jsdoc-syntax">});
787 </span><span class="jsdoc-comment">//this.view.wrapEl.setDisplayed(false);
788 </span><span class="jsdoc-var">this.view.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
791 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeload'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onBeforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
792 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
793 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loadexception'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoadException</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
794 </span><span class="jsdoc-comment">/*
796 this.resizer = new Roo.Resizable(this.list, {
797 pinned:true, handles:'se'
799 this.resizer.on('resize', function(r, w, h){
800 this.maxHeight = h-this.handleHeight-this.list.getFrameWidth('tb')-this.assetHeight;
802 this.innerList.setWidth(w - this.list.getFrameWidth('lr'));
803 this.restrictHeight();
805 this[this.pageSize?'footer':'innerList'].setStyle('margin-bottom', this.handleHeight+'px');
808 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
809 </span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
810 </span><span class="jsdoc-var">this.setEditable</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
813 </span><span class="jsdoc-comment">/*
815 if (typeof(this.events.add.listeners) != 'undefined') {
817 this.addicon = this.wrap.createChild(
818 {tag: 'img', src: Roo.BLANK_IMAGE_URL, cls: 'x-form-combo-add' });
820 this.addicon.on('click', function(e) {
821 this.fireEvent('add', this);
824 if (typeof(this.events.edit.listeners) != 'undefined') {
826 this.editicon = this.wrap.createChild(
827 {tag: 'img', src: Roo.BLANK_IMAGE_URL, cls: 'x-form-combo-edit' });
829 this.editicon.setStyle('margin-left', '40px');
831 this.editicon.on('click', function(e) {
833 // we fire even if inothing is selected..
834 this.fireEvent('edit', this, this.lastData );
840 </span><span class="jsdoc-var">this.keyNav </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.KeyNav</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">(), {
841 </span><span class="jsdoc-string">"up" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
842 </span><span class="jsdoc-var">this.inKeyMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
843 </span><span class="jsdoc-var">this.selectPrev</span><span class="jsdoc-syntax">();
846 </span><span class="jsdoc-string">"down" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
847 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.isExpanded</span><span class="jsdoc-syntax">()){
848 </span><span class="jsdoc-var">this.onTriggerClick</span><span class="jsdoc-syntax">();
849 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
850 </span><span class="jsdoc-var">this.inKeyMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
851 </span><span class="jsdoc-var">this.selectNext</span><span class="jsdoc-syntax">();
855 </span><span class="jsdoc-string">"enter" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
856 </span><span class="jsdoc-comment">// this.onViewClick();
858 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
860 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"specialkey"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)){
861 </span><span class="jsdoc-var">this.onViewClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
864 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
867 </span><span class="jsdoc-string">"esc" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
868 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
871 </span><span class="jsdoc-string">"tab" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
872 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
874 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"specialkey"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)){
875 </span><span class="jsdoc-var">this.onViewClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
878 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
881 </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
883 </span><span class="jsdoc-var">doRelay </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">foo</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">bar</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">hname</span><span class="jsdoc-syntax">){
884 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">hname </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'down' </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.scope.isExpanded</span><span class="jsdoc-syntax">()){
885 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">Roo.KeyNav.prototype.doRelay.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">);
887 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
890 </span><span class="jsdoc-var">forceKeyDown</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
891 </span><span class="jsdoc-syntax">});
894 </span><span class="jsdoc-var">this.queryDelay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.queryDelay </span><span class="jsdoc-syntax">|| 10,
895 </span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'local' </span><span class="jsdoc-syntax">? 10 : 250);
898 </span><span class="jsdoc-var">this.dqTask </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.DelayedTask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.initQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
900 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.typeAhead</span><span class="jsdoc-syntax">){
901 </span><span class="jsdoc-var">this.taTask </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.DelayedTask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.onTypeAhead</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
903 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
904 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"keyup"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onKeyUp</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
906 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.forceSelection</span><span class="jsdoc-syntax">){
907 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'blur'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.doForce</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
910 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
911 </span><span class="jsdoc-var">this.choices </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul.roo-select2-choices'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
912 </span><span class="jsdoc-var">this.searchField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul li.roo-select2-search-field'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
916 </span><span class="jsdoc-var">initTickableEvents</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
918 </span><span class="jsdoc-var">this.createList</span><span class="jsdoc-syntax">();
920 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">){
922 </span><span class="jsdoc-var">this.hiddenField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input.form-hidden-field'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
924 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">=
925 </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">:
926 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
928 </span><span class="jsdoc-comment">// prevent input submission
929 </span><span class="jsdoc-var">this.el.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">);
930 </span><span class="jsdoc-var">this.hiddenField.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">);
935 </span><span class="jsdoc-comment">// this.list = this.el.select('ul.dropdown-menu',true).first();
937 </span><span class="jsdoc-var">this.choices </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul.roo-select2-choices'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
938 </span><span class="jsdoc-var">this.searchField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul li.roo-select2-search-field'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
939 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.triggerList</span><span class="jsdoc-syntax">){
940 </span><span class="jsdoc-var">this.searchField.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"click"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onSearchFieldClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, {</span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">});
943 </span><span class="jsdoc-var">this.trigger </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.tickable-buttons > .btn-edit'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
944 </span><span class="jsdoc-var">this.trigger.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"click"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTickableTriggerClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, {</span><span class="jsdoc-var">preventDefault</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">});
946 </span><span class="jsdoc-var">this.okBtn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.tickable-buttons > .btn-ok'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
947 </span><span class="jsdoc-var">this.cancelBtn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.tickable-buttons > .btn-cancel'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
949 </span><span class="jsdoc-var">this.okBtn.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.okBtn</span><span class="jsdoc-syntax">);
950 </span><span class="jsdoc-var">this.cancelBtn.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.cancelBtn</span><span class="jsdoc-syntax">);
952 </span><span class="jsdoc-var">this.trigger.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
953 </span><span class="jsdoc-var">this.okBtn.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
954 </span><span class="jsdoc-var">this.cancelBtn.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
956 </span><span class="jsdoc-var">this.okBtn.hide</span><span class="jsdoc-syntax">();
957 </span><span class="jsdoc-var">this.cancelBtn.hide</span><span class="jsdoc-syntax">();
959 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
961 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
962 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">lw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">_this.listWidth </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getWidth</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">_this.minListWidth</span><span class="jsdoc-syntax">);
963 </span><span class="jsdoc-var">_this.list.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">lw</span><span class="jsdoc-syntax">);
964 })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(100);
966 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mouseover'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewOver</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
967 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousemove'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewMove</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
969 </span><span class="jsdoc-var">this.list.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'scroll'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewScroll</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
971 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.tpl</span><span class="jsdoc-syntax">){
972 </span><span class="jsdoc-var">this.tpl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'<li class="roo-select2-result"><div class="checkbox"><input id="{roo-id}"' </span><span class="jsdoc-syntax">+
973 </span><span class="jsdoc-string">'type="checkbox" {roo-data-checked}><label for="{roo-id}"><b>{' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.displayField </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'}</b></label></div></li>'</span><span class="jsdoc-syntax">;
976 </span><span class="jsdoc-var">this.view </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.View</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.list</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.tpl</span><span class="jsdoc-syntax">, {
977 </span><span class="jsdoc-var">singleSelect</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
978 </span><span class="jsdoc-var">tickable</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
979 </span><span class="jsdoc-var">parent</span><span class="jsdoc-syntax">:</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
980 </span><span class="jsdoc-var">store</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">,
981 </span><span class="jsdoc-var">selectedClass</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.selectedClass
982 </span><span class="jsdoc-syntax">});
984 </span><span class="jsdoc-comment">//this.view.wrapEl.setDisplayed(false);
985 </span><span class="jsdoc-var">this.view.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onViewClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
989 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeload'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onBeforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
990 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
991 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loadexception'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoadException</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
993 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
994 </span><span class="jsdoc-var">this.keyNav </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.KeyNav</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">(), {
995 </span><span class="jsdoc-string">"up" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
996 </span><span class="jsdoc-var">this.inKeyMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
997 </span><span class="jsdoc-var">this.selectPrev</span><span class="jsdoc-syntax">();
1000 </span><span class="jsdoc-string">"down" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1001 </span><span class="jsdoc-var">this.inKeyMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1002 </span><span class="jsdoc-var">this.selectNext</span><span class="jsdoc-syntax">();
1005 </span><span class="jsdoc-string">"enter" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1006 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"specialkey"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)){
1007 </span><span class="jsdoc-var">this.onViewClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1010 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1013 </span><span class="jsdoc-string">"esc" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1014 </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1017 </span><span class="jsdoc-string">"tab" </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1018 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"specialkey"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
1020 </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1022 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1025 </span><span class="jsdoc-var">scope </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
1027 </span><span class="jsdoc-var">doRelay </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">fn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">key</span><span class="jsdoc-syntax">){
1028 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.scope.isExpanded</span><span class="jsdoc-syntax">()){
1029 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">Roo.KeyNav.prototype.doRelay.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">arguments</span><span class="jsdoc-syntax">);
1031 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1034 </span><span class="jsdoc-var">forceKeyDown</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
1035 </span><span class="jsdoc-syntax">});
1038 </span><span class="jsdoc-var">this.queryDelay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.queryDelay </span><span class="jsdoc-syntax">|| 10,
1039 </span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'local' </span><span class="jsdoc-syntax">? 10 : 250);
1042 </span><span class="jsdoc-var">this.dqTask </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.DelayedTask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.initQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1044 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.typeAhead</span><span class="jsdoc-syntax">){
1045 </span><span class="jsdoc-var">this.taTask </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.util.DelayedTask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.onTypeAhead</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1048 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1049 </span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"keyup"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onKeyUp</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1052 </span><span class="jsdoc-var">this.indicator </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.indicatorEl</span><span class="jsdoc-syntax">();
1054 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indicator</span><span class="jsdoc-syntax">){
1055 </span><span class="jsdoc-var">this.indicator.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
1056 </span><span class="jsdoc-var">this.indicator.hide</span><span class="jsdoc-syntax">();
1061 </span><span class="jsdoc-var">onDestroy </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1062 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.view</span><span class="jsdoc-syntax">){
1063 </span><span class="jsdoc-var">this.view.setStore</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">);
1064 </span><span class="jsdoc-var">this.view.el.removeAllListeners</span><span class="jsdoc-syntax">();
1065 </span><span class="jsdoc-var">this.view.el.remove</span><span class="jsdoc-syntax">();
1066 </span><span class="jsdoc-var">this.view.purgeListeners</span><span class="jsdoc-syntax">();
1068 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.list</span><span class="jsdoc-syntax">){
1069 </span><span class="jsdoc-var">this.list.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1072 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">){
1073 </span><span class="jsdoc-var">this.store.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeload'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onBeforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1074 </span><span class="jsdoc-var">this.store.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1075 </span><span class="jsdoc-var">this.store.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loadexception'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onLoadException</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1077 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.onDestroy.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1080 </span><span class="jsdoc-comment">// private
1081 </span><span class="jsdoc-var">fireKey </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1082 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.isNavKeyPress</span><span class="jsdoc-syntax">() && !</span><span class="jsdoc-var">this.list.isVisible</span><span class="jsdoc-syntax">()){
1083 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"specialkey"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
1087 </span><span class="jsdoc-comment">// private
1088 </span><span class="jsdoc-var">onResize</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">w</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">h</span><span class="jsdoc-syntax">)
1092 </span><span class="jsdoc-comment">// Roo.bootstrap.form.ComboBox.superclass.onResize.apply(this, arguments);
1094 // if(typeof w != 'number'){
1095 // // we do not handle it!?!?
1098 // var tw = this.trigger.getWidth();
1099 // // tw += this.addicon ? this.addicon.getWidth() : 0;
1100 // // tw += this.editicon ? this.editicon.getWidth() : 0;
1102 // this.inputEl().setWidth( this.adjustWidth('input', x));
1104 // //this.trigger.setStyle('left', x+'px');
1106 // if(this.list && this.listWidth === undefined){
1107 // var lw = Math.max(x + this.trigger.getWidth(), this.minListWidth);
1108 // this.list.setWidth(lw);
1109 // this.innerList.setWidth(lw - this.list.getFrameWidth('lr'));
1114 </span><span class="jsdoc-syntax">},
1116 </span><span class="jsdoc-comment">/**
1117 * Allow or prevent the user from directly editing the field text. If false is passed,
1118 * the user will only be able to select from the items defined in the dropdown list. This method
1119 * is the runtime equivalent of setting the 'editable' config option at config time.
1120 * @param {Boolean} value True to allow the user to directly edit the field text
1122 </span><span class="jsdoc-var">setEditable </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">){
1123 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1124 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1126 </span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">;
1127 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">){
1128 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'readOnly'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
1129 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTriggerClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1130 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-combo-noedit'</span><span class="jsdoc-syntax">);
1131 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1132 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'readOnly'</span><span class="jsdoc-syntax">);
1133 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTriggerClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1134 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'x-combo-noedit'</span><span class="jsdoc-syntax">);
1138 </span><span class="jsdoc-comment">// private
1140 </span><span class="jsdoc-var">onBeforeLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">combo</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">){
1141 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.hasFocus</span><span class="jsdoc-syntax">){
1142 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1144 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">opts.add</span><span class="jsdoc-syntax">) {
1145 </span><span class="jsdoc-var">this.list.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'<li class="loading-indicator">'</span><span class="jsdoc-syntax">+(</span><span class="jsdoc-var">this.loadingText</span><span class="jsdoc-syntax">||</span><span class="jsdoc-string">'loading'</span><span class="jsdoc-syntax">)+</span><span class="jsdoc-string">'</li>' </span><span class="jsdoc-syntax">;
1147 </span><span class="jsdoc-var">this.restrictHeight</span><span class="jsdoc-syntax">();
1148 </span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">= -1;
1151 </span><span class="jsdoc-comment">// private
1152 </span><span class="jsdoc-var">onLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1154 </span><span class="jsdoc-var">this.hasQuery </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1156 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.hasFocus</span><span class="jsdoc-syntax">){
1157 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1160 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.loading</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">){
1161 </span><span class="jsdoc-var">this.loading.hide</span><span class="jsdoc-syntax">();
1164 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">() > 0){
1166 </span><span class="jsdoc-var">this.expand</span><span class="jsdoc-syntax">();
1167 </span><span class="jsdoc-var">this.restrictHeight</span><span class="jsdoc-syntax">();
1168 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.lastQuery </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">this.allQuery</span><span class="jsdoc-syntax">){
1169 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
1170 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.select</span><span class="jsdoc-syntax">();
1173 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(
1174 !</span><span class="jsdoc-var">this.selectByValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.value</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">) &&
1175 </span><span class="jsdoc-var">this.autoFocus </span><span class="jsdoc-syntax">&&
1177 !</span><span class="jsdoc-var">this.store.lastOptions </span><span class="jsdoc-syntax">||
1178 </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.lastOptions.add</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">||
1179 </span><span class="jsdoc-var">this.store.lastOptions.add </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-keyword">true
1180 </span><span class="jsdoc-syntax">)
1182 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(0, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
1184 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1185 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.autoFocus</span><span class="jsdoc-syntax">){
1186 </span><span class="jsdoc-var">this.selectNext</span><span class="jsdoc-syntax">();
1188 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.typeAhead </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.lastKey </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">Roo.EventObject.BACKSPACE </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.lastKey </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">Roo.EventObject.DELETE</span><span class="jsdoc-syntax">){
1189 </span><span class="jsdoc-var">this.taTask.delay</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.typeAheadDelay</span><span class="jsdoc-syntax">);
1192 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1193 </span><span class="jsdoc-var">this.onEmptyResults</span><span class="jsdoc-syntax">();
1196 </span><span class="jsdoc-comment">//this.el.focus();
1197 </span><span class="jsdoc-syntax">},
1198 </span><span class="jsdoc-comment">// private
1199 </span><span class="jsdoc-var">onLoadException </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
1201 </span><span class="jsdoc-var">this.hasQuery </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1203 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.loading</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">){
1204 </span><span class="jsdoc-var">this.loading.hide</span><span class="jsdoc-syntax">();
1207 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1208 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1211 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
1212 </span><span class="jsdoc-comment">// only causes errors at present
1213 //Roo.log(this.store.reader.jsonData);
1214 //if (this.store && typeof(this.store.reader.jsonData.errorMsg) != 'undefined') {
1216 //Roo.MessageBox.alert("Error loading",this.store.reader.jsonData.errorMsg);
1220 </span><span class="jsdoc-syntax">},
1221 </span><span class="jsdoc-comment">// private
1222 </span><span class="jsdoc-var">onTypeAhead </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1223 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">() > 0){
1224 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getAt</span><span class="jsdoc-syntax">(0);
1225 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">newValue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
1226 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">len </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">newValue.length</span><span class="jsdoc-syntax">;
1227 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">selStart </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.length</span><span class="jsdoc-syntax">;
1229 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">selStart </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">len</span><span class="jsdoc-syntax">){
1230 </span><span class="jsdoc-var">this.setRawValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">newValue</span><span class="jsdoc-syntax">);
1231 </span><span class="jsdoc-var">this.selectText</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">selStart</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">newValue.length</span><span class="jsdoc-syntax">);
1236 </span><span class="jsdoc-comment">// private
1237 </span><span class="jsdoc-var">onSelect </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">){
1239 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeselect'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1241 </span><span class="jsdoc-var">this.setFromData</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">> -1 ? </span><span class="jsdoc-var">record.data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1243 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
1244 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
1248 </span><span class="jsdoc-comment">/**
1249 * Returns the currently selected field value or empty string if no value is set.
1250 * @return {String} value The selected value
1252 </span><span class="jsdoc-var">getValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
1254 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
1255 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.ios_options</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.selectedIndex</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">];
1258 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
1259 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenField</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.value</span><span class="jsdoc-syntax">;
1262 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">){
1263 </span><span class="jsdoc-keyword">return typeof </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1264 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1265 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.getValue.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1269 </span><span class="jsdoc-var">getRawValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
1271 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
1272 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.ios_options</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.selectedIndex</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
1275 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">();
1277 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
1280 </span><span class="jsdoc-comment">/**
1281 * Clears any text/value currently set in the field
1283 </span><span class="jsdoc-var">clearValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1285 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenField</span><span class="jsdoc-syntax">){
1286 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1288 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1289 </span><span class="jsdoc-var">this.setRawValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">);
1290 </span><span class="jsdoc-var">this.lastSelectionText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1291 </span><span class="jsdoc-var">this.lastData </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1293 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.closeTriggerEl</span><span class="jsdoc-syntax">();
1295 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">){
1296 </span><span class="jsdoc-var">close.hide</span><span class="jsdoc-syntax">();
1299 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
1303 </span><span class="jsdoc-comment">/**
1304 * Sets the specified value into the field. If the value finds a match, the corresponding record text
1305 * will be displayed in the field. If the value does not match the data value of an existing item,
1306 * and the valueNotFoundText config option is defined, it will be displayed as the default field text.
1307 * Otherwise the field will be blank (although the value will still be set).
1308 * @param {String} value The value to match
1310 </span><span class="jsdoc-var">setValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">)
1312 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
1313 </span><span class="jsdoc-var">this.setIOSValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1314 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1317 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
1318 </span><span class="jsdoc-var">this.syncValue</span><span class="jsdoc-syntax">();
1319 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1322 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
1323 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">){
1324 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.findRecord</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1325 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">){
1326 </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
1327 }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueNotFoundText </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined</span><span class="jsdoc-syntax">){
1328 </span><span class="jsdoc-var">text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.valueNotFoundText</span><span class="jsdoc-syntax">;
1331 </span><span class="jsdoc-var">this.lastSelectionText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">;
1332 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenField</span><span class="jsdoc-syntax">){
1333 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
1335 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.setValue.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">text</span><span class="jsdoc-syntax">);
1336 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
1338 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.closeTriggerEl</span><span class="jsdoc-syntax">();
1340 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">){
1341 (</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">&& (</span><span class="jsdoc-var">v.length </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">* 1 > 0)) ? </span><span class="jsdoc-var">close.show</span><span class="jsdoc-syntax">() : </span><span class="jsdoc-var">close.hide</span><span class="jsdoc-syntax">();
1344 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
1346 </span><span class="jsdoc-comment">/**
1347 * @property {Object} the last set data for the element
1350 </span><span class="jsdoc-var">lastData </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
1351 </span><span class="jsdoc-comment">/**
1352 * Sets the value of the field based on a object which is related to the record format for the store.
1353 * @param {Object} value the value to set as. or false on reset?
1355 </span><span class="jsdoc-var">setFromData </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">){
1357 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
1358 </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
1359 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1362 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">dv </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// display value
1363 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">vv </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// value value..
1364 </span><span class="jsdoc-var">this.lastData </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
1365 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">) {
1366 </span><span class="jsdoc-var">dv </span><span class="jsdoc-syntax">= !</span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">]) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
1367 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1368 </span><span class="jsdoc-comment">// this is an error condition!!!
1369 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'no displayField value set for '</span><span class="jsdoc-syntax">+ (</span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.id</span><span class="jsdoc-syntax">));
1372 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">){
1373 </span><span class="jsdoc-var">vv </span><span class="jsdoc-syntax">= !</span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">dv </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">];
1376 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.closeTriggerEl</span><span class="jsdoc-syntax">();
1378 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">){
1379 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">dv.length </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">vv </span><span class="jsdoc-syntax">* 1 > 0){
1380 </span><span class="jsdoc-var">close.show</span><span class="jsdoc-syntax">() ;
1381 </span><span class="jsdoc-var">this.blockFocus</span><span class="jsdoc-syntax">=</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1382 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1383 </span><span class="jsdoc-var">close.hide</span><span class="jsdoc-syntax">();
1387 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenField</span><span class="jsdoc-syntax">){
1388 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">vv</span><span class="jsdoc-syntax">;
1390 </span><span class="jsdoc-var">this.lastSelectionText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dv</span><span class="jsdoc-syntax">;
1391 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.setValue.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dv</span><span class="jsdoc-syntax">);
1392 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">vv</span><span class="jsdoc-syntax">;
1393 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1395 </span><span class="jsdoc-comment">// no hidden field.. - we store the value in 'value', but still display
1396 // display field!!!!
1397 </span><span class="jsdoc-var">this.lastSelectionText </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">dv</span><span class="jsdoc-syntax">;
1398 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.superclass.setValue.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">dv</span><span class="jsdoc-syntax">);
1399 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">vv</span><span class="jsdoc-syntax">;
1404 </span><span class="jsdoc-comment">// private
1405 </span><span class="jsdoc-var">reset </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1406 </span><span class="jsdoc-comment">// overridden so that last data is reset..
1408 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
1409 </span><span class="jsdoc-var">this.clearItem</span><span class="jsdoc-syntax">();
1410 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1413 </span><span class="jsdoc-var">this.setValue</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.originalValue</span><span class="jsdoc-syntax">);
1414 </span><span class="jsdoc-comment">//this.clearInvalid();
1415 </span><span class="jsdoc-var">this.lastData </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1416 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.view</span><span class="jsdoc-syntax">) {
1417 </span><span class="jsdoc-var">this.view.clearSelections</span><span class="jsdoc-syntax">();
1420 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
1422 </span><span class="jsdoc-comment">// private
1423 </span><span class="jsdoc-var">findRecord </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">prop</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">){
1424 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">;
1425 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">() > 0){
1426 </span><span class="jsdoc-var">this.store.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">){
1427 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">prop</span><span class="jsdoc-syntax">] == </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">){
1428 </span><span class="jsdoc-var">record </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">;
1429 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
1431 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1434 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">record</span><span class="jsdoc-syntax">;
1437 </span><span class="jsdoc-var">getName</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
1439 </span><span class="jsdoc-comment">// returns hidden if it's set..
1440 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.rendered</span><span class="jsdoc-syntax">) {</span><span class="jsdoc-keyword">return </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">};
1441 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">!</span><span class="jsdoc-var">this.hiddenName </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.name </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.name </span><span class="jsdoc-syntax">: (</span><span class="jsdoc-var">this.hiddenName </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">);
1444 </span><span class="jsdoc-comment">// private
1445 </span><span class="jsdoc-var">onViewMove </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">){
1446 </span><span class="jsdoc-var">this.inKeyMode </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1449 </span><span class="jsdoc-comment">// private
1450 </span><span class="jsdoc-var">onViewOver </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">){
1451 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inKeyMode</span><span class="jsdoc-syntax">){ </span><span class="jsdoc-comment">// prevent key nav and mouse over conflicts
1452 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1454 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">item </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.findItemFromChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">);
1456 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">){
1457 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">item</span><span class="jsdoc-syntax">);
1458 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1462 </span><span class="jsdoc-comment">// private
1463 </span><span class="jsdoc-var">onViewClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">view</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">doFocus</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
1465 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getSelectedIndexes</span><span class="jsdoc-syntax">()[0];
1467 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getAt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
1469 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
1471 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">e.getTarget</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.nodeName.toLowerCase</span><span class="jsdoc-syntax">() != </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">){
1472 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1475 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1476 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
1478 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickItems</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">){
1480 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">_this.valueField</span><span class="jsdoc-syntax">] == </span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">_this.valueField</span><span class="jsdoc-syntax">]){
1481 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1482 </span><span class="jsdoc-var">_this.tickItems.splice</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">, 1);
1484 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">view </span><span class="jsdoc-syntax">== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1485 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.view.getNodes</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">)[0])</span><span class="jsdoc-var">.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.checked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1488 </span><span class="jsdoc-var">rm </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1489 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1493 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rm</span><span class="jsdoc-syntax">){
1494 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1497 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tick'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.view.getNodes</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">)[0])</span><span class="jsdoc-var">.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.checked</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1498 </span><span class="jsdoc-var">this.tickItems.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">);
1501 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">view </span><span class="jsdoc-syntax">== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1502 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.view.getNodes</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">)[0])</span><span class="jsdoc-var">.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.checked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1505 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1508 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">){
1509 </span><span class="jsdoc-var">this.onSelect</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
1511 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">doFocus </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.blockFocus</span><span class="jsdoc-syntax">){
1512 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
1516 </span><span class="jsdoc-comment">// private
1517 </span><span class="jsdoc-var">restrictHeight </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1518 </span><span class="jsdoc-comment">//this.innerList.dom.style.height = '';
1519 //var inner = this.innerList.dom;
1520 //var h = Math.max(inner.clientHeight, inner.offsetHeight, inner.scrollHeight);
1521 //this.innerList.setHeight(h < this.maxHeight ? 'auto' : this.maxHeight);
1522 //this.list.beginUpdate();
1523 //this.list.setHeight(this.innerList.getHeight()+this.list.getFrameWidth('tb')+(this.resizable?this.handleHeight:0)+this.assetHeight);
1524 </span><span class="jsdoc-var">this.list.alignTo</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">this.listAlign</span><span class="jsdoc-syntax">);
1525 </span><span class="jsdoc-var">this.list.alignTo</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">this.listAlign</span><span class="jsdoc-syntax">);
1526 </span><span class="jsdoc-comment">//this.list.endUpdate();
1527 </span><span class="jsdoc-syntax">},
1529 </span><span class="jsdoc-comment">// private
1530 </span><span class="jsdoc-var">onEmptyResults </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1532 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1533 </span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1534 </span><span class="jsdoc-var">this.restrictHeight</span><span class="jsdoc-syntax">();
1535 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1538 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
1541 </span><span class="jsdoc-comment">/**
1542 * Returns true if the dropdown list is expanded, else false.
1544 </span><span class="jsdoc-var">isExpanded </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1545 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.list.isVisible</span><span class="jsdoc-syntax">();
1548 </span><span class="jsdoc-comment">/**
1549 * Select an item in the dropdown list by its data value. This function does NOT cause the select event to fire.
1550 * The store must be loaded and the list expanded for this function to work, otherwise use setValue.
1551 * @param {String} value The data value of the item to select
1552 * @param {Boolean} scrollIntoView False to prevent the dropdown list from autoscrolling to display the
1553 * selected item if it is not currently in view (defaults to true)
1554 * @return {Boolean} True if the value matched an item in the list, else false
1556 </span><span class="jsdoc-var">selectByValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scrollIntoView</span><span class="jsdoc-syntax">){
1557 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">){
1558 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.findRecord</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1559 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">){
1560 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">scrollIntoView</span><span class="jsdoc-syntax">);
1561 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1564 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
1567 </span><span class="jsdoc-comment">/**
1568 * Select an item in the dropdown list by its numeric index in the list. This function does NOT cause the select event to fire.
1569 * The store must be loaded and the list expanded for this function to work, otherwise use setValue.
1570 * @param {Number} index The zero-based index of the list item to select
1571 * @param {Boolean} scrollIntoView False to prevent the dropdown list from autoscrolling to display the
1572 * selected item if it is not currently in view (defaults to true)
1574 </span><span class="jsdoc-var">select </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">scrollIntoView</span><span class="jsdoc-syntax">){
1575 </span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">;
1576 </span><span class="jsdoc-var">this.view.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
1577 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">scrollIntoView </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
1578 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getNode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">);
1579 </span><span class="jsdoc-comment">/*
1580 * el && !this.multiple && !this.tickable // not sure why we disable multiple before..
1582 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">){
1583 </span><span class="jsdoc-var">this.list.scrollChildIntoView</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1588 </span><span class="jsdoc-comment">// private
1589 </span><span class="jsdoc-var">selectNext </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1590 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">();
1591 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">> 0){
1592 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">== -1){
1593 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(0);
1594 }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">-1){
1595 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex</span><span class="jsdoc-syntax">+1);
1600 </span><span class="jsdoc-comment">// private
1601 </span><span class="jsdoc-var">selectPrev </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1602 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">();
1603 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct </span><span class="jsdoc-syntax">> 0){
1604 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">== -1){
1605 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(0);
1606 }</span><span class="jsdoc-keyword">else if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">!= 0){
1607 </span><span class="jsdoc-var">this.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.selectedIndex</span><span class="jsdoc-syntax">-1);
1612 </span><span class="jsdoc-comment">// private
1613 </span><span class="jsdoc-var">onKeyUp </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1614 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">e.isSpecialKey</span><span class="jsdoc-syntax">()){
1615 </span><span class="jsdoc-var">this.lastKey </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">();
1616 </span><span class="jsdoc-var">this.dqTask.delay</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.queryDelay</span><span class="jsdoc-syntax">);
1620 </span><span class="jsdoc-comment">// private
1621 </span><span class="jsdoc-var">validateBlur </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1622 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-syntax">!</span><span class="jsdoc-var">this.list </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">this.list.isVisible</span><span class="jsdoc-syntax">();
1625 </span><span class="jsdoc-comment">// private
1626 </span><span class="jsdoc-var">initQuery </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1628 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">();
1630 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1631 </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getValue</span><span class="jsdoc-syntax">();
1634 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1637 </span><span class="jsdoc-comment">// private
1638 </span><span class="jsdoc-var">doForce </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1639 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value.length </span><span class="jsdoc-syntax">> 0){
1640 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">=
1641 </span><span class="jsdoc-var">this.lastSelectionText </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.lastSelectionText</span><span class="jsdoc-syntax">;
1646 </span><span class="jsdoc-comment">/**
1647 * Execute a query to filter the dropdown list. Fires the beforequery event prior to performing the
1648 * query allowing the query action to be canceled if needed.
1649 * @param {String} query The SQL query to execute
1650 * @param {Boolean} forceAll True to force the query to execute even if there are currently fewer characters
1651 * in the field than the minimum specified by the minChars config option. It also clears any filter previously
1652 * saved in the current store (defaults to false)
1654 </span><span class="jsdoc-var">doQuery </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">forceAll</span><span class="jsdoc-syntax">){
1656 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">q </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">q </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">){
1657 </span><span class="jsdoc-var">q </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1659 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">qe </span><span class="jsdoc-syntax">= {
1660 </span><span class="jsdoc-var">query</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">,
1661 </span><span class="jsdoc-var">forceAll</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">forceAll</span><span class="jsdoc-syntax">,
1662 </span><span class="jsdoc-var">combo</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
1663 </span><span class="jsdoc-var">cancel</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">false
1664 </span><span class="jsdoc-syntax">};
1665 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforequery'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">qe</span><span class="jsdoc-syntax">)===</span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">qe.cancel</span><span class="jsdoc-syntax">){
1666 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
1668 </span><span class="jsdoc-var">q </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">qe.query</span><span class="jsdoc-syntax">;
1670 </span><span class="jsdoc-var">forceAll </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">qe.forceAll</span><span class="jsdoc-syntax">;
1671 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">forceAll </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">|| (</span><span class="jsdoc-var">q.length </span><span class="jsdoc-syntax">>= </span><span class="jsdoc-var">this.minChars</span><span class="jsdoc-syntax">)){
1673 </span><span class="jsdoc-var">this.hasQuery </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1675 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.lastQuery </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-var">q </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.alwaysQuery</span><span class="jsdoc-syntax">){
1676 </span><span class="jsdoc-var">this.lastQuery </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">;
1677 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'local'</span><span class="jsdoc-syntax">){
1678 </span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">= -1;
1679 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">forceAll</span><span class="jsdoc-syntax">){
1680 </span><span class="jsdoc-var">this.store.clearFilter</span><span class="jsdoc-syntax">();
1681 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1683 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.specialFilter</span><span class="jsdoc-syntax">){
1684 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'specialfilter'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1685 </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">();
1686 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1689 </span><span class="jsdoc-var">this.store.filter</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">);
1692 </span><span class="jsdoc-var">this.store.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"datachanged"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">);
1694 </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">();
1697 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1699 </span><span class="jsdoc-var">this.store.baseParams</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.queryParam</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">;
1701 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">options </span><span class="jsdoc-syntax">= {</span><span class="jsdoc-var">params </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.getParams</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">)};
1703 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.loadNext</span><span class="jsdoc-syntax">){
1704 </span><span class="jsdoc-var">options.add </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1705 </span><span class="jsdoc-var">options.params.start </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.page </span><span class="jsdoc-syntax">* </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">;
1708 </span><span class="jsdoc-var">this.store.load</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">options</span><span class="jsdoc-syntax">);
1710 </span><span class="jsdoc-comment">/*
1711 * this code will make the page width larger, at the beginning, the list not align correctly,
1712 * we should expand the list on onLoad
1716 </span><span class="jsdoc-syntax">}
1717 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
1718 </span><span class="jsdoc-var">this.selectedIndex </span><span class="jsdoc-syntax">= -1;
1719 </span><span class="jsdoc-var">this.onLoad</span><span class="jsdoc-syntax">();
1723 </span><span class="jsdoc-var">this.loadNext </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1726 </span><span class="jsdoc-comment">// private
1727 </span><span class="jsdoc-var">getParams </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">q</span><span class="jsdoc-syntax">){
1728 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">p </span><span class="jsdoc-syntax">= {};
1729 </span><span class="jsdoc-comment">//p[this.queryParam] = q;
1731 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">){
1732 </span><span class="jsdoc-var">p.start </span><span class="jsdoc-syntax">= 0;
1733 </span><span class="jsdoc-var">p.limit </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.pageSize</span><span class="jsdoc-syntax">;
1735 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">p</span><span class="jsdoc-syntax">;
1738 </span><span class="jsdoc-comment">/**
1739 * Hides the dropdown list if it is currently expanded. Fires the 'collapse' event on completion.
1741 </span><span class="jsdoc-var">collapse </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1742 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.isExpanded</span><span class="jsdoc-syntax">()){
1743 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1746 </span><span class="jsdoc-var">this.list.hide</span><span class="jsdoc-syntax">();
1748 </span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1750 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
1751 </span><span class="jsdoc-var">this.okBtn.hide</span><span class="jsdoc-syntax">();
1752 </span><span class="jsdoc-var">this.cancelBtn.hide</span><span class="jsdoc-syntax">();
1753 </span><span class="jsdoc-var">this.trigger.show</span><span class="jsdoc-syntax">();
1755 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1756 </span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
1757 </span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.blur</span><span class="jsdoc-syntax">();
1762 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.collapseIf</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1763 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousewheel'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.collapseIf</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1764 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">) {
1765 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.un</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'keydown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.listKeyPress</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1767 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'collapse'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1769 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
1772 </span><span class="jsdoc-comment">// private
1773 </span><span class="jsdoc-var">collapseIf </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
1774 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">in_combo </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">e.within</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el</span><span class="jsdoc-syntax">);
1775 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">in_list </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">e.within</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.list</span><span class="jsdoc-syntax">);
1776 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">is_list </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.getTarget</span><span class="jsdoc-syntax">())</span><span class="jsdoc-var">.id </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">this.list.id</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-keyword">true </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1778 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">in_combo </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">in_list </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">is_list</span><span class="jsdoc-syntax">) {
1779 </span><span class="jsdoc-comment">//e.stopPropagation();
1780 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1783 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
1784 </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1787 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
1791 </span><span class="jsdoc-comment">/**
1792 * Expands the dropdown list if it is currently hidden. Fires the 'expand' event on completion.
1794 </span><span class="jsdoc-var">expand </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
1796 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.isExpanded</span><span class="jsdoc-syntax">() || !</span><span class="jsdoc-var">this.hasFocus</span><span class="jsdoc-syntax">){
1797 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1800 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">lw </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.listWidth </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">Math.max</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.getWidth</span><span class="jsdoc-syntax">(), </span><span class="jsdoc-var">this.minListWidth</span><span class="jsdoc-syntax">);
1801 </span><span class="jsdoc-var">this.list.setWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">lw</span><span class="jsdoc-syntax">);
1803 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'expand'</span><span class="jsdoc-syntax">);
1805 </span><span class="jsdoc-var">this.list.show</span><span class="jsdoc-syntax">();
1807 </span><span class="jsdoc-var">this.restrictHeight</span><span class="jsdoc-syntax">();
1809 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
1811 </span><span class="jsdoc-var">this.tickItems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">([], </span><span class="jsdoc-var">this.item</span><span class="jsdoc-syntax">);
1813 </span><span class="jsdoc-var">this.okBtn.show</span><span class="jsdoc-syntax">();
1814 </span><span class="jsdoc-var">this.cancelBtn.show</span><span class="jsdoc-syntax">();
1815 </span><span class="jsdoc-var">this.trigger.hide</span><span class="jsdoc-syntax">();
1817 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
1818 </span><span class="jsdoc-var">this.tickableInputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
1823 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousedown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.collapseIf</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1824 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'mousewheel'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.collapseIf</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1825 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">) {
1826 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'keydown'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.listKeyPress</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1829 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'expand'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1832 </span><span class="jsdoc-comment">// private
1833 // Implements the default empty TriggerField.onTriggerClick function
1834 </span><span class="jsdoc-var">onTriggerClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
1836 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'trigger click'</span><span class="jsdoc-syntax">);
1838 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">this.triggerList</span><span class="jsdoc-syntax">){
1839 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1842 </span><span class="jsdoc-var">this.page </span><span class="jsdoc-syntax">= 0;
1843 </span><span class="jsdoc-var">this.loadNext </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1845 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.isExpanded</span><span class="jsdoc-syntax">()){
1846 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
1847 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.blockFocus</span><span class="jsdoc-syntax">) {
1848 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
1851 }</span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1852 </span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1853 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.triggerAction </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">) {
1854 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.allQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
1855 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1856 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">());
1858 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.blockFocus</span><span class="jsdoc-syntax">) {
1859 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.focus</span><span class="jsdoc-syntax">();
1864 </span><span class="jsdoc-var">onTickableTriggerClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
1866 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">){
1867 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1870 </span><span class="jsdoc-var">this.page </span><span class="jsdoc-syntax">= 0;
1871 </span><span class="jsdoc-var">this.loadNext </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1872 </span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1874 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.triggerAction </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">) {
1875 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.allQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
1876 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1877 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">());
1881 </span><span class="jsdoc-var">onSearchFieldClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
1883 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">e.getTarget</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.nodeName.toLowerCase</span><span class="jsdoc-syntax">() != </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">){
1884 </span><span class="jsdoc-var">this.onTickableFooterButtonClick</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1885 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1888 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">e.getTarget</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.nodeName.toLowerCase</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">){
1889 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1892 </span><span class="jsdoc-var">this.page </span><span class="jsdoc-syntax">= 0;
1893 </span><span class="jsdoc-var">this.loadNext </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1894 </span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1896 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.triggerAction </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'all'</span><span class="jsdoc-syntax">) {
1897 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.allQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
1898 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1899 </span><span class="jsdoc-var">this.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">());
1903 </span><span class="jsdoc-var">listKeyPress </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
1905 </span><span class="jsdoc-comment">//Roo.log('listkeypress');
1906 // scroll to first matching element based on key pres..
1907 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.isSpecialKey</span><span class="jsdoc-syntax">()) {
1908 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
1910 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">k </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">String.fromCharCode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e.getKey</span><span class="jsdoc-syntax">())</span><span class="jsdoc-var">.toUpperCase</span><span class="jsdoc-syntax">();
1911 </span><span class="jsdoc-comment">//Roo.log(k);
1912 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">match </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1913 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">csel </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.getSelectedNodes</span><span class="jsdoc-syntax">();
1914 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cselitem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1915 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">csel.length</span><span class="jsdoc-syntax">) {
1916 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ix </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.view.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">csel</span><span class="jsdoc-syntax">[0]);
1917 </span><span class="jsdoc-var">cselitem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getAt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ix</span><span class="jsdoc-syntax">);
1918 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">cselitem.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">) || </span><span class="jsdoc-var">cselitem.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.substring</span><span class="jsdoc-syntax">(0,1)</span><span class="jsdoc-var">.toUpperCase</span><span class="jsdoc-syntax">() != </span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">) {
1919 </span><span class="jsdoc-var">cselitem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1924 </span><span class="jsdoc-var">this.store.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">) {
1925 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cselitem</span><span class="jsdoc-syntax">) {
1926 </span><span class="jsdoc-comment">// start at existing selection.
1927 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">cselitem.id </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">v.id</span><span class="jsdoc-syntax">) {
1928 </span><span class="jsdoc-var">cselitem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">;
1930 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1933 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">) && </span><span class="jsdoc-var">v.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.substring</span><span class="jsdoc-syntax">(0,1)</span><span class="jsdoc-var">.toUpperCase</span><span class="jsdoc-syntax">() == </span><span class="jsdoc-var">k</span><span class="jsdoc-syntax">) {
1934 </span><span class="jsdoc-var">match </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">);
1935 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
1937 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
1938 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
1940 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">match </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">) {
1941 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// no more action?
1942 </span><span class="jsdoc-syntax">}
1943 </span><span class="jsdoc-comment">// scroll to?
1944 </span><span class="jsdoc-var">this.view.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">match</span><span class="jsdoc-syntax">);
1945 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">sn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.view.getSelectedNodes</span><span class="jsdoc-syntax">()[0]);
1946 </span><span class="jsdoc-var">sn.scrollIntoView</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">sn.dom.parentNode</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">);
1949 </span><span class="jsdoc-var">onViewScroll </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">t</span><span class="jsdoc-syntax">){
1951 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.view.el.getScroll</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.top </span><span class="jsdoc-syntax">== 0 ||</span><span class="jsdoc-var">this.view.el.getScroll</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.top </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">this.view.el.dom.scrollHeight </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">this.view.el.dom.clientHeight </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">this.hasFocus </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">this.append </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.hasQuery</span><span class="jsdoc-syntax">){
1952 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1955 </span><span class="jsdoc-var">this.hasQuery </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1957 </span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.list.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.loading'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
1959 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">=== </span><span class="jsdoc-keyword">null</span><span class="jsdoc-syntax">){
1960 </span><span class="jsdoc-var">this.list.createChild</span><span class="jsdoc-syntax">({
1961 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
1962 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'loading roo-select2-more-results roo-select2-active'</span><span class="jsdoc-syntax">,
1963 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Loading more results...'
1964 </span><span class="jsdoc-syntax">});
1966 </span><span class="jsdoc-var">this.loading </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.list.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.loading'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
1968 </span><span class="jsdoc-var">this.loading.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">);
1970 </span><span class="jsdoc-var">this.loading.hide</span><span class="jsdoc-syntax">();
1973 </span><span class="jsdoc-var">this.loading.show</span><span class="jsdoc-syntax">();
1975 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_combo </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
1977 </span><span class="jsdoc-var">this.page</span><span class="jsdoc-syntax">++;
1978 </span><span class="jsdoc-var">this.loadNext </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
1980 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() { </span><span class="jsdoc-var">_combo.doQuery</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_combo.allQuery</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">); })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(500);
1982 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
1985 </span><span class="jsdoc-var">addItem </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">)
1987 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">dv </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">; </span><span class="jsdoc-comment">// display value
1989 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">) {
1990 </span><span class="jsdoc-var">dv </span><span class="jsdoc-syntax">= !</span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">]) == </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
1991 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
1992 </span><span class="jsdoc-comment">// this is an error condition!!!
1993 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'no displayField value set for '</span><span class="jsdoc-syntax">+ (</span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.name </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.id</span><span class="jsdoc-syntax">));
1996 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">dv.length</span><span class="jsdoc-syntax">){
1997 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2000 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">choice </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.choices.createChild</span><span class="jsdoc-syntax">({
2001 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">,
2002 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-search-choice'</span><span class="jsdoc-syntax">,
2003 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2005 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
2006 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">dv
2007 </span><span class="jsdoc-syntax">},
2009 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'a'</span><span class="jsdoc-syntax">,
2010 </span><span class="jsdoc-var">href</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'#'</span><span class="jsdoc-syntax">,
2011 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-search-choice-close fa fa-times'</span><span class="jsdoc-syntax">,
2012 </span><span class="jsdoc-var">tabindex</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'-1'
2013 </span><span class="jsdoc-syntax">}
2016 }, </span><span class="jsdoc-var">this.searchField</span><span class="jsdoc-syntax">);
2018 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">choice.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'a.roo-select2-search-choice-close'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2020 </span><span class="jsdoc-var">close.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onRemoveItem</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, { </span><span class="jsdoc-var">item </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">choice</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">} );
2022 </span><span class="jsdoc-var">this.item.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
2024 </span><span class="jsdoc-var">this.lastData </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
2026 </span><span class="jsdoc-var">this.syncValue</span><span class="jsdoc-syntax">();
2028 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2030 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
2033 </span><span class="jsdoc-var">onRemoveItem </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">_self</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">)
2035 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
2037 </span><span class="jsdoc-var">this.lastItem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">([], </span><span class="jsdoc-var">this.item</span><span class="jsdoc-syntax">);
2039 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.item.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o.data</span><span class="jsdoc-syntax">) * 1;
2041 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">index </span><span class="jsdoc-syntax">< 0){
2042 </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'not this item?!'</span><span class="jsdoc-syntax">);
2043 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2046 </span><span class="jsdoc-var">this.item.splice</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">index</span><span class="jsdoc-syntax">, 1);
2047 </span><span class="jsdoc-var">o.item.remove</span><span class="jsdoc-syntax">();
2049 </span><span class="jsdoc-var">this.syncValue</span><span class="jsdoc-syntax">();
2051 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'remove'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
2053 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
2057 </span><span class="jsdoc-var">syncValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2059 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.item.length</span><span class="jsdoc-syntax">){
2060 </span><span class="jsdoc-var">this.clearValue</span><span class="jsdoc-syntax">();
2061 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2064 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">= [];
2065 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2066 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.item</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">){
2067 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.valueField</span><span class="jsdoc-syntax">){
2068 </span><span class="jsdoc-var">value.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">_this.valueField</span><span class="jsdoc-syntax">]);
2069 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2072 </span><span class="jsdoc-var">value.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">i</span><span class="jsdoc-syntax">);
2075 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">value.join</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">','</span><span class="jsdoc-syntax">);
2077 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenField</span><span class="jsdoc-syntax">){
2078 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.value</span><span class="jsdoc-syntax">;
2081 </span><span class="jsdoc-var">this.store.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"datachanged"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">);
2083 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
2086 </span><span class="jsdoc-var">clearItem </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2088 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2089 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2092 </span><span class="jsdoc-var">this.item </span><span class="jsdoc-syntax">= [];
2094 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.choices.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'>li.roo-select2-search-choice'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.elements</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">){
2095 </span><span class="jsdoc-var">c.remove</span><span class="jsdoc-syntax">();
2098 </span><span class="jsdoc-var">this.syncValue</span><span class="jsdoc-syntax">();
2100 </span><span class="jsdoc-var">this.validate</span><span class="jsdoc-syntax">();
2102 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">Roo.isTouch</span><span class="jsdoc-syntax">){
2103 </span><span class="jsdoc-var">this.view.refresh</span><span class="jsdoc-syntax">();
2107 </span><span class="jsdoc-var">inputEl</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">()
2109 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isIOS </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.useNativeIOS</span><span class="jsdoc-syntax">){
2110 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'select.roo-ios-select'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2113 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.isTouch </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.mobileTouchView</span><span class="jsdoc-syntax">){
2114 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input.form-control'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2117 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickable</span><span class="jsdoc-syntax">){
2118 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.searchField</span><span class="jsdoc-syntax">;
2121 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input.form-control'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2124 </span><span class="jsdoc-var">onTickableFooterButtonClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">btn</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">)
2126 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
2128 </span><span class="jsdoc-var">this.lastItem </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">([], </span><span class="jsdoc-var">this.item</span><span class="jsdoc-syntax">);
2130 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">btn </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">btn.name </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'cancel'</span><span class="jsdoc-syntax">){
2131 </span><span class="jsdoc-var">this.tickItems </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">([], </span><span class="jsdoc-var">this.item</span><span class="jsdoc-syntax">);
2132 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
2133 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2136 </span><span class="jsdoc-var">this.clearItem</span><span class="jsdoc-syntax">();
2138 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2140 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickItems</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">){
2141 </span><span class="jsdoc-var">_this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
2144 </span><span class="jsdoc-var">this.collapse</span><span class="jsdoc-syntax">();
2148 </span><span class="jsdoc-var">validate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2150 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.getVisibilityEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.hasClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'hidden'</span><span class="jsdoc-syntax">)){
2151 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
2154 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">();
2156 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2157 </span><span class="jsdoc-var">v </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">();
2160 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.allowBlank </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">v.length</span><span class="jsdoc-syntax">){
2161 </span><span class="jsdoc-var">this.markValid</span><span class="jsdoc-syntax">();
2162 </span><span class="jsdoc-keyword">return true</span><span class="jsdoc-syntax">;
2165 </span><span class="jsdoc-var">this.markInvalid</span><span class="jsdoc-syntax">();
2166 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
2169 </span><span class="jsdoc-var">tickableInputEl </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2171 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.tickable </span><span class="jsdoc-syntax">|| !</span><span class="jsdoc-var">this.editable</span><span class="jsdoc-syntax">){
2172 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">();
2175 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-select2-search-field-input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2179 </span><span class="jsdoc-var">getAutoCreateTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2181 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">id </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.id</span><span class="jsdoc-syntax">();
2183 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= {
2184 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-group' </span><span class="jsdoc-comment">//input-group
2185 </span><span class="jsdoc-syntax">};
2187 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">input </span><span class="jsdoc-syntax">= {
2188 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
2189 </span><span class="jsdoc-var">id </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
2190 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.inputType</span><span class="jsdoc-syntax">,
2191 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-control x-combo-noedit'</span><span class="jsdoc-syntax">,
2192 </span><span class="jsdoc-var">autocomplete</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'new-password'</span><span class="jsdoc-syntax">,
2193 </span><span class="jsdoc-var">placeholder </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.placeholder </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
2194 </span><span class="jsdoc-var">readonly </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
2195 </span><span class="jsdoc-syntax">};
2197 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.name</span><span class="jsdoc-syntax">) {
2198 </span><span class="jsdoc-var">input.name </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.name</span><span class="jsdoc-syntax">;
2201 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.size</span><span class="jsdoc-syntax">) {
2202 </span><span class="jsdoc-var">input.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' input-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.size</span><span class="jsdoc-syntax">;
2205 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">) {
2206 </span><span class="jsdoc-var">input.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
2209 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">inputblock </span><span class="jsdoc-syntax">= {
2210 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-wrap'</span><span class="jsdoc-syntax">,
2211 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
2212 </span><span class="jsdoc-var">input
2213 </span><span class="jsdoc-syntax">]
2216 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.before</span><span class="jsdoc-syntax">){
2217 </span><span class="jsdoc-var">inputblock.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' input-group'</span><span class="jsdoc-syntax">;
2219 </span><span class="jsdoc-var">inputblock.cn.unshift</span><span class="jsdoc-syntax">({
2220 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2221 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input-group-addon input-group-prepend input-group-text'</span><span class="jsdoc-syntax">,
2222 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.before
2223 </span><span class="jsdoc-syntax">});
2226 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.removable </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2227 </span><span class="jsdoc-var">inputblock.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' roo-removable'</span><span class="jsdoc-syntax">;
2229 </span><span class="jsdoc-var">inputblock.cn.push</span><span class="jsdoc-syntax">({
2230 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
2231 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'x'</span><span class="jsdoc-syntax">,
2232 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combo-removable-btn close'
2233 </span><span class="jsdoc-syntax">});
2236 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hasFeedback </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.allowBlank</span><span class="jsdoc-syntax">){
2238 </span><span class="jsdoc-var">inputblock.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' has-feedback'</span><span class="jsdoc-syntax">;
2240 </span><span class="jsdoc-var">inputblock.cn.push</span><span class="jsdoc-syntax">({
2241 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2242 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'glyphicon form-control-feedback'
2243 </span><span class="jsdoc-syntax">});
2247 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.after</span><span class="jsdoc-syntax">) {
2249 </span><span class="jsdoc-var">inputblock.cls </span><span class="jsdoc-syntax">+= (</span><span class="jsdoc-var">this.before</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-string">'' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">' input-group'</span><span class="jsdoc-syntax">;
2251 </span><span class="jsdoc-var">inputblock.cn.push</span><span class="jsdoc-syntax">({
2252 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2253 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input-group-addon input-group-append input-group-text'</span><span class="jsdoc-syntax">,
2254 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.after
2255 </span><span class="jsdoc-syntax">});
2259 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">ibwrap </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">inputblock</span><span class="jsdoc-syntax">;
2261 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2262 </span><span class="jsdoc-var">ibwrap </span><span class="jsdoc-syntax">= {
2263 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ul'</span><span class="jsdoc-syntax">,
2264 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-choices'</span><span class="jsdoc-syntax">,
2265 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">:[
2267 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">,
2268 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-search-field'</span><span class="jsdoc-syntax">,
2269 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2271 </span><span class="jsdoc-var">inputblock
2272 </span><span class="jsdoc-syntax">]
2280 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">combobox </span><span class="jsdoc-syntax">= {
2281 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-select2-container input-group roo-touchview-combobox '</span><span class="jsdoc-syntax">,
2282 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2284 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
2285 </span><span class="jsdoc-var">type </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'hidden'</span><span class="jsdoc-syntax">,
2286 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-hidden-field'
2287 </span><span class="jsdoc-syntax">},
2288 </span><span class="jsdoc-var">ibwrap
2289 </span><span class="jsdoc-syntax">]
2292 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.multiple </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.showToggleBtn</span><span class="jsdoc-syntax">){
2294 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">caret </span><span class="jsdoc-syntax">= {
2295 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'caret'
2296 </span><span class="jsdoc-syntax">};
2298 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.caret </span><span class="jsdoc-syntax">!= </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">) {
2299 </span><span class="jsdoc-var">caret </span><span class="jsdoc-syntax">= {
2300 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
2301 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'fa fa-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.caret
2302 </span><span class="jsdoc-syntax">};
2306 </span><span class="jsdoc-var">combobox.cn.push</span><span class="jsdoc-syntax">({
2307 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">:</span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2308 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input-group-addon input-group-append input-group-text btn dropdown-toggle'</span><span class="jsdoc-syntax">,
2309 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
2310 </span><span class="jsdoc-var">Roo.bootstrap.version </span><span class="jsdoc-syntax">== 3 ? </span><span class="jsdoc-var">caret </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
2312 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2313 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'combobox-clear'</span><span class="jsdoc-syntax">,
2314 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
2316 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
2317 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'icon-remove'
2318 </span><span class="jsdoc-syntax">}
2326 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2327 </span><span class="jsdoc-var">combobox.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' roo-select2-container-multi'</span><span class="jsdoc-syntax">;
2330 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">required </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.allowBlank </span><span class="jsdoc-syntax">? {
2331 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
2332 </span><span class="jsdoc-var">style</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'display: none'
2333 </span><span class="jsdoc-syntax">} : {
2334 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'i'</span><span class="jsdoc-syntax">,
2335 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-required-indicator left-indicator text-danger fa fa-lg fa-star'</span><span class="jsdoc-syntax">,
2336 </span><span class="jsdoc-var">tooltip </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'This field is required'
2337 </span><span class="jsdoc-syntax">};
2339 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">align </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.labelAlign </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.parentLabelAlign</span><span class="jsdoc-syntax">();
2341 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">align </span><span class="jsdoc-syntax">===</span><span class="jsdoc-string">'left' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.fieldLabel.length</span><span class="jsdoc-syntax">) {
2343 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
2344 </span><span class="jsdoc-var">required</span><span class="jsdoc-syntax">,
2346 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
2347 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label col-form-label'</span><span class="jsdoc-syntax">,
2348 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
2350 </span><span class="jsdoc-syntax">},
2352 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-wrap '</span><span class="jsdoc-syntax">,
2353 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2354 </span><span class="jsdoc-var">combobox
2355 </span><span class="jsdoc-syntax">]
2359 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">labelCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[1];
2360 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">contentCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[2];
2363 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indicatorpos </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">){
2364 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
2366 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
2367 </span><span class="jsdoc-string">'for' </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">id</span><span class="jsdoc-syntax">,
2368 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label col-form-label'</span><span class="jsdoc-syntax">,
2369 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
2371 </span><span class="jsdoc-var">tag </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2372 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
2373 </span><span class="jsdoc-syntax">},
2374 </span><span class="jsdoc-var">required
2375 </span><span class="jsdoc-syntax">]
2378 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">"roo-combobox-wrap "</span><span class="jsdoc-syntax">,
2379 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2380 </span><span class="jsdoc-var">combobox
2381 </span><span class="jsdoc-syntax">]
2386 </span><span class="jsdoc-var">labelCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[0];
2387 </span><span class="jsdoc-var">contentCfg </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.cn</span><span class="jsdoc-syntax">[1];
2392 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">> 12){
2393 </span><span class="jsdoc-var">labelCfg.style </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">;
2396 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelWidth </span><span class="jsdoc-syntax">< 13 && </span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">== 0){
2397 </span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.labelWidth</span><span class="jsdoc-syntax">;
2400 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labellg </span><span class="jsdoc-syntax">> 0){
2401 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-lg-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labellg</span><span class="jsdoc-syntax">;
2402 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-lg-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labellg</span><span class="jsdoc-syntax">);
2405 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelmd </span><span class="jsdoc-syntax">> 0){
2406 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-md-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelmd</span><span class="jsdoc-syntax">;
2407 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-md-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelmd</span><span class="jsdoc-syntax">);
2410 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelsm </span><span class="jsdoc-syntax">> 0){
2411 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-sm-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelsm</span><span class="jsdoc-syntax">;
2412 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-sm-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelsm</span><span class="jsdoc-syntax">);
2415 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.labelxs </span><span class="jsdoc-syntax">> 0){
2416 </span><span class="jsdoc-var">labelCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-xs-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.labelxs</span><span class="jsdoc-syntax">;
2417 </span><span class="jsdoc-var">contentCfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-xs-' </span><span class="jsdoc-syntax">+ (12 - </span><span class="jsdoc-var">this.labelxs</span><span class="jsdoc-syntax">);
2421 } </span><span class="jsdoc-keyword">else if </span><span class="jsdoc-syntax">( </span><span class="jsdoc-var">this.fieldLabel.length</span><span class="jsdoc-syntax">) {
2422 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
2423 </span><span class="jsdoc-var">required</span><span class="jsdoc-syntax">,
2425 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
2426 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label'</span><span class="jsdoc-syntax">,
2427 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel
2429 </span><span class="jsdoc-syntax">},
2431 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
2432 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2433 </span><span class="jsdoc-var">combobox
2434 </span><span class="jsdoc-syntax">]
2438 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.indicatorpos </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'right'</span><span class="jsdoc-syntax">){
2439 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= [
2441 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'</span><span class="jsdoc-syntax">,
2442 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'control-label'</span><span class="jsdoc-syntax">,
2443 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.fieldLabel</span><span class="jsdoc-syntax">,
2444 </span><span class="jsdoc-var">cn </span><span class="jsdoc-syntax">: [
2445 </span><span class="jsdoc-var">required
2446 </span><span class="jsdoc-syntax">]
2449 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
2450 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2451 </span><span class="jsdoc-var">combobox
2452 </span><span class="jsdoc-syntax">]
2456 } </span><span class="jsdoc-keyword">else </span><span class="jsdoc-syntax">{
2457 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">combobox</span><span class="jsdoc-syntax">;
2461 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">settings </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2463 [</span><span class="jsdoc-string">'xs'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'sm'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'md'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'lg'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.map</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">){
2464 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">]) {
2465 </span><span class="jsdoc-var">cfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">size </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">];
2469 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
2472 </span><span class="jsdoc-var">initTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2474 </span><span class="jsdoc-var">this.renderTouchView</span><span class="jsdoc-syntax">();
2476 </span><span class="jsdoc-var">this.touchViewEl.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'scroll'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
2477 </span><span class="jsdoc-var">this.el.dom.scrollTop </span><span class="jsdoc-syntax">= 0;
2478 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2480 </span><span class="jsdoc-var">this.originalValue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">();
2482 </span><span class="jsdoc-var">this.triggerEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'span.dropdown-toggle'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2484 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"click"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.showTouchView</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2485 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.triggerEl</span><span class="jsdoc-syntax">) {
2486 </span><span class="jsdoc-var">this.triggerEl.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"click"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.showTouchView</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2490 </span><span class="jsdoc-var">this.touchViewFooterEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-touch-view-cancel'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.hideTouchView</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2491 </span><span class="jsdoc-var">this.touchViewFooterEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-touch-view-ok'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.setTouchViewValue</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2493 </span><span class="jsdoc-var">this.maskEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">new </span><span class="jsdoc-var">Roo.LoadMask</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.touchViewEl</span><span class="jsdoc-syntax">, { </span><span class="jsdoc-var">store </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this.store</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">msgCls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-el-mask-msg' </span><span class="jsdoc-syntax">});
2495 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeload'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTouchViewBeforeLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2496 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTouchViewLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2497 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'loadexception'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTouchViewLoadException</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2499 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">){
2501 </span><span class="jsdoc-var">this.hiddenField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'input.form-hidden-field'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2503 </span><span class="jsdoc-var">this.hiddenField.dom.value </span><span class="jsdoc-syntax">=
2504 </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.hiddenValue </span><span class="jsdoc-syntax">:
2505 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">!== </span><span class="jsdoc-var">undefined </span><span class="jsdoc-syntax">? </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2507 </span><span class="jsdoc-var">this.el.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">);
2508 </span><span class="jsdoc-var">this.hiddenField.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'name'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.hiddenName</span><span class="jsdoc-syntax">);
2511 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2512 </span><span class="jsdoc-var">this.choices </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul.roo-select2-choices'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2513 </span><span class="jsdoc-var">this.searchField </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.el.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'ul li.roo-select2-search-field'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2516 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.removable </span><span class="jsdoc-syntax">&& !</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2517 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.closeTriggerEl</span><span class="jsdoc-syntax">();
2518 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">){
2519 </span><span class="jsdoc-var">close.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hide</span><span class="jsdoc-syntax">();
2520 </span><span class="jsdoc-var">close.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.removeBtnClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">);
2523 </span><span class="jsdoc-comment">/*
2524 * fix the bug in Safari iOS8
2526 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"focus"</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">){
2527 </span><span class="jsdoc-var">document.activeElement.blur</span><span class="jsdoc-syntax">();
2528 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2530 </span><span class="jsdoc-var">this._touchViewMask </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.DomHelper.append</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</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-dlg-mask"</span><span class="jsdoc-syntax">}, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2532 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2537 </span><span class="jsdoc-var">renderTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2539 </span><span class="jsdoc-var">this.touchViewEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.touchViewTemplate</span><span class="jsdoc-syntax">);
2540 </span><span class="jsdoc-var">this.touchViewEl.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
2542 </span><span class="jsdoc-var">this.touchViewHeaderEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.modal-header'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2543 </span><span class="jsdoc-var">this.touchViewHeaderEl.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
2545 </span><span class="jsdoc-var">this.touchViewBodyEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.modal-body'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2546 </span><span class="jsdoc-var">this.touchViewBodyEl.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
2547 </span><span class="jsdoc-var">this.touchViewBodyEl.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'overflow'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'auto'</span><span class="jsdoc-syntax">);
2549 </span><span class="jsdoc-var">this.touchViewListGroup </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewBodyEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.list-group'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2550 </span><span class="jsdoc-var">this.touchViewListGroup.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
2552 </span><span class="jsdoc-var">this.touchViewFooterEl </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.modal-footer'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2553 </span><span class="jsdoc-var">this.touchViewFooterEl.setVisibilityMode</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.Element.DISPLAY</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.originalDisplay </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'block'</span><span class="jsdoc-syntax">;
2557 </span><span class="jsdoc-var">showTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2559 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">){
2560 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2563 </span><span class="jsdoc-var">this.touchViewHeaderEl.hide</span><span class="jsdoc-syntax">();
2565 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.modalTitle.length</span><span class="jsdoc-syntax">){
2566 </span><span class="jsdoc-var">this.touchViewHeaderEl.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.modalTitle</span><span class="jsdoc-syntax">;
2567 </span><span class="jsdoc-var">this.touchViewHeaderEl.show</span><span class="jsdoc-syntax">();
2570 </span><span class="jsdoc-var">this.touchViewEl.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'z-index'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Modal.zIndex</span><span class="jsdoc-syntax">++);
2571 </span><span class="jsdoc-var">this.touchViewEl.show</span><span class="jsdoc-syntax">();
2573 </span><span class="jsdoc-var">this.touchViewEl.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.modal-dialog'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.setStyle</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">margin </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'0px'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">width </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'100%'</span><span class="jsdoc-syntax">});
2575 </span><span class="jsdoc-comment">//this.touchViewEl.select('.modal-dialog > .modal-content', true).first().setSize(
2576 // Roo.lib.Dom.getViewWidth(true), Roo.lib.Dom.getViewHeight(true));
2578 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Dom.getViewHeight</span><span class="jsdoc-syntax">() - </span><span class="jsdoc-var">this.touchViewFooterEl.getHeight</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">this.touchViewBodyEl.getPadding</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tb'</span><span class="jsdoc-syntax">);
2580 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.modalTitle.length</span><span class="jsdoc-syntax">){
2581 </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">this.touchViewHeaderEl.getHeight</span><span class="jsdoc-syntax">();
2584 </span><span class="jsdoc-var">this.touchViewBodyEl.setHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">bodyHeight</span><span class="jsdoc-syntax">);
2586 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.animate</span><span class="jsdoc-syntax">){
2587 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2588 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){ </span><span class="jsdoc-var">_this.touchViewEl.addClass</span><span class="jsdoc-syntax">([</span><span class="jsdoc-string">'in'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">]); })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(50);
2589 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
2590 </span><span class="jsdoc-var">this.touchViewEl.addClass</span><span class="jsdoc-syntax">([</span><span class="jsdoc-string">'in'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">]);
2593 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this._touchViewMask</span><span class="jsdoc-syntax">){
2594 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-body-masked"</span><span class="jsdoc-syntax">);
2595 </span><span class="jsdoc-var">this._touchViewMask.setSize</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.lib.Dom.getViewWidth</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">), </span><span class="jsdoc-var">Roo.lib.Dom.getViewHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">));
2596 </span><span class="jsdoc-var">this._touchViewMask.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'z-index'</span><span class="jsdoc-syntax">, 10000);
2597 </span><span class="jsdoc-var">this._touchViewMask.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">);
2600 </span><span class="jsdoc-var">this.doTouchViewQuery</span><span class="jsdoc-syntax">();
2604 </span><span class="jsdoc-var">hideTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2606 </span><span class="jsdoc-var">this.touchViewEl.removeClass</span><span class="jsdoc-syntax">([</span><span class="jsdoc-string">'in'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">]);
2608 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.animate</span><span class="jsdoc-syntax">){
2609 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2610 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){ </span><span class="jsdoc-var">_this.touchViewEl.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'display'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'none'</span><span class="jsdoc-syntax">); })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(150);
2611 }</span><span class="jsdoc-keyword">else</span><span class="jsdoc-syntax">{
2612 </span><span class="jsdoc-var">this.touchViewEl.setStyle</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'display'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-string">'none'</span><span class="jsdoc-syntax">);
2615 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this._touchViewMask</span><span class="jsdoc-syntax">){
2616 </span><span class="jsdoc-var">this._touchViewMask.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'show'</span><span class="jsdoc-syntax">);
2617 </span><span class="jsdoc-var">Roo.get</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">document.body</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">"x-body-masked"</span><span class="jsdoc-syntax">);
2621 </span><span class="jsdoc-var">setTouchViewValue </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2623 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2624 </span><span class="jsdoc-var">this.clearItem</span><span class="jsdoc-syntax">();
2626 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2628 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickItems</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">){
2629 </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">);
2630 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2633 </span><span class="jsdoc-var">this.hideTouchView</span><span class="jsdoc-syntax">();
2636 </span><span class="jsdoc-var">doTouchViewQuery </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2638 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">qe </span><span class="jsdoc-syntax">= {
2639 </span><span class="jsdoc-var">query</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">,
2640 </span><span class="jsdoc-var">forceAll</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">,
2641 </span><span class="jsdoc-var">combo</span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,
2642 </span><span class="jsdoc-var">cancel</span><span class="jsdoc-syntax">:</span><span class="jsdoc-keyword">false
2643 </span><span class="jsdoc-syntax">};
2645 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforequery'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">qe</span><span class="jsdoc-syntax">) ===</span><span class="jsdoc-keyword">false </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">qe.cancel</span><span class="jsdoc-syntax">){
2646 </span><span class="jsdoc-keyword">return false</span><span class="jsdoc-syntax">;
2649 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.alwaysQuery </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-var">this.mode </span><span class="jsdoc-syntax">== </span><span class="jsdoc-string">'local'</span><span class="jsdoc-syntax">){
2650 </span><span class="jsdoc-var">this.onTouchViewLoad</span><span class="jsdoc-syntax">();
2651 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2654 </span><span class="jsdoc-var">this.store.load</span><span class="jsdoc-syntax">();
2657 </span><span class="jsdoc-var">onTouchViewBeforeLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">combo</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)
2659 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2662 </span><span class="jsdoc-comment">// private
2663 </span><span class="jsdoc-var">onTouchViewLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2665 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">() < 1){
2666 </span><span class="jsdoc-var">this.onTouchViewEmptyResults</span><span class="jsdoc-syntax">();
2667 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2670 </span><span class="jsdoc-var">this.clearTouchView</span><span class="jsdoc-syntax">();
2672 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rawValue </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.getRawValue</span><span class="jsdoc-syntax">();
2674 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">template </span><span class="jsdoc-syntax">= (</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">) ? </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.listItemCheckbox </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.listItemRadio</span><span class="jsdoc-syntax">;
2676 </span><span class="jsdoc-var">this.tickItems </span><span class="jsdoc-syntax">= [];
2678 </span><span class="jsdoc-var">this.store.data.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">){
2679 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">row </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewListGroup.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">template</span><span class="jsdoc-syntax">);
2681 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data.cls</span><span class="jsdoc-syntax">) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">d.data.cls.length</span><span class="jsdoc-syntax">){
2682 </span><span class="jsdoc-var">row.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data.cls</span><span class="jsdoc-syntax">);
2685 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">){
2686 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= {
2687 </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">,
2688 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">]
2691 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'touchviewdisplay'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
2692 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-value'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">cfg.html</span><span class="jsdoc-syntax">;
2695 </span><span class="jsdoc-var">row.removeClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'selected'</span><span class="jsdoc-syntax">);
2696 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.multiple </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.valueField </span><span class="jsdoc-syntax">&&
2697 </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">] == </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">())
2699 </span><span class="jsdoc-comment">// radio buttons..
2700 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-box > input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2701 </span><span class="jsdoc-var">row.addClass</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'selected'</span><span class="jsdoc-syntax">);
2704 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.multiple </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.valueField </span><span class="jsdoc-syntax">&&
2705 </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != -1)
2708 </span><span class="jsdoc-comment">// checkboxes...
2709 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-box > input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2710 </span><span class="jsdoc-var">this.tickItems.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">);
2713 </span><span class="jsdoc-var">row.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onTouchViewClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, {</span><span class="jsdoc-var">row </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">row</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">});
2715 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2717 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">firstChecked </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewListGroup.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.list-group-item > .roo-combobox-list-group-item-box > input:checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">();
2719 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Roo.lib.Dom.getViewHeight</span><span class="jsdoc-syntax">() - </span><span class="jsdoc-var">this.touchViewFooterEl.getHeight</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">this.touchViewBodyEl.getPadding</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tb'</span><span class="jsdoc-syntax">);
2721 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.modalTitle.length</span><span class="jsdoc-syntax">){
2722 </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">bodyHeight </span><span class="jsdoc-syntax">- </span><span class="jsdoc-var">this.touchViewHeaderEl.getHeight</span><span class="jsdoc-syntax">();
2725 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">listHeight </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.touchViewListGroup.getHeight</span><span class="jsdoc-syntax">() + </span><span class="jsdoc-var">this.touchViewBodyEl.getPadding</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'tb'</span><span class="jsdoc-syntax">) * 2;
2727 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.mobile_restrict_height </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">listHeight </span><span class="jsdoc-syntax">< </span><span class="jsdoc-var">bodyHeight</span><span class="jsdoc-syntax">){
2728 </span><span class="jsdoc-var">this.touchViewBodyEl.setHeight</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">listHeight</span><span class="jsdoc-syntax">);
2731 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">_this </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2733 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">firstChecked </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">listHeight </span><span class="jsdoc-syntax">> </span><span class="jsdoc-var">bodyHeight</span><span class="jsdoc-syntax">){
2734 (</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() { </span><span class="jsdoc-var">firstChecked.findParent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.scrollIntoView</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">_this.touchViewListGroup.dom</span><span class="jsdoc-syntax">); })</span><span class="jsdoc-var">.defer</span><span class="jsdoc-syntax">(500);
2739 </span><span class="jsdoc-var">onTouchViewLoadException </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2741 </span><span class="jsdoc-var">this.hideTouchView</span><span class="jsdoc-syntax">();
2744 </span><span class="jsdoc-var">onTouchViewEmptyResults </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2746 </span><span class="jsdoc-var">this.clearTouchView</span><span class="jsdoc-syntax">();
2748 </span><span class="jsdoc-var">this.touchViewListGroup.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.emptyResult</span><span class="jsdoc-syntax">);
2750 </span><span class="jsdoc-var">this.touchViewListGroup.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-touch-view-empty-result'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.emptyResultText</span><span class="jsdoc-syntax">;
2754 </span><span class="jsdoc-var">clearTouchView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2756 </span><span class="jsdoc-var">this.touchViewListGroup.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2759 </span><span class="jsdoc-var">onTouchViewClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">el</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">)
2761 </span><span class="jsdoc-var">e.preventDefault</span><span class="jsdoc-syntax">();
2763 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">row </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o.row</span><span class="jsdoc-syntax">;
2764 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">rowIndex </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o.rowIndex</span><span class="jsdoc-syntax">;
2766 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.store.getAt</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">);
2768 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'beforeselect'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">) !== </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">){
2770 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.multiple</span><span class="jsdoc-syntax">){
2771 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.touchViewListGroup.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.list-group-item > .roo-combobox-list-group-item-box > input:checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.elements</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">){
2772 </span><span class="jsdoc-var">c.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">);
2773 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2775 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-box > input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2777 </span><span class="jsdoc-var">this.setFromData</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">);
2779 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">close </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.closeTriggerEl</span><span class="jsdoc-syntax">();
2781 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">close</span><span class="jsdoc-syntax">){
2782 </span><span class="jsdoc-var">close.show</span><span class="jsdoc-syntax">();
2785 </span><span class="jsdoc-var">this.hideTouchView</span><span class="jsdoc-syntax">();
2787 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">);
2789 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2792 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined' </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-var">this.getValue</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != -1){
2793 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-box > input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">);
2794 </span><span class="jsdoc-var">this.tickItems.splice</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.tickItems.indexOf</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">), 1);
2795 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2798 </span><span class="jsdoc-var">row.select</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'.roo-combobox-list-group-item-box > input'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.first</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'checked'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2799 </span><span class="jsdoc-var">this.addItem</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">);
2800 </span><span class="jsdoc-var">this.tickItems.push</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">r.data</span><span class="jsdoc-syntax">);
2804 </span><span class="jsdoc-var">getAutoCreateNativeIOS </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2806 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= {
2807 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'form-group' </span><span class="jsdoc-comment">//input-group,
2808 </span><span class="jsdoc-syntax">};
2810 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">combobox </span><span class="jsdoc-syntax">= {
2811 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">,
2812 </span><span class="jsdoc-var">cls </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-ios-select'
2813 </span><span class="jsdoc-syntax">};
2815 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.name</span><span class="jsdoc-syntax">) {
2816 </span><span class="jsdoc-var">combobox.name </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.name</span><span class="jsdoc-syntax">;
2819 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.disabled</span><span class="jsdoc-syntax">) {
2820 </span><span class="jsdoc-var">combobox.disabled </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
2823 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">settings </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">;
2825 [</span><span class="jsdoc-string">'xs'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'sm'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'md'</span><span class="jsdoc-syntax">,</span><span class="jsdoc-string">'lg'</span><span class="jsdoc-syntax">]</span><span class="jsdoc-var">.map</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">){
2826 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">]) {
2827 </span><span class="jsdoc-var">cfg.cls </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' col-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">size </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">'-' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">settings</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">size</span><span class="jsdoc-syntax">];
2831 </span><span class="jsdoc-var">cfg.cn </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">combobox</span><span class="jsdoc-syntax">;
2833 </span><span class="jsdoc-keyword">return </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
2837 </span><span class="jsdoc-var">initIOSView </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2839 </span><span class="jsdoc-var">this.store.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'load'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onIOSViewLoad</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2841 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2844 </span><span class="jsdoc-var">onIOSViewLoad </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2846 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.store.getCount</span><span class="jsdoc-syntax">() < 1){
2847 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2850 </span><span class="jsdoc-var">this.clearIOSView</span><span class="jsdoc-syntax">();
2852 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.allowBlank</span><span class="jsdoc-syntax">) {
2854 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">default_text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">'-- SELECT --'</span><span class="jsdoc-syntax">;
2856 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.placeholder.length</span><span class="jsdoc-syntax">){
2857 </span><span class="jsdoc-var">default_text </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.placeholder</span><span class="jsdoc-syntax">;
2860 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.emptyTitle.length</span><span class="jsdoc-syntax">){
2861 </span><span class="jsdoc-var">default_text </span><span class="jsdoc-syntax">+= </span><span class="jsdoc-string">' - ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.emptyTitle </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">' -'</span><span class="jsdoc-syntax">;
2864 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">opt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.createChild</span><span class="jsdoc-syntax">({
2865 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'option'</span><span class="jsdoc-syntax">,
2866 </span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">: 0,
2867 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">default_text
2868 </span><span class="jsdoc-syntax">});
2870 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">o </span><span class="jsdoc-syntax">= {};
2871 </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">] = 0;
2872 </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-var">default_text</span><span class="jsdoc-syntax">;
2874 </span><span class="jsdoc-var">this.ios_options.push</span><span class="jsdoc-syntax">({
2875 </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">,
2876 </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">opt
2877 </span><span class="jsdoc-syntax">});
2881 </span><span class="jsdoc-var">this.store.data.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">rowIndex</span><span class="jsdoc-syntax">){
2883 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2885 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.displayField </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">){
2886 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.displayField</span><span class="jsdoc-syntax">];
2889 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2891 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.valueField </span><span class="jsdoc-syntax">&& </span><span class="jsdoc-keyword">typeof</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]) != </span><span class="jsdoc-string">'undefined'</span><span class="jsdoc-syntax">){
2892 </span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">];
2895 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">option </span><span class="jsdoc-syntax">= {
2896 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'option'</span><span class="jsdoc-syntax">,
2897 </span><span class="jsdoc-var">value </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">value</span><span class="jsdoc-syntax">,
2898 </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">html
2899 </span><span class="jsdoc-syntax">};
2901 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">== </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">]){
2902 </span><span class="jsdoc-var">option</span><span class="jsdoc-syntax">[</span><span class="jsdoc-string">'selected'</span><span class="jsdoc-syntax">] = </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">;
2905 </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">opt </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.createChild</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">option</span><span class="jsdoc-syntax">);
2907 </span><span class="jsdoc-var">this.ios_options.push</span><span class="jsdoc-syntax">({
2908 </span><span class="jsdoc-var">data </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">d.data</span><span class="jsdoc-syntax">,
2909 </span><span class="jsdoc-var">el </span><span class="jsdoc-syntax">: </span><span class="jsdoc-var">opt
2910 </span><span class="jsdoc-syntax">});
2912 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2914 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'change'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
2915 </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'select'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2916 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2920 </span><span class="jsdoc-var">clearIOSView</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">()
2922 </span><span class="jsdoc-var">this.inputEl</span><span class="jsdoc-syntax">()</span><span class="jsdoc-var">.dom.innerHTML </span><span class="jsdoc-syntax">= </span><span class="jsdoc-string">''</span><span class="jsdoc-syntax">;
2924 </span><span class="jsdoc-var">this.ios_options </span><span class="jsdoc-syntax">= [];
2927 </span><span class="jsdoc-var">setIOSValue</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">)
2929 </span><span class="jsdoc-var">this.value </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">;
2931 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.ios_options</span><span class="jsdoc-syntax">){
2932 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2935 </span><span class="jsdoc-var">Roo.each</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.ios_options</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">){
2937 </span><span class="jsdoc-var">opts.el.dom.removeAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'selected'</span><span class="jsdoc-syntax">);
2939 </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">opts.data</span><span class="jsdoc-syntax">[</span><span class="jsdoc-var">this.valueField</span><span class="jsdoc-syntax">] != </span><span class="jsdoc-var">v</span><span class="jsdoc-syntax">){
2940 </span><span class="jsdoc-keyword">return</span><span class="jsdoc-syntax">;
2943 </span><span class="jsdoc-var">opts.el.dom.setAttribute</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'selected'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-keyword">true</span><span class="jsdoc-syntax">);
2945 }, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
2948 </span><span class="jsdoc-comment">/**
2949 * @cfg {Boolean} grow
2953 * @cfg {Number} growMin
2957 * @cfg {Number} growMax
2964 </span><span class="jsdoc-syntax">});
2966 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox</span><span class="jsdoc-syntax">, {
2968 </span><span class="jsdoc-var">header </span><span class="jsdoc-syntax">: {
2969 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
2970 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-header'</span><span class="jsdoc-syntax">,
2971 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2973 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'h4'</span><span class="jsdoc-syntax">,
2974 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-title'
2975 </span><span class="jsdoc-syntax">}
2979 </span><span class="jsdoc-var">body </span><span class="jsdoc-syntax">: {
2980 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
2981 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-body'</span><span class="jsdoc-syntax">,
2982 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2984 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'ul'</span><span class="jsdoc-syntax">,
2985 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'list-group'
2986 </span><span class="jsdoc-syntax">}
2990 </span><span class="jsdoc-var">listItemRadio </span><span class="jsdoc-syntax">: {
2991 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">,
2992 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'list-group-item'</span><span class="jsdoc-syntax">,
2993 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
2995 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
2996 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-list-group-item-value'
2997 </span><span class="jsdoc-syntax">},
2999 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3000 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-list-group-item-box pull-xs-right radio-inline radio radio-info'</span><span class="jsdoc-syntax">,
3001 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3003 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
3004 </span><span class="jsdoc-var">type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'radio'
3005 </span><span class="jsdoc-syntax">},
3007 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'
3008 </span><span class="jsdoc-syntax">}
3014 </span><span class="jsdoc-var">listItemCheckbox </span><span class="jsdoc-syntax">: {
3015 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'li'</span><span class="jsdoc-syntax">,
3016 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'list-group-item'</span><span class="jsdoc-syntax">,
3017 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3019 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'span'</span><span class="jsdoc-syntax">,
3020 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-list-group-item-value'
3021 </span><span class="jsdoc-syntax">},
3023 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3024 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'roo-combobox-list-group-item-box pull-xs-right checkbox-inline checkbox checkbox-info'</span><span class="jsdoc-syntax">,
3025 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3027 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'input'</span><span class="jsdoc-syntax">,
3028 </span><span class="jsdoc-var">type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'checkbox'
3029 </span><span class="jsdoc-syntax">},
3031 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'label'
3032 </span><span class="jsdoc-syntax">}
3038 </span><span class="jsdoc-var">emptyResult </span><span class="jsdoc-syntax">: {
3039 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3040 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'alert alert-danger roo-combobox-touch-view-empty-result'
3041 </span><span class="jsdoc-syntax">},
3043 </span><span class="jsdoc-var">footer </span><span class="jsdoc-syntax">: {
3044 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3045 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-footer'</span><span class="jsdoc-syntax">,
3046 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3048 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3049 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'row'</span><span class="jsdoc-syntax">,
3050 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3052 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3053 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'col-xs-6 text-left'</span><span class="jsdoc-syntax">,
3054 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: {
3055 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
3056 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-danger roo-touch-view-cancel'</span><span class="jsdoc-syntax">,
3057 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'Cancel'
3058 </span><span class="jsdoc-syntax">}
3061 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3062 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'col-xs-6 text-right'</span><span class="jsdoc-syntax">,
3063 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: {
3064 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'button'</span><span class="jsdoc-syntax">,
3065 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'btn btn-success roo-touch-view-ok'</span><span class="jsdoc-syntax">,
3066 </span><span class="jsdoc-var">html</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'OK'
3067 </span><span class="jsdoc-syntax">}
3076 </span><span class="jsdoc-var">Roo.apply</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox</span><span class="jsdoc-syntax">, {
3078 </span><span class="jsdoc-var">touchViewTemplate </span><span class="jsdoc-syntax">: {
3079 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3080 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal fade roo-combobox-touch-view'</span><span class="jsdoc-syntax">,
3081 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3083 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3084 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-dialog'</span><span class="jsdoc-syntax">,
3085 </span><span class="jsdoc-var">style </span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'position:fixed'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-comment">// we have to fix position....
3086 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3088 </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
3089 </span><span class="jsdoc-var">cls</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'modal-content'</span><span class="jsdoc-syntax">,
3090 </span><span class="jsdoc-var">cn</span><span class="jsdoc-syntax">: [
3091 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.header</span><span class="jsdoc-syntax">,
3092 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.body</span><span class="jsdoc-syntax">,
3093 </span><span class="jsdoc-var">Roo.bootstrap.form.ComboBox.footer
3094 </span><span class="jsdoc-syntax">]
3100 });</span></code></body></html>