SlideShare uma empresa Scribd logo
1 de 20
Ext JS Overview for: Austin Flex User Group – July 2010
[object Object],About Me:  Corey Butler
Sencha makes application frameworks that equip developers to create, deploy and optimize compelling application experiences using web-standard technologies such as HTML5. The company’s flagship product, Sencha Touch, produces cross-platform rich internet applications for modern mobile devices. The product includes a comprehensive mobile UI widget-set, a well-architected, extensible component model, and an intuitive, easy-to-use API. More than one million developers worldwide — representing more than 150,000 companies — use the Sencha product family to build amazing application experiences.   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Cross-browser  client-side JavaScript  library for RIAs What is Ext JS? Originally built as a YUI extension.  Standalone or YUI/JQuery/Prototype Extension Customizable/Extensible UI Widgets   Available via Google/CacheFly Comparable to Flex/AIR
More UI Examples Layouts, Editors, Forms, Trees, Tabs & Much More!
Why Use Ext JS? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
When to Use Ext JS ,[object Object],[object Object],[object Object],[object Object],When  NOT  to Use Ext JS
Flex vs Ext JS *JS Minification/Obfuscation Available **CF uses ExtJS Core ECMA-Script base Themes/Skins Native inclusion in Adobe ColdFusion** Eclipse IDE Available OSS & Commercial Licensing Constructed Binding TCP/IP (AJAX) Interpreted* No Plug-ins Required Modular Native Framework Native Binding AMF/Binary Sockets Compiled Requires Flash Player Single Native Framework Ext JS Flex
How it Works Layout Container Container Container
How it Works <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;>  <head> <title> My RIA </title>   <link href= &quot; http://extjs.cachefly.net/ext-3.2.1/resources/css/ext-all.css &quot; />   <script src= &quot; http://extjs.cachefly.net/ext-3.2.1/adapter/ext/ext-base.js &quot;/></script> <script src= &quot; http://extjs.cachefly.net/ext-3.2.1/ext-all.js &quot; ></script>   </head>   <body> <script src= &quot; myextjsapp.js &quot; ></script> </body>   </html>   Ext.onReady( function (){  var  header =  new  Ext.Panel({region: 'north' ,html: 'North' ,title: 'Header' }); var  main  =  new  Ext.Panel({ region: 'center' , autoLoad: 'mypage.cfm' , title: 'Main‘   }); var  left  =  new  Ext.Panel({ region: 'west' , html: 'Left' , width: 300 , title: 'Left' , collapsible: true   }); new  Ext.Viewport({ layout:  'border' , border:  false , defaults: {split:  true ,layout: 'fit' ,border: true }, items: [header,left,main], }); }); Basic Layout Basic Functionality
Basic Skin Example
Async Example
Async Connectivity var  storeLocales =  new  Ext.data.SimpleStore({ fields: [ 'locale' , 'language' ], data: []   }); var  locrec  =  new  Ext.data.Record.create([ {name: 'locale' ,mapping: 'locale' }, {name: 'language' ,mapping: 'language' }   ]); function  loadLanguages() { Ext.Ajax.request({ url:  'http://mydomain.com/formprocessor' , params:{get: 'locales' }, success: function (rsp,obj){ l = Ext.decode(rsp.responseText).locales; for ( var  i=0;i<l.length;i++)   storeLocales.add( new  locrec({   locale:l[i].LOCALE,   language:l[i].LANGUAGE   })); } storeLocales.sort('language');   } }); } loadLanguages();  //Load the data ({ &quot;locales&quot;:[{ &quot;LOCALE&quot;:&quot;ja_jp&quot;, &quot;LANGUAGE&quot;:&quot;Japanese (Japan)“ },{ &quot;LOCALE&quot;:&quot;es_pe&quot;, &quot;LANGUAGE&quot;:&quot;Spanish (Peru)“ },{ &quot;LOCALE&quot;:&quot;en&quot;, &quot;LANGUAGE&quot;:&quot;English“ }] })
Async Breakdown var  storeLocales =  new  Ext.data.SimpleStore({ fields: [ 'locale' , 'language' ], data: []   }); var   locrec   =  new  Ext.data.Record.create([ {name: 'locale' ,mapping: 'locale' }, {name: 'language' ,mapping: 'language' }   ]); function  loadLanguages() { Ext.Ajax.request({ url:  'http://mydomain.com/formprocessor' , params:{get: 'locales' }, success: function (rsp,obj){ l = Ext.decode(rsp.responseText).locales; for ( var  i=0;i<l.length;i++)   storeLocales.add( new   locrec ({   locale:l[i].LOCALE,   language:l[i].LANGUAGE   })); } storeLocales.sort('language');   } }); } loadLanguages();  //Load the data ({ &quot;locales&quot;:[{ &quot;LOCALE&quot;:&quot;ja_jp&quot;, &quot;LANGUAGE&quot;:&quot;Japanese (Japan)“ },{ &quot;LOCALE&quot;:&quot;es_pe&quot;, &quot;LANGUAGE&quot;:&quot;Spanish (Peru)“ },{ &quot;LOCALE&quot;:&quot;en&quot;, &quot;LANGUAGE&quot;:&quot;English“ }] }) Data stores are bound to components like grids and combo boxes.
Examples
Questions ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Extensibility Custom Object - MyPanel MyApp.MyPanel =  function (config) { MyApp.MyPanel.superclass.constructor.call( this , Ext.applyIf(config, { title: ’MyApp Default Title’ , collapsible:  true , closable:  false , bodyStyle: ’padding:15px; font-weight: bold;’ , … }) ); }; Ext.extend(MyApp.MyPanel, Ext.Panel, { // custom methods go here }); Ext.reg(‘mypanel’, MyApp.MyPanel); Using Custom Object var  obj = { xtype:  ’mypanel’ title:  ‘My Title’ }; OR var  obj =  new  MyApp.MyPanel({ title:  ‘My Title’ });
Compatibility JQuery Extension <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;>  <head> <title> My RIA </title>   <script src=&quot; jquery.js &quot;/></script> <script src= &quot; ext-3.2.1/adapter/jquery/jquery-plugins.js &quot;/></script> <script src= &quot; ext-3.2.1/adapter/jquery/ext-jquery-adapter.js &quot; ></script>   <script src= &quot; ext-3.2.1/ext-all.js &quot; ></script>   <link href= &quot; ext-3.2.1/resources/css/ext-all.css &quot; />   </head>   <body> <script src= &quot; myextjsapp.js &quot; ></script> </body>   </html>   Usage $(document).ready( function (){ $('#wheelink').bind('click', function () {  Ext.Msg.alert( 'Whee alert!' ,  'Thanks for clicking me, WHEE!' );  }); });
Resources http://www. sencha .com/deploy/dev/docs/ Icons from http://www. famfamfam .com (Silk) http://www. sencha .com/ forum http://www. sencha .com/ blog JSLint .com  (JSON) SPKET  (Eclipse Plugin) Firebug  for Firefox
More Info @  http://www.sencha.com Send questions to   [email_address]   @goldglovecb, @ecorgroup   http://www.linkedin.com/in/ecorsystems   http://www.facebook.com/goldglovecb   http://www.facebook.com/ecorgroup Open Source Example Apps (Require ColdFusion):   http:// open.ecorgroup.com /surveymanager   http:// open.ecorgroup.com /assettracker

Mais conteúdo relacionado

Mais procurados

Everything you need to know about PowerShell
Everything you need to know about PowerShellEverything you need to know about PowerShell
Everything you need to know about PowerShellShane Hoey
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeLaurence Svekis ✔
 
WordCamp ABQ 2013: Making the leap from Designer to Designer/Developer
WordCamp ABQ 2013: Making the leap from Designer to Designer/DeveloperWordCamp ABQ 2013: Making the leap from Designer to Designer/Developer
WordCamp ABQ 2013: Making the leap from Designer to Designer/Developermy easel
 
Wordcamp abq cf-cpt
Wordcamp abq cf-cptWordcamp abq cf-cpt
Wordcamp abq cf-cptmy easel
 
WordPress development paradigms, idiosyncrasies and other big words
WordPress development paradigms, idiosyncrasies and other big wordsWordPress development paradigms, idiosyncrasies and other big words
WordPress development paradigms, idiosyncrasies and other big wordsTomAuger
 
Introduction to whats new in css3
Introduction to whats new in css3Introduction to whats new in css3
Introduction to whats new in css3Usman Mehmood
 
WordCamp Detroit 2010 Wordpress Theme Hacks
WordCamp Detroit 2010 Wordpress Theme HacksWordCamp Detroit 2010 Wordpress Theme Hacks
WordCamp Detroit 2010 Wordpress Theme HacksJohn Pratt
 
4. html css-java script-basics
4. html css-java script-basics4. html css-java script-basics
4. html css-java script-basicsNikita Garg
 
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />tutorialsruby
 
Aspnet mvc tutorial_9_cs
Aspnet mvc tutorial_9_csAspnet mvc tutorial_9_cs
Aspnet mvc tutorial_9_csMurali G
 
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)성일 한
 
Web Projects: From Theory To Practice
Web Projects: From Theory To PracticeWeb Projects: From Theory To Practice
Web Projects: From Theory To PracticeSergey Bolshchikov
 
JSF Custom Components
JSF Custom ComponentsJSF Custom Components
JSF Custom ComponentsMichael Fons
 
Eugene Andruszczenko: jQuery
Eugene Andruszczenko: jQueryEugene Andruszczenko: jQuery
Eugene Andruszczenko: jQueryRefresh Events
 
Front End Development: The Important Parts
Front End Development: The Important PartsFront End Development: The Important Parts
Front End Development: The Important PartsSergey Bolshchikov
 
Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshellLennart Schoors
 

Mais procurados (19)

Sencha touch
Sencha touchSencha touch
Sencha touch
 
Everything you need to know about PowerShell
Everything you need to know about PowerShellEverything you need to know about PowerShell
Everything you need to know about PowerShell
 
JavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your codeJavaScript Advanced - Useful methods to power up your code
JavaScript Advanced - Useful methods to power up your code
 
Extjs
ExtjsExtjs
Extjs
 
WordCamp ABQ 2013: Making the leap from Designer to Designer/Developer
WordCamp ABQ 2013: Making the leap from Designer to Designer/DeveloperWordCamp ABQ 2013: Making the leap from Designer to Designer/Developer
WordCamp ABQ 2013: Making the leap from Designer to Designer/Developer
 
Wordcamp abq cf-cpt
Wordcamp abq cf-cptWordcamp abq cf-cpt
Wordcamp abq cf-cpt
 
WordPress development paradigms, idiosyncrasies and other big words
WordPress development paradigms, idiosyncrasies and other big wordsWordPress development paradigms, idiosyncrasies and other big words
WordPress development paradigms, idiosyncrasies and other big words
 
Introduction to whats new in css3
Introduction to whats new in css3Introduction to whats new in css3
Introduction to whats new in css3
 
WordCamp Detroit 2010 Wordpress Theme Hacks
WordCamp Detroit 2010 Wordpress Theme HacksWordCamp Detroit 2010 Wordpress Theme Hacks
WordCamp Detroit 2010 Wordpress Theme Hacks
 
4. html css-java script-basics
4. html css-java script-basics4. html css-java script-basics
4. html css-java script-basics
 
&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />&lt;img src="../i/r_14.png" />
&lt;img src="../i/r_14.png" />
 
Aspnet mvc tutorial_9_cs
Aspnet mvc tutorial_9_csAspnet mvc tutorial_9_cs
Aspnet mvc tutorial_9_cs
 
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)
파이썬 플라스크로 배우는 웹프로그래밍 #2 (ABCD)
 
Web Projects: From Theory To Practice
Web Projects: From Theory To PracticeWeb Projects: From Theory To Practice
Web Projects: From Theory To Practice
 
JSF Custom Components
JSF Custom ComponentsJSF Custom Components
JSF Custom Components
 
Eugene Andruszczenko: jQuery
Eugene Andruszczenko: jQueryEugene Andruszczenko: jQuery
Eugene Andruszczenko: jQuery
 
Front End Development: The Important Parts
Front End Development: The Important PartsFront End Development: The Important Parts
Front End Development: The Important Parts
 
Basic php 5
Basic php 5Basic php 5
Basic php 5
 
Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshell
 

Destaque

Filgrastim_prevents_severe_neutropenia_and_reduces.8
Filgrastim_prevents_severe_neutropenia_and_reduces.8Filgrastim_prevents_severe_neutropenia_and_reduces.8
Filgrastim_prevents_severe_neutropenia_and_reduces.8rjwong6
 
Water availability under climate change - CLIMAWARE project
Water availability under climate change - CLIMAWARE projectWater availability under climate change - CLIMAWARE project
Water availability under climate change - CLIMAWARE projectRiccardo Rigon
 
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...Jaak Vlasveld
 
CBIZ B&I Webinar Series 2017
CBIZ B&I Webinar Series 2017 CBIZ B&I Webinar Series 2017
CBIZ B&I Webinar Series 2017 Daniel Michels
 
Climaware task 3 1 - rosatti zugliani zorzi
Climaware   task 3 1 - rosatti zugliani zorziClimaware   task 3 1 - rosatti zugliani zorzi
Climaware task 3 1 - rosatti zugliani zorziRiccardo Rigon
 
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb Liss
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb LissLeverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb Liss
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb LissAudrey Perelshtein
 
sprawl developments measurement indicator and projections in selected nigeri...
sprawl developments  measurement indicator and projections in selected nigeri...sprawl developments  measurement indicator and projections in selected nigeri...
sprawl developments measurement indicator and projections in selected nigeri...IJAEMSJORNAL
 
Software Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorSoftware Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorMinhas Kamal
 
Ericsson Technology Review: Evolving LTE to fit the 5G future
Ericsson Technology Review: Evolving LTE to fit the 5G future Ericsson Technology Review: Evolving LTE to fit the 5G future
Ericsson Technology Review: Evolving LTE to fit the 5G future Ericsson
 
Predictive scoring essential to your retention strategy webinar slides
Predictive scoring   essential to your retention strategy webinar slidesPredictive scoring   essential to your retention strategy webinar slides
Predictive scoring essential to your retention strategy webinar slidesLouise Byrne
 
Internship Presentation(Mid-Term)
Internship Presentation(Mid-Term)Internship Presentation(Mid-Term)
Internship Presentation(Mid-Term)S M Hridoy Ahmed
 

Destaque (18)

SuaraMakaraRevisi
SuaraMakaraRevisiSuaraMakaraRevisi
SuaraMakaraRevisi
 
Filgrastim_prevents_severe_neutropenia_and_reduces.8
Filgrastim_prevents_severe_neutropenia_and_reduces.8Filgrastim_prevents_severe_neutropenia_and_reduces.8
Filgrastim_prevents_severe_neutropenia_and_reduces.8
 
Faithful
FaithfulFaithful
Faithful
 
The Agros Journey
The Agros JourneyThe Agros Journey
The Agros Journey
 
Water availability under climate change - CLIMAWARE project
Water availability under climate change - CLIMAWARE projectWater availability under climate change - CLIMAWARE project
Water availability under climate change - CLIMAWARE project
 
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...
DC10 - IBM, Kees Donker - Servitization for manufacturing - from hw and sw su...
 
CBIZ B&I Webinar Series 2017
CBIZ B&I Webinar Series 2017 CBIZ B&I Webinar Series 2017
CBIZ B&I Webinar Series 2017
 
Climaware task 3 1 - rosatti zugliani zorzi
Climaware   task 3 1 - rosatti zugliani zorziClimaware   task 3 1 - rosatti zugliani zorzi
Climaware task 3 1 - rosatti zugliani zorzi
 
Esofago
EsofagoEsofago
Esofago
 
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb Liss
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb LissLeverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb Liss
Leverage Online and Mobile Tools With Kids and Teens - Pam Goldfarb Liss
 
MTBiz May 2016
MTBiz May 2016MTBiz May 2016
MTBiz May 2016
 
MTBiz March 2016
MTBiz March 2016MTBiz March 2016
MTBiz March 2016
 
MTBiz August-September 2016
MTBiz August-September 2016MTBiz August-September 2016
MTBiz August-September 2016
 
sprawl developments measurement indicator and projections in selected nigeri...
sprawl developments  measurement indicator and projections in selected nigeri...sprawl developments  measurement indicator and projections in selected nigeri...
sprawl developments measurement indicator and projections in selected nigeri...
 
Software Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text TranslatorSoftware Requirements Specification on Bengali Braille to Text Translator
Software Requirements Specification on Bengali Braille to Text Translator
 
Ericsson Technology Review: Evolving LTE to fit the 5G future
Ericsson Technology Review: Evolving LTE to fit the 5G future Ericsson Technology Review: Evolving LTE to fit the 5G future
Ericsson Technology Review: Evolving LTE to fit the 5G future
 
Predictive scoring essential to your retention strategy webinar slides
Predictive scoring   essential to your retention strategy webinar slidesPredictive scoring   essential to your retention strategy webinar slides
Predictive scoring essential to your retention strategy webinar slides
 
Internship Presentation(Mid-Term)
Internship Presentation(Mid-Term)Internship Presentation(Mid-Term)
Internship Presentation(Mid-Term)
 

Semelhante a Ext Js

Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NET
Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NETSilicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NET
Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NETMats Bryntse
 
The Web on OSGi: Here's How
The Web on OSGi: Here's HowThe Web on OSGi: Here's How
The Web on OSGi: Here's Howmrdon
 
Apache Aries Blog Sample
Apache Aries Blog SampleApache Aries Blog Sample
Apache Aries Blog SampleSkills Matter
 
WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...Fabio Franzini
 
Introduction to Alfresco Surf Platform
Introduction to Alfresco Surf PlatformIntroduction to Alfresco Surf Platform
Introduction to Alfresco Surf PlatformAlfresco Software
 
Rey Bango - HTML5: polyfills and shims
Rey Bango -  HTML5: polyfills and shimsRey Bango -  HTML5: polyfills and shims
Rey Bango - HTML5: polyfills and shimsStarTech Conference
 
Creating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsCreating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsRicardo Varela
 
Mashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 UnconferenceMashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 UnconferenceElad Elrom
 
Eclipse e4 Overview
Eclipse e4 OverviewEclipse e4 Overview
Eclipse e4 OverviewLars Vogel
 
Andy Bosch - JavaServer Faces in the cloud
Andy Bosch -  JavaServer Faces in the cloudAndy Bosch -  JavaServer Faces in the cloud
Andy Bosch - JavaServer Faces in the cloudAndy Bosch
 
Itemscript, a specification for RESTful JSON integration
Itemscript, a specification for RESTful JSON integrationItemscript, a specification for RESTful JSON integration
Itemscript, a specification for RESTful JSON integration{item:foo}
 
How to learn to build your own PHP framework
How to learn to build your own PHP frameworkHow to learn to build your own PHP framework
How to learn to build your own PHP frameworkDinh Pham
 
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.framework
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.frameworkHanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.framework
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.frameworkNguyen Duc Phu
 
Introduction To Eclipse RCP
Introduction To Eclipse RCPIntroduction To Eclipse RCP
Introduction To Eclipse RCPwhbath
 
jQuery Presentation - Refresh Events
jQuery Presentation - Refresh EventsjQuery Presentation - Refresh Events
jQuery Presentation - Refresh EventsEugene Andruszczenko
 
Exploring Symfony's Code
Exploring Symfony's CodeExploring Symfony's Code
Exploring Symfony's CodeWildan Maulana
 
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTPCreating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTPnsandonato
 

Semelhante a Ext Js (20)

Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NET
Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NETSilicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NET
Silicon Valley CodeCamp 2008: High performance Ajax with ExtJS and ASP.NET
 
The Web on OSGi: Here's How
The Web on OSGi: Here's HowThe Web on OSGi: Here's How
The Web on OSGi: Here's How
 
Google Gears
Google GearsGoogle Gears
Google Gears
 
Apache Aries Blog Sample
Apache Aries Blog SampleApache Aries Blog Sample
Apache Aries Blog Sample
 
WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...WebNet Conference 2012 - Designing complex applications using html5 and knock...
WebNet Conference 2012 - Designing complex applications using html5 and knock...
 
Introduction to Alfresco Surf Platform
Introduction to Alfresco Surf PlatformIntroduction to Alfresco Surf Platform
Introduction to Alfresco Surf Platform
 
New Browsers
New BrowsersNew Browsers
New Browsers
 
Rey Bango - HTML5: polyfills and shims
Rey Bango -  HTML5: polyfills and shimsRey Bango -  HTML5: polyfills and shims
Rey Bango - HTML5: polyfills and shims
 
Creating Yahoo Mobile Widgets
Creating Yahoo Mobile WidgetsCreating Yahoo Mobile Widgets
Creating Yahoo Mobile Widgets
 
Spring Surf 101
Spring Surf 101Spring Surf 101
Spring Surf 101
 
Mashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 UnconferenceMashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 Unconference
 
Eclipse e4 Overview
Eclipse e4 OverviewEclipse e4 Overview
Eclipse e4 Overview
 
Andy Bosch - JavaServer Faces in the cloud
Andy Bosch -  JavaServer Faces in the cloudAndy Bosch -  JavaServer Faces in the cloud
Andy Bosch - JavaServer Faces in the cloud
 
Itemscript, a specification for RESTful JSON integration
Itemscript, a specification for RESTful JSON integrationItemscript, a specification for RESTful JSON integration
Itemscript, a specification for RESTful JSON integration
 
How to learn to build your own PHP framework
How to learn to build your own PHP frameworkHow to learn to build your own PHP framework
How to learn to build your own PHP framework
 
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.framework
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.frameworkHanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.framework
Hanoi php day 2008 - 01.pham cong dinh - how.to.build.your.own.framework
 
Introduction To Eclipse RCP
Introduction To Eclipse RCPIntroduction To Eclipse RCP
Introduction To Eclipse RCP
 
jQuery Presentation - Refresh Events
jQuery Presentation - Refresh EventsjQuery Presentation - Refresh Events
jQuery Presentation - Refresh Events
 
Exploring Symfony's Code
Exploring Symfony's CodeExploring Symfony's Code
Exploring Symfony's Code
 
Creating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTPCreating Custom Dojo Widgets Using WTP
Creating Custom Dojo Widgets Using WTP
 

Último

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Ext Js

  • 1. Ext JS Overview for: Austin Flex User Group – July 2010
  • 2.
  • 3.
  • 4. Cross-browser client-side JavaScript library for RIAs What is Ext JS? Originally built as a YUI extension. Standalone or YUI/JQuery/Prototype Extension Customizable/Extensible UI Widgets Available via Google/CacheFly Comparable to Flex/AIR
  • 5. More UI Examples Layouts, Editors, Forms, Trees, Tabs & Much More!
  • 6.
  • 7.
  • 8. Flex vs Ext JS *JS Minification/Obfuscation Available **CF uses ExtJS Core ECMA-Script base Themes/Skins Native inclusion in Adobe ColdFusion** Eclipse IDE Available OSS & Commercial Licensing Constructed Binding TCP/IP (AJAX) Interpreted* No Plug-ins Required Modular Native Framework Native Binding AMF/Binary Sockets Compiled Requires Flash Player Single Native Framework Ext JS Flex
  • 9. How it Works Layout Container Container Container
  • 10. How it Works <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;> <head> <title> My RIA </title> <link href= &quot; http://extjs.cachefly.net/ext-3.2.1/resources/css/ext-all.css &quot; /> <script src= &quot; http://extjs.cachefly.net/ext-3.2.1/adapter/ext/ext-base.js &quot;/></script> <script src= &quot; http://extjs.cachefly.net/ext-3.2.1/ext-all.js &quot; ></script> </head> <body> <script src= &quot; myextjsapp.js &quot; ></script> </body> </html> Ext.onReady( function (){ var header = new Ext.Panel({region: 'north' ,html: 'North' ,title: 'Header' }); var main = new Ext.Panel({ region: 'center' , autoLoad: 'mypage.cfm' , title: 'Main‘ }); var left = new Ext.Panel({ region: 'west' , html: 'Left' , width: 300 , title: 'Left' , collapsible: true }); new Ext.Viewport({ layout: 'border' , border: false , defaults: {split: true ,layout: 'fit' ,border: true }, items: [header,left,main], }); }); Basic Layout Basic Functionality
  • 13. Async Connectivity var storeLocales = new Ext.data.SimpleStore({ fields: [ 'locale' , 'language' ], data: [] }); var locrec = new Ext.data.Record.create([ {name: 'locale' ,mapping: 'locale' }, {name: 'language' ,mapping: 'language' } ]); function loadLanguages() { Ext.Ajax.request({ url: 'http://mydomain.com/formprocessor' , params:{get: 'locales' }, success: function (rsp,obj){ l = Ext.decode(rsp.responseText).locales; for ( var i=0;i<l.length;i++) storeLocales.add( new locrec({ locale:l[i].LOCALE, language:l[i].LANGUAGE })); } storeLocales.sort('language'); } }); } loadLanguages(); //Load the data ({ &quot;locales&quot;:[{ &quot;LOCALE&quot;:&quot;ja_jp&quot;, &quot;LANGUAGE&quot;:&quot;Japanese (Japan)“ },{ &quot;LOCALE&quot;:&quot;es_pe&quot;, &quot;LANGUAGE&quot;:&quot;Spanish (Peru)“ },{ &quot;LOCALE&quot;:&quot;en&quot;, &quot;LANGUAGE&quot;:&quot;English“ }] })
  • 14. Async Breakdown var storeLocales = new Ext.data.SimpleStore({ fields: [ 'locale' , 'language' ], data: [] }); var locrec = new Ext.data.Record.create([ {name: 'locale' ,mapping: 'locale' }, {name: 'language' ,mapping: 'language' } ]); function loadLanguages() { Ext.Ajax.request({ url: 'http://mydomain.com/formprocessor' , params:{get: 'locales' }, success: function (rsp,obj){ l = Ext.decode(rsp.responseText).locales; for ( var i=0;i<l.length;i++) storeLocales.add( new locrec ({ locale:l[i].LOCALE, language:l[i].LANGUAGE })); } storeLocales.sort('language'); } }); } loadLanguages(); //Load the data ({ &quot;locales&quot;:[{ &quot;LOCALE&quot;:&quot;ja_jp&quot;, &quot;LANGUAGE&quot;:&quot;Japanese (Japan)“ },{ &quot;LOCALE&quot;:&quot;es_pe&quot;, &quot;LANGUAGE&quot;:&quot;Spanish (Peru)“ },{ &quot;LOCALE&quot;:&quot;en&quot;, &quot;LANGUAGE&quot;:&quot;English“ }] }) Data stores are bound to components like grids and combo boxes.
  • 16.
  • 17. Extensibility Custom Object - MyPanel MyApp.MyPanel = function (config) { MyApp.MyPanel.superclass.constructor.call( this , Ext.applyIf(config, { title: ’MyApp Default Title’ , collapsible: true , closable: false , bodyStyle: ’padding:15px; font-weight: bold;’ , … }) ); }; Ext.extend(MyApp.MyPanel, Ext.Panel, { // custom methods go here }); Ext.reg(‘mypanel’, MyApp.MyPanel); Using Custom Object var obj = { xtype: ’mypanel’ title: ‘My Title’ }; OR var obj = new MyApp.MyPanel({ title: ‘My Title’ });
  • 18. Compatibility JQuery Extension <html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;> <head> <title> My RIA </title> <script src=&quot; jquery.js &quot;/></script> <script src= &quot; ext-3.2.1/adapter/jquery/jquery-plugins.js &quot;/></script> <script src= &quot; ext-3.2.1/adapter/jquery/ext-jquery-adapter.js &quot; ></script> <script src= &quot; ext-3.2.1/ext-all.js &quot; ></script> <link href= &quot; ext-3.2.1/resources/css/ext-all.css &quot; /> </head> <body> <script src= &quot; myextjsapp.js &quot; ></script> </body> </html> Usage $(document).ready( function (){ $('#wheelink').bind('click', function () { Ext.Msg.alert( 'Whee alert!' , 'Thanks for clicking me, WHEE!' ); }); });
  • 19. Resources http://www. sencha .com/deploy/dev/docs/ Icons from http://www. famfamfam .com (Silk) http://www. sencha .com/ forum http://www. sencha .com/ blog JSLint .com (JSON) SPKET (Eclipse Plugin) Firebug for Firefox
  • 20. More Info @ http://www.sencha.com Send questions to [email_address] @goldglovecb, @ecorgroup http://www.linkedin.com/in/ecorsystems http://www.facebook.com/goldglovecb http://www.facebook.com/ecorgroup Open Source Example Apps (Require ColdFusion): http:// open.ecorgroup.com /surveymanager http:// open.ecorgroup.com /assettracker