what's coming next in sencha frameworks
DESCRIPTION
Don Griffin at ModUX 2013 http://moduxcon.comTRANSCRIPT
![Page 1: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/1.jpg)
What’s ComingNext in
Sencha Frameworks
![Page 3: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/3.jpg)
FrameworkGoals
![Page 4: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/4.jpg)
Awesome Apps
Scalable Development
Device Compatibility
Goals
![Page 5: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/5.jpg)
CommonCore
![Page 6: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/6.jpg)
sencha-core
![Page 7: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/7.jpg)
sencha-core
Goals
![Page 8: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/8.jpg)
Consistency
Compatibility
sencha-core : Goals
![Page 9: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/9.jpg)
sencha-core
Content
![Page 10: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/10.jpg)
sencha-core : Content
Feature / EnvironmentDetection
Ext.env, Ext.feature,Ext.browser, Ext.os,Ext.supports, Ext.is
![Page 11: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/11.jpg)
Utilities
XTemplate, Ext.Array,Ext.Object, Ext.String,Ext.Function, Ext.Date,
...
sencha-core : Content
![Page 12: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/12.jpg)
Class System
sencha-core : Content
![Page 13: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/13.jpg)
Dynamic Loader
sencha-core : Content
![Page 14: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/14.jpg)
Momentum Scroller
sencha-core : Content
![Page 15: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/15.jpg)
Delegated Event System
sencha-core : Content
![Page 16: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/16.jpg)
Gesture Recognition
sencha-core : Content
![Page 17: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/17.jpg)
Ext.data
Investigating
sencha-core : Content
![Page 18: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/18.jpg)
Charts
![Page 19: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/19.jpg)
Charts - Today
Ext JS
Ext.chart
SenchaTouchExt.chart
![Page 20: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/20.jpg)
Charts - Today
Ext JS
![Page 21: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/21.jpg)
Charts - Ext JS Today
Designed for Desktop
![Page 22: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/22.jpg)
Charts - Ext JS Today
Mouse Input
![Page 23: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/23.jpg)
Charts - Ext JS Today
Plenty of Memory & CPU
![Page 24: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/24.jpg)
Charts - Today
Sencha Touch
![Page 25: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/25.jpg)
Charts - Touch Today
Designed for Touch Input
![Page 26: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/26.jpg)
Charts - Touch Today
Constrained Memory
![Page 27: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/27.jpg)
Charts - Touch Today
Limited CPU
![Page 28: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/28.jpg)
Charts - Touch Today
Large Datasets
![Page 29: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/29.jpg)
Charts - Going Forward
Unification
Leverage Gains
Easy Migration
![Page 30: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/30.jpg)
Charts
Ext JS
ext-chartsExt.chart
SenchaTouchExt.chartsencha-charts
Today
Packages
![Page 31: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/31.jpg)
Sencha Touch
![Page 32: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/32.jpg)
NewThemes
![Page 33: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/33.jpg)
Blackberry 10
![Page 34: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/34.jpg)
![Page 35: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/35.jpg)
Cordova /PhoneGap
![Page 36: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/36.jpg)
Ext.device.*
![Page 37: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/37.jpg)
sencha cordova init
![Page 38: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/38.jpg)
sencha phonegap init
![Page 39: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/39.jpg)
TouchGrid
![Page 40: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/40.jpg)
Demo
![Page 41: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/41.jpg)
Ext JS
![Page 42: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/42.jpg)
TouchEvents
![Page 43: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/43.jpg)
tapswipe
pinch
touchmove
touchstart/end
longpressrotate
doubletap
tapcancel
singletap
pinchstart/end
rotatestart/end
drag
![Page 44: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/44.jpg)
el.on({ click: this.onClick});el.on({ tap: this.onClick});
Translated
![Page 45: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/45.jpg)
Grid
![Page 46: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/46.jpg)
CellUpdating
![Page 47: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/47.jpg)
Custom Rendererscolumns: [{ text: '% Change', dataIndex: 'field',
renderer: function (v) { var c = (v < 0) ? 'red' : 'green'; return '<span style="color:'+c+';">' + Ext.util.Format.number(v, '0.00') + '</span>'; }}]
![Page 48: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/48.jpg)
Anatomy of a Grid Cell
<tr> <td class="..."> <div class="x-‐grid-‐cell-‐inner"> <span style="color:red">...</span> </div> </td></tr>
![Page 49: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/49.jpg)
Grid Updates Today
record.set('field', 42);
![Page 50: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/50.jpg)
Grid Updates Today
Render
The Cell
...Again
![Page 51: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/51.jpg)
Grid Updates Today
<tr> <td class="..."> <div class="x-‐grid-‐cell-‐inner"> <span style="color:red">...</span> </div> </td></tr>
?
![Page 52: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/52.jpg)
Grid Updates TodayThe full signature for renderer is:
function (value, cellData, // problem #1 record, rowIndex, columnIndex, store, view);
![Page 53: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/53.jpg)
Grid Updates Today
cellData.innerCls
vs.
<div>
![Page 54: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/54.jpg)
Grid Updates Today
<tr> <td class="..."> <div class="x-‐grid-‐cell-‐inner"> <span style="color:red">...</span> </div> </td></tr>
?
![Page 55: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/55.jpg)
Grid Updates Today
cellData.tdCls
vs.
<td>
![Page 56: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/56.jpg)
Grid Updates Today
<tr> <td class="..."> <div class="x-‐grid-‐cell-‐inner"> <span style="color:red">...</span> </div> </td></tr>
![Page 57: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/57.jpg)
Grid Updates Today
Not so bad
?
![Page 58: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/58.jpg)
Grid Updates Today
record.set('other', 2);
![Page 59: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/59.jpg)
Grid Updates TodayThe full signature for renderer is:
function (value, cellData, record, // problem #2 rowIndex, columnIndex, store, view);
![Page 60: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/60.jpg)
Grid Updates Today
When
Any
Field Changes?!
![Page 61: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/61.jpg)
Grid Cell Updaters
update !== render
![Page 62: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/62.jpg)
Grid Cell Updaterscolumns: [{ text: '% Change', dataIndex: 'fieldName', depends: ['field2', 'field3'], renderer: ...,
updater: function (el, v, record) { var sp = Ext.fly(el).down('span', true);
sp.style.color = (v < 0) ? 'red' : 'green'; sp.firstChild.data = Ext.util.Format.number(v, '0.00'); }}]
![Page 63: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/63.jpg)
Grid Cell Updaters
Minimal DOM
Change
![Page 64: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/64.jpg)
Grid Cell Updaters
Only When
Needed
![Page 65: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/65.jpg)
BufferedUpdates
![Page 66: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/66.jpg)
Buffered Updates
Configure
Maximum
Rate
![Page 67: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/67.jpg)
Buffered Updates
Tracks
Field
Changes
![Page 68: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/68.jpg)
Gadgets
![Page 69: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/69.jpg)
Gadgets
ThinkFlyweight
Components
![Page 70: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/70.jpg)
Gadgets
Minimal Life-cycle
![Page 71: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/71.jpg)
Gadgets
Data Bound
![Page 72: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/72.jpg)
Gadgets
Gadget el0
childEl childEl
elel1
childEl childEl
+data
+data
![Page 73: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/73.jpg)
Gadgets
DeclarativeListeners
![Page 74: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/74.jpg)
GadgetsExt.define('Ext.gadget.Slider', extend: 'Ext.gadget.Gadget',... listeners: { mousedown: 'onMouseDown', dragstart: 'cancelDrag', drag: 'cancelDrag', dragend: 'cancelDrag' },
![Page 75: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/75.jpg)
Gadgets
Listenersin
childEls
![Page 76: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/76.jpg)
Gadgets
Eventsare
Delegated
![Page 77: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/77.jpg)
Gadgets
gadget.attach(data, el);
![Page 78: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/78.jpg)
Gadgets - Grid Column
columns: [{ xtype: 'gadgetcolumn', dataIndex: 'status', gadget: 'progressbar'}]
Configured on columns similar to ‘editor’
![Page 79: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/79.jpg)
Gadgets - Grid Column
columns: [{ xtype: 'gadgetcolumn', gadget: { type: 'button', text: 'Remove' }}]
![Page 80: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/80.jpg)
Gadgets - Grid Column
columns: [{ xtype: 'gadgetcolumn', dataIndex: 'size', gadget: 'slider'}]
In some case it can even edit like an ‘editor’
![Page 81: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/81.jpg)
Gadgets - Grid Column
columns: [{ text: 'Trend', gadget: { type: 'sparkline.line', width: '100%', tipTpl: 'Price: {y:number("0.00")}' }}]
![Page 82: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/82.jpg)
Demo
![Page 83: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/83.jpg)
MVCRouting
![Page 84: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/84.jpg)
Address Bar
Controller Methods
![Page 85: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/85.jpg)
http://www.foo.com/app#foo/bar
controller.handleFooBar()
![Page 86: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/86.jpg)
Ext.define('MyApp.controller.Foo', { extend: 'Ext.app.Controller',
config : { routes : { 'foo/bar': 'handleFoo' } },
handleFoo: function () { ... }});
![Page 87: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/87.jpg)
What about Parameters?
![Page 88: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/88.jpg)
http://www.foo.com/app#foo/bar/42
controller.handleFooBar(42)
![Page 89: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/89.jpg)
config : { routes : { 'foo/bar/:id': 'handleFooBar' } },
handleFooBar: function (id) { ... }
![Page 90: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/90.jpg)
Validating Actions
![Page 91: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/91.jpg)
config : { routes : { 'foo/bar/:id': { action: 'handleFoo', before: 'beforeFoo' } } },
beforeFoo: function (id, action) { ... validate action ... }
![Page 92: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/92.jpg)
Forms
![Page 93: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/93.jpg)
Ext.picker.Color
![Page 94: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/94.jpg)
Ext.button.Segmented
![Page 95: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/95.jpg)
Ext.form.field.Tag
![Page 96: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/96.jpg)
Demo
![Page 97: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/97.jpg)
BorderLayout
![Page 98: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/98.jpg)
Region Groups
Shared space for Regions
![Page 99: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/99.jpg)
Group Arrangement
TabsBoxes
Accordion
![Page 100: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/100.jpg)
Stateful
Item Persistence
![Page 101: What's Coming Next in Sencha Frameworks](https://reader034.vdocuments.us/reader034/viewer/2022052601/558bee4ed8b42a204f8b464e/html5/thumbnails/101.jpg)
Demo