SlideShare a Scribd company logo
Day 2
Exploring Adobe Flex
Senthil Kumar
Srinivasan
Flex/Flash Builder IDE
Project Name

Project Location

Web Application

AIR Application
Run the Application

Source Mode
Debugging the application

Design Mode
Place we need
Type the code

Place the MXML Component here
How to Run the Appl.. In Browser
Change the SDk’s
Naming conventions for Flex projects
Use a common directory for your Flex workspace in team environments.
Use the libs folder to bundle SWC libraries with your Flex project.
Use UpperCamel Casing for MXML and Action Script Files.
Do not use spaces and Special Characters when naming files!
Use packages to organize and structure your projects codebase.
Create and use an "assets" directory

Instance variables and flex controls will follow Hungarian Notation
Ex., txtUserName, lblSerail:String.
Function names should be in camelcase. It may contain underscores but never
at the beginning of the name.
Ex - onCreationComplete()
Flex – other features
CSS support / Runtime skinning support

States Management
Layout / Navigation
Canvas, Form, VBox, HBox, ControlBar, Accordion, LinkBar, MenuBar, ViewStack
Controls
Button, CheckBox, ComboBox, DataGrid, TextInput, List, Label, Tree

Charts – Pie , Line , Bar,, Area, stacked charts etc

Data Binding
MXML vs. AS3
( apples vs apples )

MXML : Macromedia XML

MXML tags are Instance of Action Script Classes
<mx:Button id=“test” />
var myButton:Button = new Button() .
 MXML === As3 Class
MXML

MXML are plain text based document Follows XML
standards
It is tag based <mx:Panel> similar to HTML

Always start with a XML declaration
Root node is always <mx:Application>
MXMLC Compiler

MXML to ActionScript 3 Classes
ActionScript 3 to ABC Bytecode
ABC Bytecode to SWF

SWF run within Flash Player 9
MXML - Components

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Button id="btnFirst" label="Click"/>
<mx:List id="grdEmp" dataProvider="{empColl}"/>
<mx:CheckBox id="chkPlace" label="Chennai" />
</mx:Application>
MXML - id

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Button id="btnFirst" label="Click"/>
<mx:List id="grdEmp" dataProvider="{empColl}"/>
<mx:CheckBox id="chkPlace" label="Chennai" />
</mx:Application>
MXML - Properties

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Button id="btnFirst" label="Click"/>
<mx:List id="grdEmp" dataProvider="{empColl}"/>
<mx:CheckBox id="chkPlace" label="Chennai" />
</mx:Application>
Introduction to Action Script
ECMA-262 edition and ECMA-4 complaint
 Versions
Action Script 1.0 – 2000 – 2003

Action Script 2.0 – 2003 – 2006

Flash Player 8 and Above

Action Script 3.0 – 2006 – present >> Flex 2.0 - Flash Player 9 and above
 Object-oriented from AS 3

 Initially designed for controlling simple 2D vector animations made in Adobe Flash
(formerly Macromedia Flash).
 Foundation for Flex 2 and above
 Online API >> http://livedocs.adobe.com/flex/3/html/toc.html
Debugging concepts and procedure
 The

Problem View

 Trace Function
Break Points
 The Problems view is located below the Source mode. Whenever the Problems
view shows errors, it means there are problems to be fixed before the application
can be compiled.

 Windows  Show View  Problems
 Show the Alert message while click the Button

 After Save the changes if any problems that are detected by the Flex compiler are
displayed automatically in the Problems view.
Double-click on the error in the Problems view, to move the cursor to the corresponding
line of code in the Source mode.
To fix this problem , we need to add the alert button in the Script Tag

Save the file, which compiles the code - the problem should go away.
 Run the application and click the button to see the Alert dialog box
Trace Function
The trace function sends a simple string to the Console view, so you can track what is
happening internally as your application is running.

Debug the application. Select the Console view to see the resultant trace message.
BreakPoints
Breakpoints are used to stops application execution at that point,you can inspect the
values of variables, step through code one line at a time, and add or remove breakpoints
as needed.
Set a breakpoint on the line that declares the variable. A breakpoint can be set or unset
(toggled) by double-clicking on the line number or by using the keyboard shortcut
Ctrl+Shift+B

Save and debug the application.
The Variables and Expression view is in the upper-right corner of Flex Builder
interface / Eclipse
Locate the Count variable, and check its value.
 Step through the code observing the value of Count as it changes.
Continue until the trace statement is reached.
 Click the Resume button in the Debug view, and the application
in the browser becomes active again.
 Close the browser to terminate the debugging session
and return to Flex Builder.
To switch to the Development perspective, click to display the list of
available perspectives and select Flex Development.
Go to the feed variable, right-click it and select Watch feed.

Flex UI basics
A Flex application's user-interface (UI) is composed
of two component types - Containers and Controls.
Containers define application layout and
navigation.
Controls represent a broad category of UI objects
required for a fully functional and interactive
application.
Flex user interface controls are found in the
mx.controls package of the Flex Class library.
Some Flex controls are not interactive, examples of
non-interactive controls include Label and
ProgressBar
Purpose of UI containers
Flex containers serve as a mechanism for defining
application layout and navigation.
Common layout containers include VBox, HBox,
Canvas, Tile and Form.
Navigation containers include Accordion, Tab
Navigator and View Stack.
Each container extends the Container Class, serves
a unique purpose and is available for use at the
discretion of the application developer.

Application is the default container provided at
the root of your Flex application. There is no need
to define the Application container as it comes
part of any Flex application courtesy with the
<mx:Application> tag.
Basic UI controls in a Flex application
Text-based controls are designed to display text and/or
receive text input. Examples include Label, Text, TextArea,
TextInput, and RichTextEditor.
Button-based controls receive user input in the form of
keyboard or mouse events. Examples include Button,
LinkButton, CheckBox, RadioButton and PopUpButton.
List-based controls is a subset of data provider controls,
visually represent hierarchical or non-hierarchical (flat) data
structures. Examples include ComboBox, List, HorizontalList,
DataGrid, TileList and Tree.
Menu-based controls another subset of data provider
controls enable user-initiated navigation through use of a
static menu or a popup menu. Examples include Menu,
MenuBar and PopUpMenuButton.
Creating styles
Sometimes for branding or making the application UI unique, styling application becomes
essential. Style properties are defined at the component level in one of 4 ways:

Inline MXML
Embedded Script tag
External CSS Stylesheet
SetStyle() method
Styling Adobe Flex 2

• Corporate branding
• Marketing

• Differentiate your application
• User experience & usability

• Remove any reference to Flex !00
Styling in the wild
Styling in the wild
Nice, how can we get our
apps to look that good ?
! It won’t be BORING ! – just few min
What can we use ?

CSS

Programmatic skins

Graphical skins

Custom components

 At least one CSS file

 Programmatic skin (AS3) classes
 Graphical skin assets (PNG, SWF etc)
 Themes can be compiled as a SWC and
easily distributed
Skinning vs Styling

Aeon

Ron Perlman
Styling

Blade II
Skinning

Hellboy
CSS in Flex 3
Differences to CSS for XHTML
 Used to set styles not properties

You can’t set size or position - they are properties not styles
Setting padding will drive you crazy!

Runtime changing of CSS
Using /Applying CSS
 Inline with <Style><Style> tags
 As MXML attribute < color=”#CC0000”>
 External using <Style source=”myStyle.css”/>
 Using ActionScript setStyle()

 To the whole application Application {
}
 To components ( or custom components ) NewTextLabel {
}
 Using class – selectors .rightButton {
}
Exploring Adobe Flex

More Related Content

What's hot

Industrial training seminar ppt on asp.net
Industrial training seminar ppt on asp.netIndustrial training seminar ppt on asp.net
Industrial training seminar ppt on asp.net
Pankaj Kushwaha
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentalsGopal Ji Singh
 
Asp net
Asp netAsp net
Oracle ADF 11g Tutorial
Oracle ADF 11g TutorialOracle ADF 11g Tutorial
Oracle ADF 11g Tutorial
Rakesh Gujjarlapudi
 
Asp .net folders and web.config
Asp .net folders and web.configAsp .net folders and web.config
Asp .net folders and web.config
baabtra.com - No. 1 supplier of quality freshers
 
ASP.NET Lecture 1
ASP.NET Lecture 1ASP.NET Lecture 1
ASP.NET Lecture 1
Julie Iskander
 
Info path advanced development @ Sri Lanka SharePoint Forum
Info path advanced development @ Sri Lanka SharePoint ForumInfo path advanced development @ Sri Lanka SharePoint Forum
Info path advanced development @ Sri Lanka SharePoint Forum
Melick Baranasooriya
 
Xcc layout-options
Xcc layout-optionsXcc layout-options
Xcc layout-options
TIMETOACT GROUP
 
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl....net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
Nancy Thomas
 
STUG-Client Object Model SharePoint 2010
STUG-Client Object Model SharePoint 2010STUG-Client Object Model SharePoint 2010
STUG-Client Object Model SharePoint 2010Shakir Majeed Khan
 
Mule with facebook
Mule with facebookMule with facebook
Mule with facebook
D.Rajesh Kumar
 
Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Amit Sharma
 
COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018
Chris O'Brien
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01
Vivek chan
 
Tutorial 1
Tutorial 1Tutorial 1
Tutorial 1
Aravindharamanan S
 
Asp dot net final (2)
Asp dot net   final (2)Asp dot net   final (2)
Asp dot net final (2)
Amelina Ahmeti
 
Web tech
Web techWeb tech
Web tech
SangeethaSasi1
 

What's hot (20)

Industrial training seminar ppt on asp.net
Industrial training seminar ppt on asp.netIndustrial training seminar ppt on asp.net
Industrial training seminar ppt on asp.net
 
Asp .net web form fundamentals
Asp .net web form fundamentalsAsp .net web form fundamentals
Asp .net web form fundamentals
 
Asp.net
Asp.netAsp.net
Asp.net
 
Asp net
Asp netAsp net
Asp net
 
Oracle ADF 11g Tutorial
Oracle ADF 11g TutorialOracle ADF 11g Tutorial
Oracle ADF 11g Tutorial
 
Asp .net folders and web.config
Asp .net folders and web.configAsp .net folders and web.config
Asp .net folders and web.config
 
ASP.NET Lecture 1
ASP.NET Lecture 1ASP.NET Lecture 1
ASP.NET Lecture 1
 
Info path advanced development @ Sri Lanka SharePoint Forum
Info path advanced development @ Sri Lanka SharePoint ForumInfo path advanced development @ Sri Lanka SharePoint Forum
Info path advanced development @ Sri Lanka SharePoint Forum
 
Tutorial asp.net
Tutorial  asp.netTutorial  asp.net
Tutorial asp.net
 
Xcc layout-options
Xcc layout-optionsXcc layout-options
Xcc layout-options
 
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl....net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
.net training | learn .net | Microsoft dot net Course | Microsoft dot net onl...
 
STUG-Client Object Model SharePoint 2010
STUG-Client Object Model SharePoint 2010STUG-Client Object Model SharePoint 2010
STUG-Client Object Model SharePoint 2010
 
Mule with facebook
Mule with facebookMule with facebook
Mule with facebook
 
Asp.net
 Asp.net Asp.net
Asp.net
 
Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1Oracle apex-hands-on-guide lab#1
Oracle apex-hands-on-guide lab#1
 
COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018COB - PowerApps - the good, the bad and the ugly - early 2018
COB - PowerApps - the good, the bad and the ugly - early 2018
 
01 asp.net session01
01 asp.net session0101 asp.net session01
01 asp.net session01
 
Tutorial 1
Tutorial 1Tutorial 1
Tutorial 1
 
Asp dot net final (2)
Asp dot net   final (2)Asp dot net   final (2)
Asp dot net final (2)
 
Web tech
Web techWeb tech
Web tech
 

Similar to Exploring Adobe Flex

Adobe Flex Introduction
Adobe Flex IntroductionAdobe Flex Introduction
Adobe Flex Introduction
Amal Biswas
 
Flex 3 - Introduction
Flex 3 - IntroductionFlex 3 - Introduction
Flex 3 - Introduction
rakhtar
 
Share point 2010-uiimprovements
Share point 2010-uiimprovementsShare point 2010-uiimprovements
Share point 2010-uiimprovementsLiquidHub
 
Flex In Portal Final
Flex In Portal   FinalFlex In Portal   Final
Flex In Portal FinalSunil Patil
 
Flex3中文教程
Flex3中文教程Flex3中文教程
Flex3中文教程yiditushe
 
Skinning in Flex 4
Skinning in Flex 4Skinning in Flex 4
Skinning in Flex 4
Saurabh Narula
 
Flex And Ria
Flex And RiaFlex And Ria
Flex And Riaravinxg
 
Flex RIA
Flex RIAFlex RIA
Flex RIA
rssharma
 
react-en.pdf
react-en.pdfreact-en.pdf
react-en.pdf
ssuser65180a
 
Demystifying S-Controls and AJAX
Demystifying S-Controls and AJAXDemystifying S-Controls and AJAX
Demystifying S-Controls and AJAXdreamforce2006
 
Creating Custom Spark Components in Flex 4
Creating Custom Spark Components in Flex 4Creating Custom Spark Components in Flex 4
Creating Custom Spark Components in Flex 4
Dan Orlando
 
Chpater1
Chpater1Chpater1
Chpater1
Engleang Sam
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolAdriaan Venter
 
Customizing sales force-interface
Customizing sales force-interfaceCustomizing sales force-interface
Customizing sales force-interfaceAmit Sharma
 
Windows 8 app bar and live tiles
Windows 8 app bar and live tilesWindows 8 app bar and live tiles
Windows 8 app bar and live tilesAmr Abulnaga
 
unit 4.docx
unit 4.docxunit 4.docx
unit 4.docx
Sadhana Sreekanth
 

Similar to Exploring Adobe Flex (20)

Adobe Flex Introduction
Adobe Flex IntroductionAdobe Flex Introduction
Adobe Flex Introduction
 
Flex 3 - Introduction
Flex 3 - IntroductionFlex 3 - Introduction
Flex 3 - Introduction
 
Adobe Flex4
Adobe Flex4 Adobe Flex4
Adobe Flex4
 
Test
TestTest
Test
 
Share point 2010-uiimprovements
Share point 2010-uiimprovementsShare point 2010-uiimprovements
Share point 2010-uiimprovements
 
Flex In Portal Final
Flex In Portal   FinalFlex In Portal   Final
Flex In Portal Final
 
Flex3中文教程
Flex3中文教程Flex3中文教程
Flex3中文教程
 
Skinning in Flex 4
Skinning in Flex 4Skinning in Flex 4
Skinning in Flex 4
 
Flex And Ria
Flex And RiaFlex And Ria
Flex And Ria
 
Flex RIA
Flex RIAFlex RIA
Flex RIA
 
react-en.pdf
react-en.pdfreact-en.pdf
react-en.pdf
 
Demystifying S-Controls and AJAX
Demystifying S-Controls and AJAXDemystifying S-Controls and AJAX
Demystifying S-Controls and AJAX
 
Creating Custom Spark Components in Flex 4
Creating Custom Spark Components in Flex 4Creating Custom Spark Components in Flex 4
Creating Custom Spark Components in Flex 4
 
Chpater1
Chpater1Chpater1
Chpater1
 
Adobe Flex
Adobe FlexAdobe Flex
Adobe Flex
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
 
Customizing sales force-interface
Customizing sales force-interfaceCustomizing sales force-interface
Customizing sales force-interface
 
Windows 8 app bar and live tiles
Windows 8 app bar and live tilesWindows 8 app bar and live tiles
Windows 8 app bar and live tiles
 
unit 4.docx
unit 4.docxunit 4.docx
unit 4.docx
 
ASP.NET MVC3 RAD
ASP.NET MVC3 RADASP.NET MVC3 RAD
ASP.NET MVC3 RAD
 

More from senthil0809

First look on python
First look on pythonFirst look on python
First look on python
senthil0809
 
Enterprise search with apache solr
Enterprise search with apache solrEnterprise search with apache solr
Enterprise search with apache solr
senthil0809
 
Get started with R lang
Get started with R langGet started with R lang
Get started with R lang
senthil0809
 
Big data with HDFS and Mapreduce
Big data  with HDFS and MapreduceBig data  with HDFS and Mapreduce
Big data with HDFS and Mapreduce
senthil0809
 
Big data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner'sBig data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner's
senthil0809
 
Multi Touch presentation
Multi Touch presentationMulti Touch presentation
Multi Touch presentationsenthil0809
 

More from senthil0809 (6)

First look on python
First look on pythonFirst look on python
First look on python
 
Enterprise search with apache solr
Enterprise search with apache solrEnterprise search with apache solr
Enterprise search with apache solr
 
Get started with R lang
Get started with R langGet started with R lang
Get started with R lang
 
Big data with HDFS and Mapreduce
Big data  with HDFS and MapreduceBig data  with HDFS and Mapreduce
Big data with HDFS and Mapreduce
 
Big data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner'sBig data - Apache Hadoop for Beginner's
Big data - Apache Hadoop for Beginner's
 
Multi Touch presentation
Multi Touch presentationMulti Touch presentation
Multi Touch presentation
 

Recently uploaded

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 

Recently uploaded (20)

How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

Exploring Adobe Flex

  • 1. Day 2 Exploring Adobe Flex Senthil Kumar Srinivasan
  • 3.
  • 4. Project Name Project Location Web Application AIR Application
  • 5. Run the Application Source Mode Debugging the application Design Mode
  • 6. Place we need Type the code Place the MXML Component here
  • 7. How to Run the Appl.. In Browser
  • 9. Naming conventions for Flex projects Use a common directory for your Flex workspace in team environments. Use the libs folder to bundle SWC libraries with your Flex project. Use UpperCamel Casing for MXML and Action Script Files. Do not use spaces and Special Characters when naming files! Use packages to organize and structure your projects codebase. Create and use an "assets" directory Instance variables and flex controls will follow Hungarian Notation Ex., txtUserName, lblSerail:String. Function names should be in camelcase. It may contain underscores but never at the beginning of the name. Ex - onCreationComplete()
  • 10. Flex – other features CSS support / Runtime skinning support States Management Layout / Navigation Canvas, Form, VBox, HBox, ControlBar, Accordion, LinkBar, MenuBar, ViewStack Controls Button, CheckBox, ComboBox, DataGrid, TextInput, List, Label, Tree Charts – Pie , Line , Bar,, Area, stacked charts etc Data Binding
  • 11. MXML vs. AS3 ( apples vs apples ) MXML : Macromedia XML MXML tags are Instance of Action Script Classes <mx:Button id=“test” /> var myButton:Button = new Button() .  MXML === As3 Class
  • 12. MXML MXML are plain text based document Follows XML standards It is tag based <mx:Panel> similar to HTML Always start with a XML declaration Root node is always <mx:Application>
  • 13. MXMLC Compiler MXML to ActionScript 3 Classes ActionScript 3 to ABC Bytecode ABC Bytecode to SWF SWF run within Flash Player 9
  • 14. MXML - Components <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Button id="btnFirst" label="Click"/> <mx:List id="grdEmp" dataProvider="{empColl}"/> <mx:CheckBox id="chkPlace" label="Chennai" /> </mx:Application>
  • 15. MXML - id <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Button id="btnFirst" label="Click"/> <mx:List id="grdEmp" dataProvider="{empColl}"/> <mx:CheckBox id="chkPlace" label="Chennai" /> </mx:Application>
  • 16. MXML - Properties <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Button id="btnFirst" label="Click"/> <mx:List id="grdEmp" dataProvider="{empColl}"/> <mx:CheckBox id="chkPlace" label="Chennai" /> </mx:Application>
  • 17. Introduction to Action Script ECMA-262 edition and ECMA-4 complaint  Versions Action Script 1.0 – 2000 – 2003 Action Script 2.0 – 2003 – 2006 Flash Player 8 and Above Action Script 3.0 – 2006 – present >> Flex 2.0 - Flash Player 9 and above  Object-oriented from AS 3  Initially designed for controlling simple 2D vector animations made in Adobe Flash (formerly Macromedia Flash).  Foundation for Flex 2 and above  Online API >> http://livedocs.adobe.com/flex/3/html/toc.html
  • 18.
  • 19. Debugging concepts and procedure  The Problem View  Trace Function Break Points  The Problems view is located below the Source mode. Whenever the Problems view shows errors, it means there are problems to be fixed before the application can be compiled.  Windows  Show View  Problems
  • 20.  Show the Alert message while click the Button  After Save the changes if any problems that are detected by the Flex compiler are displayed automatically in the Problems view.
  • 21. Double-click on the error in the Problems view, to move the cursor to the corresponding line of code in the Source mode. To fix this problem , we need to add the alert button in the Script Tag Save the file, which compiles the code - the problem should go away.  Run the application and click the button to see the Alert dialog box
  • 22. Trace Function The trace function sends a simple string to the Console view, so you can track what is happening internally as your application is running. Debug the application. Select the Console view to see the resultant trace message.
  • 23. BreakPoints Breakpoints are used to stops application execution at that point,you can inspect the values of variables, step through code one line at a time, and add or remove breakpoints as needed. Set a breakpoint on the line that declares the variable. A breakpoint can be set or unset (toggled) by double-clicking on the line number or by using the keyboard shortcut Ctrl+Shift+B Save and debug the application. The Variables and Expression view is in the upper-right corner of Flex Builder interface / Eclipse
  • 24. Locate the Count variable, and check its value.
  • 25.  Step through the code observing the value of Count as it changes. Continue until the trace statement is reached.  Click the Resume button in the Debug view, and the application in the browser becomes active again.  Close the browser to terminate the debugging session and return to Flex Builder.
  • 26. To switch to the Development perspective, click to display the list of available perspectives and select Flex Development.
  • 27. Go to the feed variable, right-click it and select Watch feed.
  • 28.
  • 29. Flex UI basics A Flex application's user-interface (UI) is composed of two component types - Containers and Controls. Containers define application layout and navigation. Controls represent a broad category of UI objects required for a fully functional and interactive application. Flex user interface controls are found in the mx.controls package of the Flex Class library. Some Flex controls are not interactive, examples of non-interactive controls include Label and ProgressBar
  • 30. Purpose of UI containers Flex containers serve as a mechanism for defining application layout and navigation. Common layout containers include VBox, HBox, Canvas, Tile and Form. Navigation containers include Accordion, Tab Navigator and View Stack. Each container extends the Container Class, serves a unique purpose and is available for use at the discretion of the application developer. Application is the default container provided at the root of your Flex application. There is no need to define the Application container as it comes part of any Flex application courtesy with the <mx:Application> tag.
  • 31. Basic UI controls in a Flex application Text-based controls are designed to display text and/or receive text input. Examples include Label, Text, TextArea, TextInput, and RichTextEditor. Button-based controls receive user input in the form of keyboard or mouse events. Examples include Button, LinkButton, CheckBox, RadioButton and PopUpButton. List-based controls is a subset of data provider controls, visually represent hierarchical or non-hierarchical (flat) data structures. Examples include ComboBox, List, HorizontalList, DataGrid, TileList and Tree. Menu-based controls another subset of data provider controls enable user-initiated navigation through use of a static menu or a popup menu. Examples include Menu, MenuBar and PopUpMenuButton.
  • 32. Creating styles Sometimes for branding or making the application UI unique, styling application becomes essential. Style properties are defined at the component level in one of 4 ways: Inline MXML Embedded Script tag External CSS Stylesheet SetStyle() method
  • 33. Styling Adobe Flex 2 • Corporate branding • Marketing • Differentiate your application • User experience & usability • Remove any reference to Flex !00
  • 36.
  • 37. Nice, how can we get our apps to look that good ?
  • 38. ! It won’t be BORING ! – just few min
  • 39. What can we use ? CSS Programmatic skins Graphical skins Custom components  At least one CSS file  Programmatic skin (AS3) classes  Graphical skin assets (PNG, SWF etc)  Themes can be compiled as a SWC and easily distributed
  • 43. CSS in Flex 3 Differences to CSS for XHTML  Used to set styles not properties You can’t set size or position - they are properties not styles Setting padding will drive you crazy! Runtime changing of CSS
  • 44. Using /Applying CSS  Inline with <Style><Style> tags  As MXML attribute < color=”#CC0000”>  External using <Style source=”myStyle.css”/>  Using ActionScript setStyle()  To the whole application Application { }  To components ( or custom components ) NewTextLabel { }  Using class – selectors .rightButton { }