var CodeMirror=(function(){function u(aM,aJ){var b1={},bj=u.defaults;for(var az in bj){if(bj.hasOwnProperty(az)){b1[az]=(aJ&&aJ.hasOwnProperty(az)?aJ:bj)[az]}}var aD=document.createElement("div");aD.className="CodeMirror"+(b1.lineWrapping?" CodeMirror-wrap":"");aD.innerHTML='
Sencha Touch only functions on WebKit based browsers.
Please use Google Chrome or Safari to see live examples.
',"
","
")}},toHtml:function(){return this.tpl.apply(this)},setDevice:function(b){this.device=b;Ext.apply(this,this.getIframeSize())},setOrientation:function(b){this.orientation=b;Ext.apply(this,this.getIframeSize())},getIframeSize:function(){var b={phone:{width:"481px",height:"320px"},miniphone:{width:"320px",height:"219px"},tablet:{width:"717px",height:"538px"}}[this.device];if(this.orientation==="landscape"){return b}else{return{width:b.height,height:b.width}}}});Ext.define("Ext.form.field.VTypes",(function(){var h=/^[a-zA-Z_]+$/,g=/^[a-zA-Z0-9_]+$/,e=/^(\w+)([\-+.][\w]+)*@(\w[\-\w]*\.){1,5}([A-Za-z]){2,6}$/,f=/(((^https?)|(^ftp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@`~=%!]*)(\.\w{2,})?)*\/?)/i;return{singleton:true,alternateClassName:"Ext.form.VTypes",email:function(a){return e.test(a)},emailText:'This field should be an e-mail address in the format "user@example.com"',emailMask:/[a-z0-9_\.\-@\+]/i,url:function(a){return f.test(a)},urlText:'This field should be a URL in the format "http://www.example.com"',alpha:function(a){return h.test(a)},alphaText:"This field should only contain letters and _",alphaMask:/[a-z_]/i,alphanum:function(a){return g.test(a)},alphanumText:"This field should only contain letters, numbers and _",alphanumMask:/[a-z0-9_]/i}}()));Ext.define("Ext.util.Observable",{requires:["Ext.util.Event"],statics:{releaseCapture:function(b){b.fireEvent=this.prototype.fireEvent},capture:function(f,d,e){f.fireEvent=Ext.Function.createInterceptor(f.fireEvent,d,e)},observe:function(d,c){if(d){if(!d.isObservable){Ext.applyIf(d,new this());this.capture(d.prototype,d.fireEvent,d)}if(Ext.isObject(c)){d.on(c)}}return d},prepareClass:function(d){if(!d.HasListeners){var f=function(){},e=d.superclass.HasListeners||this.HasListeners;d.prototype.HasListeners=d.HasListeners=f;f.prototype=d.hasListeners=new e()}}},isObservable:true,constructor:function(d){var c=this;Ext.apply(c,d);if(!c.hasListeners){c.hasListeners=new c.HasListeners()}c.events=c.events||{};if(c.listeners){c.on(c.listeners);c.listeners=null}if(c.bubbleEvents){c.enableBubble(c.bubbleEvents)}},onClassExtended:function(b){if(!b.HasListeners){Ext.util.Observable.prepareClass(b)}},onClassMixedIn:function(b){if(!b.HasListeners){this.prepareClass(b);b.onExtended(this.prepareClass,this)}},eventOptionsRe:/^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate|element|vertical|horizontal|freezeEvent)$/,addManagedListener:function(k,o,m,n,p){var l=this,j=l.managedListeners=l.managedListeners||[],i;if(typeof o!=="string"){p=o;for(o in p){if(p.hasOwnProperty(o)){i=p[o];if(!l.eventOptionsRe.test(o)){l.addManagedListener(k,o,i.fn||i,i.scope||p.scope,i.fn?i:p)}}}}else{j.push({item:k,ename:o,fn:m,scope:n,options:p});k.on(o,m,n,p)}},removeManagedListener:function(m,r,o,l){var p=this,i,s,n,t,q;if(typeof r!=="string"){i=r;for(r in i){if(i.hasOwnProperty(r)){s=i[r];if(!p.eventOptionsRe.test(r)){p.removeManagedListener(m,r,s.fn||s,s.scope||i.scope)}}}}n=p.managedListeners?p.managedListeners.slice():[];for(q=0,t=n.length;qc){return c}while(bg){b=e}else{c=e}e=(c-b)/2+b}return e}return B(q,1/(200*w))},cubicBezier:function(f,h,g,j){var i=function(a){return Ext.fx.CubicBezier.cubicBezierAtTime(a,f,h,g,j,1)};i.toCSS3=function(){return"cubic-bezier("+[f,h,g,j].join(",")+")"};i.reverse=function(){return Ext.fx.CubicBezier.cubicBezier(1-g,1-j,1-f,1-h)};return i}});Ext.define("Ext.util.Sortable",{isSortable:true,defaultSortDirection:"ASC",requires:["Ext.util.Sorter"],initSortable:function(){var d=this,c=d.sorters;d.sorters=new Ext.util.AbstractMixedCollection(false,function(a){return a.id||a.property});if(c){d.sorters.addAll(d.decodeSorters(c))}},sort:function(l,m,p,n){var o=this,k,i,j;if(Ext.isArray(l)){n=p;p=m;j=l}else{if(Ext.isObject(l)){n=p;p=m;j=[l]}else{if(Ext.isString(l)){k=o.sorters.get(l);if(!k){k={property:l,direction:m};j=[k]}else{if(m===undefined){k.toggle()}else{k.setDirection(m)}}}}}if(j&&j.length){j=o.decodeSorters(j);if(Ext.isString(p)){if(p==="prepend"){l=o.sorters.clone().items;o.sorters.clear();o.sorters.addAll(j);o.sorters.addAll(l)}else{o.sorters.addAll(j)}}else{o.sorters.clear();o.sorters.addAll(j)}}if(n!==false){o.onBeforeSort(j);l=o.sorters.items;if(l.length){o.doSort(o.generateComparator())}}return l},generateComparator:function(){var b=this.sorters.getRange();return b.length?this.createComparator(b):this.emptyComparator},createComparator:function(b){return function(i,j){var a=b[0].sort(i,j),g=b.length,h=1;for(;h1){j=new Ext.util.MixedCollection();j.addAll(h);for(n=m.length;n--;){i=m[n];l=j.findBy(function(a){var b=i.getId();if(b&&a.getId()===b){return true}return a.internalId===i.internalId});k.updateClientRecord(i,l)}}else{i=m[0];l=h[0];if(l&&(i.phantom||i.getId()===l.getId())){k.updateClientRecord(i,l)}}if(k.actionCommitRecordsRe.test(k.action)){for(n=m.length;n--;){m[n].commit()}}}}},updateClientRecord:function(f,l){if(f&&l){f.beginEdit();var h=f.fields.items,i=h.length,j,k;for(k=0;k1){for(;n','
Comments should be an extension of the documentation.
",'
For any questions about code or usage, please use the Forum.
',"
Comments may be edited or deleted at any time by a moderator.
",'
Avatars can be managed at Gravatar (use your forum email address).
',"
Comments will be formatted using the Markdown syntax, eg:
","
",'
',"
Markdown
","
","Here is a **bold** item\n","Here is an _italic_ item\n","Here is an `inline` code snippet\n","Here is a [Link](#!/api)\n","\n"," Indent with 4 spaces\n"," for a code snippet\n","\n","1. Here is a numbered list\n","2. Second numbered list item\n","\n","- Here is an unordered list\n","- Second unordered list item\n","\n","End a line with two spaces\n","to create a line break\n","
","
",'
',"
Result
","Here is a bold item ","Here is an italic item ","Here is an inline code snippet ",'Here is a Link ',"
","Indent with 4 spaces\n","for a code snippet","
","","
Here is a numbered list
","
Second numbered list item
","","
","
Here is an unordered list
","
Second unordered list item
","
","End a line with two spaces to create a line break
',h.itemCls,g);h.tpl=new Ext.XTemplate(g,e)}if(!f(h.tpl)||!f(h.itemSelector)){Ext.Error.raise({sourceClass:"Ext.view.View",tpl:h.tpl,itemSelector:h.itemSelector,msg:"DataView requires both tpl and itemSelector configurations to be defined."})}h.callParent();if(Ext.isString(h.tpl)||Ext.isArray(h.tpl)){h.tpl=new Ext.XTemplate(h.tpl)}if(f(h.overCls)||f(h.overClass)){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.view.View: Using the deprecated overCls or overClass configuration. Use overItemCls instead.")}h.overItemCls=h.overCls||h.overClass;delete h.overCls;delete h.overClass}if(h.overItemCls){h.trackOver=true}if(f(h.selectedCls)||f(h.selectedClass)){if(Ext.isDefined(Ext.global.console)){Ext.global.console.warn("Ext.view.View: Using the deprecated selectedCls or selectedClass configuration. Use selectedItemCls instead.")}h.selectedItemCls=h.selectedCls||h.selectedClass;delete h.selectedCls;delete h.selectedClass}h.addEvents("beforerefresh","refresh","viewready","itemupdate","itemadd","itemremove");h.addCmpEvents();h.store=Ext.data.StoreManager.lookup(h.store||"ext-empty-store");h.all=new Ext.CompositeElementLite();h.scrollState={top:0,left:0};h.on({scroll:h.onViewScroll,element:"el",scope:h})},onRender:function(){var f=this,d=f.loadMask,e={msg:f.loadingText,msgCls:f.loadingCls,useMsg:f.loadingUseMsg};f.callParent(arguments);if(d){if(Ext.isObject(d)){e=Ext.apply(e,d)}f.loadMask=new Ext.LoadMask(f,e);f.loadMask.on({scope:f,beforeshow:f.onMaskBeforeShow,hide:f.onMaskHide})}},onMaskBeforeShow:function(){var c=this,d=c.loadingHeight;c.getSelectionModel().deselectAll();c.all.clear();if(d&&d>c.getHeight()){c.hasLoadingHeight=true;c.oldMinHeight=c.minHeight;c.minHeight=d;c.updateLayout()}},onMaskHide:function(){var b=this;if(!b.destroying&&b.hasLoadingHeight){b.minHeight=b.oldMinHeight;b.updateLayout();delete b.hasLoadingHeight}},afterRender:function(){this.callParent(arguments);this.getSelectionModel().bindComponent(this)},getSelectionModel:function(){var d=this,c="SINGLE";if(!d.selModel){d.selModel={}}if(d.simpleSelect){c="SIMPLE"}else{if(d.multiSelect){c="MULTI"}}Ext.applyIf(d.selModel,{allowDeselect:d.allowDeselect,mode:c});if(!d.selModel.events){d.selModel=new Ext.selection.DataViewModel(d.selModel)}if(!d.selModel.hasRelaySetup){d.relayEvents(d.selModel,["selectionchange","beforeselect","beforedeselect","select","deselect","focuschange"]);d.selModel.hasRelaySetup=true}if(d.disableSelection){d.selModel.locked=true}return d.selModel},refresh:function(){var l=this,i,g,k,j,h;if(!l.rendered||l.isDestroyed){return}if(!l.hasListeners.beforerefresh||l.fireEvent("beforerefresh",l)!==false){i=l.getTargetEl();h=l.store.getRange();j=i.dom;if(!l.preserveScrollOnRefresh){g=j.parentNode;j.style.display="none";k=j.nextSibling;g.removeChild(j)}if(l.refreshCounter){l.clearViewEl()}else{l.fixedNodes=i.dom.childNodes.length;l.refreshCounter=1}l.tpl.append(i,l.collectData(h,0));if(h.length<1){if(!l.deferEmptyText||l.hasSkippedEmptyText){Ext.core.DomHelper.insertHtml("beforeEnd",i.dom,l.emptyText)}l.all.clear()}else{l.all.fill(Ext.query(l.getItemSelector(),i.dom));l.updateIndexes(0)}l.selModel.refresh();l.hasSkippedEmptyText=true;if(!l.preserveScrollOnRefresh){g.insertBefore(j,k);j.style.display=""}this.refreshSize();l.fireEvent("refresh",l);if(!l.viewReady){l.viewReady=true;l.fireEvent("viewready",l)}}},refreshSize:function(){var b=this.getSizeModel();if(b.height.shrinkWrap||b.width.shrinkWrap){this.updateLayout()}},clearViewEl:function(){var c=this,d=c.getTargetEl();if(c.fixedNodes){while(d.dom.childNodes[c.fixedNodes]){d.dom.removeChild(d.dom.childNodes[c.fixedNodes])}}else{d.update("")}c.refreshCounter++},onViewScroll:Ext.emptyFn,saveScrollState:function(){if(this.rendered){var c=this.el.dom,d=this.scrollState;d.left=c.scrollLeft;d.top=c.scrollTop}},restoreScrollState:function(){if(this.rendered){var c=this.el.dom,d=this.scrollState;c.scrollLeft=d.left;c.scrollTop=d.top}},prepareData:function(h,i,j){var f,g;if(j){f=j.getAssociatedData();for(g in f){if(f.hasOwnProperty(g)){h[g]=f[g]}}}return h},collectData:function(l,i){var j=[],k=0,h=l.length,g;for(;k-1){j=i.bufferRender([g],f)[0];if(i.getNode(g)){i.all.replaceElement(f,j,true);i.updateIndexes(f,f);i.selModel.refresh();if(i.hasListeners.itemupdate){i.fireEvent("itemupdate",g,f,j)}return j}}},onAdd:function(h,f,j){var i=this,g;if(i.all.getCount()===0){i.refresh();return}g=i.bufferRender(f,j);i.doAdd(g,f,j);i.selModel.refresh();i.updateIndexes(j);this.refreshSize();if(i.hasListeners.itemadd){i.fireEvent("itemadd",f,j,g)}},doAdd:function(f,g,j){var i=this.all,h=i.getCount();if(h===0){this.clearViewEl();this.getTargetEl().appendChild(f)}else{if(j=g&&i[j];j--){f.push(i[j])}}return f},indexOf:function(b){b=this.getNode(b);if(Ext.isNumber(b.viewIndex)){return b.viewIndex}return this.all.indexOf(b)},onDestroy:function(){var b=this;b.all.clear();b.callParent();b.bindStore(null);b.selModel.destroy()},onItemSelect:function(d){var c=this.getNode(d);if(c){Ext.fly(c).addCls(this.selectedItemCls)}},onItemDeselect:function(d){var c=this.getNode(d);if(c){Ext.fly(c).removeCls(this.selectedItemCls)}},getItemSelector:function(){return this.itemSelector}},function(){Ext.deprecate("extjs","4.0",function(){Ext.view.AbstractView.override({getSelectionCount:function(){if(Ext.global.console){Ext.global.console.warn("DataView: getSelectionCount will be removed, please interact with the Ext.selection.DataViewModel")}return this.selModel.getSelection().length},getSelectedRecords:function(){if(Ext.global.console){Ext.global.console.warn("DataView: getSelectedRecords will be removed, please interact with the Ext.selection.DataViewModel")}return this.selModel.getSelection()},select:function(f,e,g){if(Ext.global.console){Ext.global.console.warn("DataView: select will be removed, please access select through a DataView's SelectionModel, ie: view.getSelectionModel().select()")}var h=this.getSelectionModel();return h.select.apply(h,arguments)},clearSelections:function(){if(Ext.global.console){Ext.global.console.warn("DataView: clearSelections will be removed, please access deselectAll through DataView's SelectionModel, ie: view.getSelectionModel().deselectAll()")}var b=this.getSelectionModel();return b.deselectAll()}})})});Ext.define("Ext.view.View",{extend:"Ext.view.AbstractView",alternateClassName:"Ext.DataView",alias:"widget.dataview",inheritableStatics:{EventMap:{mousedown:"MouseDown",mouseup:"MouseUp",click:"Click",dblclick:"DblClick",contextmenu:"ContextMenu",mouseover:"MouseOver",mouseout:"MouseOut",mouseenter:"MouseEnter",mouseleave:"MouseLeave",keydown:"KeyDown",focus:"Focus"}},addCmpEvents:function(){this.addEvents("beforeitemmousedown","beforeitemmouseup","beforeitemmouseenter","beforeitemmouseleave","beforeitemclick","beforeitemdblclick","beforeitemcontextmenu","beforeitemkeydown","itemmousedown","itemmouseup","itemmouseenter","itemmouseleave","itemclick","itemdblclick","itemcontextmenu","itemkeydown","beforecontainermousedown","beforecontainermouseup","beforecontainermouseover","beforecontainermouseout","beforecontainerclick","beforecontainerdblclick","beforecontainercontextmenu","beforecontainerkeydown","containermouseup","containermouseover","containermouseout","containerclick","containerdblclick","containercontextmenu","containerkeydown","selectionchange","beforeselect","highlightitem","unhighlightitem")},getFocusEl:function(){return this.getTargetEl()},afterRender:function(){var c=this,d;c.callParent();d={scope:c,freezeEvent:true,click:c.handleEvent,mousedown:c.handleEvent,mouseup:c.handleEvent,dblclick:c.handleEvent,contextmenu:c.handleEvent,mouseover:c.handleEvent,mouseout:c.handleEvent,keydown:c.handleEvent};c.mon(c.getTargetEl(),d);if(c.store){c.bindStore(c.store,true)}},handleEvent:function(c){var d=c.type=="keydown"&&c.getKey();if(this.processUIEvent(c)!==false){this.processSpecialEvent(c)}if(d===c.SPACE){c.stopEvent()}},processItemEvent:Ext.emptyFn,processContainerEvent:Ext.emptyFn,processSpecialEvent:Ext.emptyFn,stillOverItem:function(d,e){var f;if(e&&typeof(e.offsetParent)==="object"){f=(d.type=="mouseout")?d.getRelatedTarget():d.getTarget();return Ext.fly(e).contains(f)}return false},processUIEvent:function(m){var l=this,e=m.getTarget(l.getItemSelector(),l.getTargetEl()),r=this.statics().EventMap,n,p,k=m.type,o=l.mouseOverItem,q;if(!e){if(k=="mouseover"&&l.stillOverItem(m,o)){e=o}if(k=="keydown"){p=l.getSelectionModel().getLastSelected();if(p){e=l.getNode(p)}}}if(e){n=l.indexOf(e);if(!p){p=l.getRecord(e)}if(!p||l.processItemEvent(p,e,n,m)===false){return false}q=l.isNewItemEvent(e,m);if(q===false){return false}if((l["onBeforeItem"+r[q]](p,e,n,m)===false)||(l.fireEvent("beforeitem"+q,l,p,e,n,m)===false)||(l["onItem"+r[q]](p,e,n,m)===false)){return false}l.fireEvent("item"+q,l,p,e,n,m)}else{if((l.processContainerEvent(m)===false)||(l["onBeforeContainer"+r[k]](m)===false)||(l.fireEvent("beforecontainer"+k,l,m)===false)||(l["onContainer"+r[k]](m)===false)){return false}l.fireEvent("container"+k,l,m)}return true},isNewItemEvent:function(i,h){var j=this,g=j.mouseOverItem,e=h.type;switch(e){case"mouseover":if(i===g){return false}j.mouseOverItem=i;return"mouseenter";case"mouseout":if(j.stillOverItem(h,g)){return false}j.mouseOverItem=null;return"mouseleave"}return e},onItemMouseEnter:function(f,h,e,g){if(this.trackOver){this.highlightItem(h)}},onItemMouseLeave:function(f,h,e,g){if(this.trackOver){this.clearHighlight()}},onItemMouseDown:Ext.emptyFn,onItemMouseUp:Ext.emptyFn,onItemFocus:Ext.emptyFn,onItemClick:Ext.emptyFn,onItemDblClick:Ext.emptyFn,onItemContextMenu:Ext.emptyFn,onItemKeyDown:Ext.emptyFn,onBeforeItemMouseDown:Ext.emptyFn,onBeforeItemMouseUp:Ext.emptyFn,onBeforeItemFocus:Ext.emptyFn,onBeforeItemMouseEnter:Ext.emptyFn,onBeforeItemMouseLeave:Ext.emptyFn,onBeforeItemClick:Ext.emptyFn,onBeforeItemDblClick:Ext.emptyFn,onBeforeItemContextMenu:Ext.emptyFn,onBeforeItemKeyDown:Ext.emptyFn,onContainerMouseDown:Ext.emptyFn,onContainerMouseUp:Ext.emptyFn,onContainerMouseOver:Ext.emptyFn,onContainerMouseOut:Ext.emptyFn,onContainerClick:Ext.emptyFn,onContainerDblClick:Ext.emptyFn,onContainerContextMenu:Ext.emptyFn,onContainerKeyDown:Ext.emptyFn,onBeforeContainerMouseDown:Ext.emptyFn,onBeforeContainerMouseUp:Ext.emptyFn,onBeforeContainerMouseOver:Ext.emptyFn,onBeforeContainerMouseOut:Ext.emptyFn,onBeforeContainerClick:Ext.emptyFn,onBeforeContainerDblClick:Ext.emptyFn,onBeforeContainerContextMenu:Ext.emptyFn,onBeforeContainerKeyDown:Ext.emptyFn,highlightItem:function(c){var d=this;d.clearHighlight();d.highlightedItem=c;Ext.fly(c).addCls(d.overItemCls);d.fireEvent("highlightitem",d,c)},clearHighlight:function(){var c=this,d=c.highlightedItem;if(d){Ext.fly(d).removeCls(c.overItemCls);c.fireEvent("unhighlightitem",c,d);delete c.highlightedItem}},onUpdate:function(g,h){var i=this,j=i.getNode(h),l=i.callParent(arguments),k=i.highlightedItem;if(k&&k===j){delete i.highlightedItem;if(l){i.highlightItem(l)}}},refresh:function(){this.clearHighlight();this.callParent(arguments)}});Ext.define("Docs.view.search.Dropdown",{extend:"Ext.view.View",alias:"widget.searchdropdown",floating:true,autoShow:false,autoRender:true,toFrontOnShow:true,focusOnToFront:false,store:"Search",id:"search-dropdown",overItemCls:"x-view-over",trackOver:true,itemSelector:"div.item",singleSelect:true,pageStart:0,pageSize:10,initComponent:function(){this.addEvents("changePage","footerClick");this.tpl=new Ext.XTemplate('','
","",{columnHeight:this.columnHeight,renderLink:function(d){var c=Ext.Array.map(Docs.data.signatures,function(a){return d.meta[a.key]?''+(a["short"])+"":""}).join(" ");return Ext.String.format('{1} {2}',d.url,d.label,c)}});this.callParent()}});Ext.define("Ext.data.NodeStore",{extend:"Ext.data.Store",alias:"store.node",requires:["Ext.data.NodeInterface"],node:null,recursive:false,rootVisible:false,constructor:function(e){var f=this,d;e=e||{};Ext.apply(f,e);if(Ext.isDefined(f.proxy)){Ext.Error.raise("A NodeStore cannot be bound to a proxy. Instead bind it to a record decorated with the NodeInterface by setting the node config.")}f.useModelWarning=false;e.proxy={type:"proxy"};f.callParent([e]);d=f.node;if(d){f.node=null;f.setNode(d)}},setNode:function(c){var d=this;if(d.node&&d.node!=c){d.mun(d.node,{expand:d.onNodeExpand,collapse:d.onNodeCollapse,append:d.onNodeAppend,insert:d.onNodeInsert,remove:d.onNodeRemove,sort:d.onNodeSort,scope:d});d.node=null}if(c){Ext.data.NodeInterface.decorate(c.self);d.removeAll();if(d.rootVisible){d.add(c)}else{if(!c.isExpanded()&&d.treeStore.autoLoad!==false){c.expand()}}d.mon(c,{expand:d.onNodeExpand,collapse:d.onNodeCollapse,append:d.onNodeAppend,insert:d.onNodeInsert,remove:d.onNodeRemove,sort:d.onNodeSort,scope:d});d.node=c;if(c.isExpanded()&&c.isLoaded()){d.onNodeExpand(c,c.childNodes,true)}}},onNodeSort:function(d,f){var e=this;if((e.indexOf(d)!==-1||(d===e.node&&!e.rootVisible)&&d.isExpanded())){e.onNodeCollapse(d,f,true);e.onNodeExpand(d,f,true)}},onNodeExpand:function(m,o,p){var k=this,j=k.indexOf(m)+1,l=o?o.length:0,n,i;if(!k.recursive&&m!==k.node){return}if(m!==this.node&&!k.isVisible(m)){return}if(!p&&k.fireEvent("beforeexpand",m,o,j)===false){return}if(l){k.insert(j,o);for(n=0;n'}t=Ext.get(s);v=t.insertSibling({tag:"tr",html:['