SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Getting Started with Adobe AIR Flex Camp Chicago 2009
Who Am I? ,[object Object],[object Object],[object Object]
Adobe AIR Presentation Agenda: ,[object Object],[object Object],[object Object],[object Object],[object Object]
What is Adobe AIR? Adobe Integrated Runtime (AIR) is a cross-operation system runtime, that allows developers to leverage their existing Web knowledge skills in HTML, Ajax, XML, Flash and Flex to build and deploy Rich Internet Application (RIA) on the desktop and soon on Mobile devices.
Adobe AIR architecture
Adobe AIR 1.5 & Flash 10
3D Effects The Flash Player 10 3D tool API allows you to take any pixel or container and move it around in a 3D space.
Custom Filters & Effects The Pixel Bender just-in- time (JIT) compiler can also be leveraged and used to process other data, such as sound or logic.
Text Layout Framework Text Layout Framework (TLF) is Adobe new Flash framework for dealing with text consist of set of classes in Flash Player 10 that brings print-quality to the web and allow you to create multilingual web applications using device fonts.
Enhanced Sound API Dynamic sound generation  – the sound APIs allow creating sound dynamically and generate audio applications such as music mixers. You can work with loaded MP3 audio at a lower level by extracting audio data and supplying it to the sound buffer. It allows to process, filter, and mix audio in real time using the Pixel Bender compiler.    Speex audio codec  – In addition to supporting ADPCM, HE-AAC, MP3, and Nellymoser audio.  Flash 10 also support new, high fidelity open source voice codec called Speex (www.speex.org/), which deliver low-latency for voice encoding and adds to the Microphone class.
Visual Performance   ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Enhance Drawing API Winding fill  - When two shapes used to intercepts we used to have an empty hole.  Winding fill means that we have an area fill as long as we have the winding in the same direction. UV Maps  – used in After Effects and other Adobe Video products and allow mapping on a 3D space. Graphics.drawPath  – Uses a list of drawing commands and coordinate to create a pixel. Graphics.drawTriangles  – Take Vector data and renders a set of triangles, typically to distort containers and give them a 3D z dimension.
Reading writing local files Flash Player 10 has exposed two new APIs in FileReference: load and save.
File I/O API AIR allows you to access the local file system on the client machine the same as native OS programs.  You can do common operations such as reading, writing, moving and renaming. File.copyTo() vs File.copyToAsync() File.deleteDirectory() vs File.deleteDirectoryAsync() File.deleteFile() vs File.deleteFileAsync()
Local storage and Encrypted SQLite   Adobe AIR 1.5 closed a security gap.  All AIR applications are using the exact same database, so essentially any AIR application can read other applications database.
Application Update and Notification API AIR 1.5 updated the Updater API and assist you updating an existing application.  In AIR 1.5 you can actually change the certificate of the application.  To update an application the application ID and the publisher ID should match.
Network Awareness AIR is built to run in conditions where the network connection is changing.  There is an event being lunched every time the application connect and disconnect from the internet allowing you to create an application that have network connection awareness.  air.NativeApplication.nativeApplication.addEventListener(air.Event.NETWORK_CHANGE, onNetworkChange); var socketMonitor:SocketMonitor = new SocketMonitor('www.YourSite.com', 80);  socketMonitor.addEventListener(StatusEvent.STATUS, statusChangeEventHandler);  socketMonitor.start();
Native Windowing API and Chrom Control There are three types of windows:   Normal  - A normal typical window Utility  - A tool palette Lightweight  - Lightweight windows with no chrome
Example Of AIR Applications ,[object Object],[object Object],[object Object],[object Object]
Pandora
Google Analytic
Earth Browser
Mobile YouTube http:// www.adobe.com/cfusion/exchange/index.cfm?event = extensionDetail&extid =1729023
Web Browser Adobe AIR App <Script> <![CDATA[ import flash.html.HTMLLoader; import mx.core.UIComponent; private var htmlPage:HTMLLoader = null; private function onStartup() : void  { htmlPage =  new HTMLLoader(); htmlPage.width = HTMLComponent.width; htmlPage.height = HTMLComponent.height; HTMLComponent.addChild(htmlPage); htmlPage.load( new URLRequest(txtUrl.text)); } private function onKeyDown(event: KeyboardEvent):void  { if (event.keyCode == Keyboard.ENTER) htmlPage.load( new URLRequest(txtUrl.text)); } ]]> </Script> <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <WindowedApplication xmlns=&quot;http://ns.adobe.com/mxml/2009&quot; width=&quot;750&quot; height=&quot;600&quot; creationComplete=&quot;onStartup()&quot;> <Form width=&quot;100%&quot;> <FormItem label=&quot;Url&quot; width=&quot;630&quot;> <TextInput id=&quot;txtUrl&quot; width=&quot;630&quot; text=&quot;file.pdf&quot;  keyDown=&quot;onKeyDown(event)&quot; /> </FormItem> <UIComponent id=&quot;HTMLComponent&quot; width=&quot;630&quot; height=&quot;400&quot; /> </Form> </WindowedApplication>
Custom Menus <Script> <![CDATA[ private var itemDS:NativeMenuItem = new NativeMenuItem(&quot;Drop Shadow&quot;); private var itemBlur:NativeMenuItem = new NativeMenuItem(&quot;Blur&quot;); private function onCreationComplete() : void  { var filterMenu:NativeMenuItem = new NativeMenuItem(&quot;Filters&quot;); if(NativeWindow.supportsMenu)  { stage.nativeWindow.menu =  new NativeMenu(); stage.nativeWindow.menu.addItem(filterMenu); } if(NativeApplication.supportsMenu) NativeApplication.nativeApplication.menu.addItem(filterMenu); var filterSubMenu:NativeMenu = new NativeMenu(); itemBlur.addEventListener(Event.SELECT,onMenuSelect); itemDS.addEventListener(Event.SELECT,onMenuSelect); filterSubMenu.addItem(itemBlur); filterSubMenu.addItem(itemDS); filterMenu.submenu = filterSubMenu; } private function onMenuSelect(event:Event):void  { var nativeMenu:NativeMenuItem = event.target as NativeMenuItem; var filters:Array = []; nativeMenu.checked = !nativeMenu.checked; if (itemDS.checked )  filters.push( new DropShadowFilter()); if (itemBlur.checked ) filters.push(new BlurFilter()); image.filters = filters; } ]]> </Script>
Shameless Self Promoting Blog:  http://elromdesign.com/ blog LinkedIn:  http://linkedin.com/in/ eladelrom Twitter:  http://twitter.com/ eladnyc Books:  http://amazon.com/s/field-keywords=elad+ elrom

Weitere Àhnliche Inhalte

Andere mochten auch (7)

Anchor Correction Spec
Anchor Correction SpecAnchor Correction Spec
Anchor Correction Spec
 
Anissa Collage
Anissa CollageAnissa Collage
Anissa Collage
 
Joseph Velasco Collage
Joseph Velasco CollageJoseph Velasco Collage
Joseph Velasco Collage
 
103 1.6.1calculations
103 1.6.1calculations103 1.6.1calculations
103 1.6.1calculations
 
Classic Rect Strap Ted
Classic Rect Strap TedClassic Rect Strap Ted
Classic Rect Strap Ted
 
Ed Byrne Ucd Presentation 27 Jan 2009
Ed Byrne   Ucd Presentation   27 Jan 2009Ed Byrne   Ucd Presentation   27 Jan 2009
Ed Byrne Ucd Presentation 27 Jan 2009
 
Completed Interior Design Projects
Completed Interior Design ProjectsCompleted Interior Design Projects
Completed Interior Design Projects
 

Ähnlich wie Getting Started with Adobe AIR 1.5

Adobe¼ Flexℱ
Adobe¼ FlexℱAdobe¼ Flexℱ
Adobe¼ Flexℱ
Uday Shankar
 
What is Adobe Flex ?
What is Adobe Flex  ?What is Adobe Flex  ?
What is Adobe Flex ?
Antonio Correia
 
The Evolution of the Flash Platform
The Evolution of the Flash PlatformThe Evolution of the Flash Platform
The Evolution of the Flash Platform
Peter Elst
 
DIY Flex
DIY FlexDIY Flex
DIY Flex
igras705
 
Some Useful Flash API
Some Useful Flash APISome Useful Flash API
Some Useful Flash API
Tushar Vaghela
 

Ähnlich wie Getting Started with Adobe AIR 1.5 (20)

Adobe Flex
Adobe FlexAdobe Flex
Adobe Flex
 
Adobe AIR. NativeProcess. FFMPEG. Awesome.
Adobe AIR. NativeProcess. FFMPEG. Awesome.Adobe AIR. NativeProcess. FFMPEG. Awesome.
Adobe AIR. NativeProcess. FFMPEG. Awesome.
 
Making Money with Adobe AIR
Making Money with Adobe AIRMaking Money with Adobe AIR
Making Money with Adobe AIR
 
Flex3
Flex3Flex3
Flex3
 
Adobe Air
Adobe AirAdobe Air
Adobe Air
 
Adobe¼ Flexℱ
Adobe¼ FlexℱAdobe¼ Flexℱ
Adobe¼ Flexℱ
 
What is Adobe Flex ?
What is Adobe Flex  ?What is Adobe Flex  ?
What is Adobe Flex ?
 
Creating Flash Content for Multiple Screens
Creating Flash Content for Multiple ScreensCreating Flash Content for Multiple Screens
Creating Flash Content for Multiple Screens
 
Adobe AIR Seminar
Adobe AIR SeminarAdobe AIR Seminar
Adobe AIR Seminar
 
The Evolution of the Flash Platform
The Evolution of the Flash PlatformThe Evolution of the Flash Platform
The Evolution of the Flash Platform
 
Flash for Mobile Devices
Flash for Mobile DevicesFlash for Mobile Devices
Flash for Mobile Devices
 
Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0Flex Remoting With WebORB v1.0
Flex Remoting With WebORB v1.0
 
Flash Builder for PHP and Mobile development
Flash Builder for PHP and Mobile developmentFlash Builder for PHP and Mobile development
Flash Builder for PHP and Mobile development
 
Adobe Max 2009 - Learnings
Adobe Max 2009 -  LearningsAdobe Max 2009 -  Learnings
Adobe Max 2009 - Learnings
 
DIY Flex
DIY FlexDIY Flex
DIY Flex
 
DIY Flex
DIY FlexDIY Flex
DIY Flex
 
Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0
 
Adobe AIR Programming to Desktop and Mobile
Adobe AIR Programming to Desktop and MobileAdobe AIR Programming to Desktop and Mobile
Adobe AIR Programming to Desktop and Mobile
 
Some Useful Flash API
Some Useful Flash APISome Useful Flash API
Some Useful Flash API
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 

Mehr von Elad Elrom

Mehr von Elad Elrom (7)

20 x Tips to better Optimize your Flash content
20 x Tips to better Optimize your Flash content20 x Tips to better Optimize your Flash content
20 x Tips to better Optimize your Flash content
 
Developing & Deploying AIR Applications for TV
Developing & Deploying AIR Applications for TVDeveloping & Deploying AIR Applications for TV
Developing & Deploying AIR Applications for TV
 
Essential Eclipse Plug-ins and Tools for Flash Builder Developers
Essential Eclipse Plug-ins and Tools for Flash Builder DevelopersEssential Eclipse Plug-ins and Tools for Flash Builder Developers
Essential Eclipse Plug-ins and Tools for Flash Builder Developers
 
Top security threats to Flash/Flex applications and how to avoid them
Top security threats to Flash/Flex applications and how to avoid themTop security threats to Flash/Flex applications and how to avoid them
Top security threats to Flash/Flex applications and how to avoid them
 
Flex data binding pitfalls: 10 common misuses and mistakes
Flex data binding pitfalls: 10 common misuses and mistakesFlex data binding pitfalls: 10 common misuses and mistakes
Flex data binding pitfalls: 10 common misuses and mistakes
 
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose presoTest Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
 
Mashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 UnconferenceMashups MAX 360|MAX 2008 Unconference
Mashups MAX 360|MAX 2008 Unconference
 

KĂŒrzlich hochgeladen

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

KĂŒrzlich hochgeladen (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 

Getting Started with Adobe AIR 1.5

  • 1. Getting Started with Adobe AIR Flex Camp Chicago 2009
  • 2.
  • 3.
  • 4. What is Adobe AIR? Adobe Integrated Runtime (AIR) is a cross-operation system runtime, that allows developers to leverage their existing Web knowledge skills in HTML, Ajax, XML, Flash and Flex to build and deploy Rich Internet Application (RIA) on the desktop and soon on Mobile devices.
  • 6. Adobe AIR 1.5 & Flash 10
  • 7. 3D Effects The Flash Player 10 3D tool API allows you to take any pixel or container and move it around in a 3D space.
  • 8. Custom Filters & Effects The Pixel Bender just-in- time (JIT) compiler can also be leveraged and used to process other data, such as sound or logic.
  • 9. Text Layout Framework Text Layout Framework (TLF) is Adobe new Flash framework for dealing with text consist of set of classes in Flash Player 10 that brings print-quality to the web and allow you to create multilingual web applications using device fonts.
  • 10. Enhanced Sound API Dynamic sound generation – the sound APIs allow creating sound dynamically and generate audio applications such as music mixers. You can work with loaded MP3 audio at a lower level by extracting audio data and supplying it to the sound buffer. It allows to process, filter, and mix audio in real time using the Pixel Bender compiler.   Speex audio codec – In addition to supporting ADPCM, HE-AAC, MP3, and Nellymoser audio. Flash 10 also support new, high fidelity open source voice codec called Speex (www.speex.org/), which deliver low-latency for voice encoding and adds to the Microphone class.
  • 11.
  • 12. Enhance Drawing API Winding fill - When two shapes used to intercepts we used to have an empty hole. Winding fill means that we have an area fill as long as we have the winding in the same direction. UV Maps – used in After Effects and other Adobe Video products and allow mapping on a 3D space. Graphics.drawPath – Uses a list of drawing commands and coordinate to create a pixel. Graphics.drawTriangles – Take Vector data and renders a set of triangles, typically to distort containers and give them a 3D z dimension.
  • 13. Reading writing local files Flash Player 10 has exposed two new APIs in FileReference: load and save.
  • 14. File I/O API AIR allows you to access the local file system on the client machine the same as native OS programs. You can do common operations such as reading, writing, moving and renaming. File.copyTo() vs File.copyToAsync() File.deleteDirectory() vs File.deleteDirectoryAsync() File.deleteFile() vs File.deleteFileAsync()
  • 15. Local storage and Encrypted SQLite Adobe AIR 1.5 closed a security gap. All AIR applications are using the exact same database, so essentially any AIR application can read other applications database.
  • 16. Application Update and Notification API AIR 1.5 updated the Updater API and assist you updating an existing application. In AIR 1.5 you can actually change the certificate of the application. To update an application the application ID and the publisher ID should match.
  • 17. Network Awareness AIR is built to run in conditions where the network connection is changing. There is an event being lunched every time the application connect and disconnect from the internet allowing you to create an application that have network connection awareness. air.NativeApplication.nativeApplication.addEventListener(air.Event.NETWORK_CHANGE, onNetworkChange); var socketMonitor:SocketMonitor = new SocketMonitor('www.YourSite.com', 80); socketMonitor.addEventListener(StatusEvent.STATUS, statusChangeEventHandler); socketMonitor.start();
  • 18. Native Windowing API and Chrom Control There are three types of windows:   Normal - A normal typical window Utility - A tool palette Lightweight - Lightweight windows with no chrome
  • 19.
  • 23. Mobile YouTube http:// www.adobe.com/cfusion/exchange/index.cfm?event = extensionDetail&extid =1729023
  • 24. Web Browser Adobe AIR App <Script> <![CDATA[ import flash.html.HTMLLoader; import mx.core.UIComponent; private var htmlPage:HTMLLoader = null; private function onStartup() : void { htmlPage = new HTMLLoader(); htmlPage.width = HTMLComponent.width; htmlPage.height = HTMLComponent.height; HTMLComponent.addChild(htmlPage); htmlPage.load( new URLRequest(txtUrl.text)); } private function onKeyDown(event: KeyboardEvent):void { if (event.keyCode == Keyboard.ENTER) htmlPage.load( new URLRequest(txtUrl.text)); } ]]> </Script> <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <WindowedApplication xmlns=&quot;http://ns.adobe.com/mxml/2009&quot; width=&quot;750&quot; height=&quot;600&quot; creationComplete=&quot;onStartup()&quot;> <Form width=&quot;100%&quot;> <FormItem label=&quot;Url&quot; width=&quot;630&quot;> <TextInput id=&quot;txtUrl&quot; width=&quot;630&quot; text=&quot;file.pdf&quot; keyDown=&quot;onKeyDown(event)&quot; /> </FormItem> <UIComponent id=&quot;HTMLComponent&quot; width=&quot;630&quot; height=&quot;400&quot; /> </Form> </WindowedApplication>
  • 25. Custom Menus <Script> <![CDATA[ private var itemDS:NativeMenuItem = new NativeMenuItem(&quot;Drop Shadow&quot;); private var itemBlur:NativeMenuItem = new NativeMenuItem(&quot;Blur&quot;); private function onCreationComplete() : void { var filterMenu:NativeMenuItem = new NativeMenuItem(&quot;Filters&quot;); if(NativeWindow.supportsMenu) { stage.nativeWindow.menu = new NativeMenu(); stage.nativeWindow.menu.addItem(filterMenu); } if(NativeApplication.supportsMenu) NativeApplication.nativeApplication.menu.addItem(filterMenu); var filterSubMenu:NativeMenu = new NativeMenu(); itemBlur.addEventListener(Event.SELECT,onMenuSelect); itemDS.addEventListener(Event.SELECT,onMenuSelect); filterSubMenu.addItem(itemBlur); filterSubMenu.addItem(itemDS); filterMenu.submenu = filterSubMenu; } private function onMenuSelect(event:Event):void { var nativeMenu:NativeMenuItem = event.target as NativeMenuItem; var filters:Array = []; nativeMenu.checked = !nativeMenu.checked; if (itemDS.checked ) filters.push( new DropShadowFilter()); if (itemBlur.checked ) filters.push(new BlurFilter()); image.filters = filters; } ]]> </Script>
  • 26. Shameless Self Promoting Blog: http://elromdesign.com/ blog LinkedIn: http://linkedin.com/in/ eladelrom Twitter: http://twitter.com/ eladnyc Books: http://amazon.com/s/field-keywords=elad+ elrom

Hinweis der Redaktion

  1. Welcome to Flex Camp - Getting Started with Adobe AIR presentations. This presentation is recorded and will be available at my blog. Before we get started I would like to get ask you couple of questions: How many of you have developed applications with Adobe AIR? How many are Flex developers? How many of you are JavaScript/Ajax developers?