SlideShare a Scribd company logo
1 of 47
Download to read offline
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Adobe Presentation
Joseph Labrecque | Using Edge Animate to Create a Reusable Component Set
1
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Joseph Labrecque
Senior Interactive Software Engineer | Adjunct Faculty
University of Denver
Proprietor | Owner
Fractured Vision Media, LLC
Adobe Community Professional
Adobe Education Leader
Adobe Certified Expert
Adobe Certified Educator
Adobe Influencer
Author
Packt Publishing | O’Reilly Media | Lynda.com | video2brain | Adobe Press | Peachpit
Artist
An Early Morning Letter, Displaced | shivervein
2
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Joseph’s Edge Animate Publications
3
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
What we’ll be covering today
 Edge Animate Overview
 Historical Component Creation
 Animate Composition Anatomy
 Creating Simple Components
 Advanced Components
 Component Libraries
 Resources
4
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
EDGE ANIMATE
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Edge Tools and Services
 Free to use at some level
 Part of the Adobe Creative Cloud
 Built from scratch for creative
HTML, CSS, and JavaScript
 Includes the following:
 Edge Animate
 Edge Code
 Edge Inspect
 Edge Reflow
 Edge Web Fonts / Typekit
 PhoneGap Build
6
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Edge Animate
 New tool for motion and interactivity
 Based upon standard web technologies
 Precise animation tools
 Web font integration
 CSS Filters and Gradients
 Motion Paths
 Symbols
 Mobile friendly
7
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
COMPONENT
CREATION
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Components?
 Components are self-contained bits of code
and assets which enable specific
functionality across an application.
 Buttons
 Lists
 Sliders
 Inputs
 Widgets
9
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Notable Component Structures
 Many, many, many Flash Libraries
 Web Templates
 Adobe TopCoat
 Twitter Bootstrap
 Foundation
 Flat UI
 Apache Flex
 “The Shadow DOM”
10
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Component Creation in Animate
 Components are just Symbols!
 How you think about them and how you wire
them up matters a great deal.
 They can be as simple or as complex as you
want.
 Could be a simple button.
 Could be a complex nested widget.
 Fully sharable via Animate Symbol Libraries
and Templating.
11
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Component Creation Overview
Major steps to component creation:
1. Plan out functionality
2. Plan design in support of that functionality
3. Asset creation
4. Edge Animate Symbol creation
5. Wire up assets with interactivity
6. Expose variables for customization
7. Optionally integrate external data
8. Distribution
12
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Familiar Component Creation Example
Flash Platform Tooling:
 Component creation in Flash Professional is
very similar to approaches in Edge
Animate :)
 Skills are easily transferable.
We will:
 Create a Button with 3 states and the ability
to set a custom label.
 Examples using Flash Professional first –
then transfer this modal to Edge Animate.
 Also see a complex component in Edge
Animate.
13
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Authoring Component Parts
MovieClip Symbol
 Button skin
 Up
 Hover
 Down
 Dynamic label text object
 Actions Layer to stop() the Timeline
 Labels Layer to set state
14
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Wiring Up Interactivity
Force familiar button behavior:
 Set buttonMode and useHandCursor to
true
 Set mouseChildren to false
Event listeners for Up, Over Out, and Down
 Corresponding functions to handle each
event and jump to a specific label for
each:
this.gotoAndStop(“Hover”);
15
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LIVE DEMO:
FLASH PROFESSIONAL
16
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
EDGE ANIMATE
COMPOSITIONS
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
About Animate Compositions
 Much like Flash content, Animate
compositions can be used to create any
number of projects:
 Web Animations
 Web Banners
 Web Interactives
 Mobile Assets (PhoneGap)
 Simple Games
 Widgets
18
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Composition Symbol Structure
 Symbols in Animate have their own Stage
and Timeline.
 Similar to How Flash Professional MovieClip
Symbols have their own Timeline.
 Symbols can have nested logic and assets.
Animate Symbol Stage Events:
 creationComplete()
 beforeDeletion()
19
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Composition Symbol Properties
 Width / Height
 Overflow:
 Visible
 Hidden
 Scroll
 Auto
 Autoplay
 Instance:
 Scale
 Resize
 Min / Max Width
20
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LIVE DEMO:
ANIMATE SYMBOLS
21
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
CREATING
COMPONENTS
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Creating a Simple Button Component
Simple Button* has:
 3 different button states
 Up, Hover, Down
 Label which can be changed per-instance
 Will scale upon resize
*of course – you may define as many states as desired…
23
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Generate Component Parts
Components almost always include the
following parts:
 Skins / Image Assets
 Layout / Motion
 Interaction Logic
Can also include:
 Sound
 External Data
 Property Exposure
24
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Exposing Parts for Manipulation
Simple Button States:
 Timeline Labels: Up, Hover, Down
 Map to Mouse Events:
 mouseup, mouseout, mousedown,
mouseover
 Jump to Timeline Labels to switch state.
 “label” is a Text Box exposed within the
Symbol for outside manipulation.
 Easy!
25
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Using Custom Components
1. Drag an instance onto the Stage
2. Give it an instance id
3. Invoke sym.getSymbol(‘id’)
4. From here… you can…
 Invoke functions
 Modify variables
 Target elements
26
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LIVE DEMO:
CREATE A BUTTON
27
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
ADVANCED
COMPONENTS
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Creating an Advanced Component
Going beyond things like; Button, List, Scroller,
Accordion, ToggleButton, et cetera.
 Nested parts with isolated events
 Presentation of many data pieces
 Communication between Symbol instances
 Data injection from the parent Stage
 Tap into remote data APIs
29
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Composition Setup
Important considerations before getting too far
in the development of our component
 Will this be a responsive layout?
 Is it better to resize, or scale?
 Set defaults for layout
 When should the component initialize?
 What properties/methods may be exposed?
30
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Component Parts
When building a small widget in Animate – we
will want all of these tasks to occur internal to
that component Symbol.
 Makes it easily accessible.
 Makes it infinitely distributable.
 Contains all aspects of the component
within itself.
31
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Using jQuery in a Component
jQuery is already part of Edge Animate!*
 Why use jQuery?
 Already available within the composition
 Mature library
 Familiarity
 Cross-browser support
 Great JSON support via AJAX!
 (Using Twitter JSON results)
*jQuery 1.x – not the new 2.x
32
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Integrating External Data
Load in data using…
 JSON
 XML
 Other data transport formats
Twitter Public Search APIs
 Lots of web services have nice APIs to tap
into which server as JSON or XML
 We are going to use Twitter
 Pull @ mentions into a component!
33
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Load up the JSON
1. Expose a method to the parent Stage
which allows method invocation (and
passing of args):
loadTweets("@EdgeAnimate", 7);
2. Use jQuery to import the JSON via the
getJSON() method:
$.getJSON(dataURL + '&callback=?',
function(data) {}
3. We can easily view the results in Chrome:
console.log(tweetArray);
34
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Parse and store the JSON
1. Instantiate a container array to store our
data:
var tweetArray = new Array();
2. Create a function to loop over the results
and build up internal data structures based
upon these results.
3. Once finished, manipulate the component
in such a way that it is fed the ingested
data and exposes it through the Animate
composition.
35
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Generate Objects/Styles/Content from Data
We can do this in a number of ways…
 Change the text within a Text element
 Adjust CSS properties w/ jQuery
 Adjust Animate properties like location,
scale, and transform.
 Even generate additional instances of
component parts through nested symbol
duplication.
36
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Don’t forget to… ANIMATE!
Hey! We are building these things in an
animation program, after all…
 Animation adds life into what might otherwise
be a dull experience.
 Subtle animation is often the best animation.
 …but sometimes crazy stuff is what
catches attention.*
 It all depends upon the project and the
intended audience.
*Just as with Flash content – be careful when doing
crazy stuff… a lot of power here…
37
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
LIVE DEMO:
ADVANCED EXAMPLES
38
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
COMPONENT
LIBRARIES
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Edge Animate Libraries and Symbol Files
 Animate Symbols can be exported from the
Library via right-click menu.
 These .ansym files can be imported into
additional projects.
 When imported, they retain Symbol structure
and contents.
 Anything on the main composition Stage is
not carried over with Animate Symbol files.
40
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Edge Animate Templates
 Templates are persistent across projects.
 Templates, much like Animate Symbol
Libraries, are distributable.
 We can include any amount of functionality
we desire within a Template.
 Templates with a formed Stage.
 Templates with basic Library exposed.
 Templates which demonstrate component
usage :)
41
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Sharing Component Sets
There are a number of ways to share these
components once they have been created and
tested:
 Zip up the Animate project
 Save the entire composition as a Template
 Save individual Symbol components as
Animate Symbol Libraries
42
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Distribution Platforms
There are many private and public platforms
which can be used to distribute these
component sets:
 GitHub
 BitBucket
 DropBox
 SkyDrive
 Google Drive
 Adobe Creative Cloud
 Local Network
43
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
FURTHER
EXPLORATIONS
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Resources and Links
Edge Animate Component Library
https://github.com/josephlabrecque/EdgeAnimateCo
mponentLibrary
Joseph’s Books & Videos
http://josephlabrecque.com/books/
Lynda.com
http://www.lynda.com/
EdgeCommons
https://github.com/simonwidjaja/EdgeCommons
45
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Thank You
Get in touch…
Twitter: @JosephLabrecque
Email: Joseph.Labrecque@du.edu
Web: http://JosephLabrecque.com/
Flash… HTML5… either way…
À votre santé!
46
© 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential.
Take the SESSION SURVEY on the MAX COMPANION app
…for your chance to WIN one of these e-books from Adobe Press
Every survey you submit enters your name to win the daily grand prize -
an Apple iPod Nano. 47

More Related Content

What's hot

Hooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact ConferenceHooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact Conferencejameswillweb
 
Hooray Icon Fonts workshop
Hooray Icon Fonts workshopHooray Icon Fonts workshop
Hooray Icon Fonts workshopjameswillweb
 
Top Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on TabletsTop Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on TabletsMotorola Mobility - MOTODEV
 
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake OilCSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake Oiljameswillweb
 
The Future of HTML5 Motion Design
The Future of HTML5 Motion DesignThe Future of HTML5 Motion Design
The Future of HTML5 Motion DesignTerry Ryan
 
Creating Mobile Content Using Flash
Creating Mobile Content Using FlashCreating Mobile Content Using Flash
Creating Mobile Content Using Flashpaultrani
 
Advanced Android Design Implementation
Advanced Android Design ImplementationAdvanced Android Design Implementation
Advanced Android Design ImplementationTack Mobile
 
Overview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignOverview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignAmy Goodloe
 
Responsive web design
Responsive web designResponsive web design
Responsive web designRuss Weakley
 
10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site AccessibleHelena Zubkow
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web DevelopmentTerry Ryan
 
Creating a Component Library
Creating a Component LibraryCreating a Component Library
Creating a Component Librarynathanacurtis
 
Adobe vs. Sketch
Adobe vs. SketchAdobe vs. Sketch
Adobe vs. SketchRob Musser
 
HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기JungHyuk Kwon
 
Introduction to Building Wireframes (with Keynote)
Introduction to Building Wireframes (with Keynote)Introduction to Building Wireframes (with Keynote)
Introduction to Building Wireframes (with Keynote)Erin 'Folletto' Casali
 

What's hot (20)

Hooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact ConferenceHooray Icon Fonts! Artifact Conference
Hooray Icon Fonts! Artifact Conference
 
Hooray Icon Fonts workshop
Hooray Icon Fonts workshopHooray Icon Fonts workshop
Hooray Icon Fonts workshop
 
Top Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on TabletsTop Tips for Android UIs - Getting the Magic on Tablets
Top Tips for Android UIs - Getting the Magic on Tablets
 
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake OilCSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
 
Explaining Ajax
Explaining AjaxExplaining Ajax
Explaining Ajax
 
The Future of HTML5 Motion Design
The Future of HTML5 Motion DesignThe Future of HTML5 Motion Design
The Future of HTML5 Motion Design
 
WebDU Keynote
WebDU KeynoteWebDU Keynote
WebDU Keynote
 
Creating Mobile Content Using Flash
Creating Mobile Content Using FlashCreating Mobile Content Using Flash
Creating Mobile Content Using Flash
 
Adobe XD
Adobe XD Adobe XD
Adobe XD
 
Advanced Android Design Implementation
Advanced Android Design ImplementationAdvanced Android Design Implementation
Advanced Android Design Implementation
 
Overview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site DesignOverview of Using Wordpress for Web Site Design
Overview of Using Wordpress for Web Site Design
 
Adobe Creative Cloud für Teams
Adobe Creative Cloud für TeamsAdobe Creative Cloud für Teams
Adobe Creative Cloud für Teams
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible10 Simple Rules for Making My Site Accessible
10 Simple Rules for Making My Site Accessible
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web Development
 
Projet Comet Adobe XD
Projet Comet Adobe XDProjet Comet Adobe XD
Projet Comet Adobe XD
 
Creating a Component Library
Creating a Component LibraryCreating a Component Library
Creating a Component Library
 
Adobe vs. Sketch
Adobe vs. SketchAdobe vs. Sketch
Adobe vs. Sketch
 
HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기HTML5 로 iPhone App 만들기
HTML5 로 iPhone App 만들기
 
Introduction to Building Wireframes (with Keynote)
Introduction to Building Wireframes (with Keynote)Introduction to Building Wireframes (with Keynote)
Introduction to Building Wireframes (with Keynote)
 

Similar to Using Edge Animate to Create a Reusable Component Set

Adobe MAX 2015 - Giving Flash Professional Another Look
Adobe MAX 2015 - Giving Flash Professional Another LookAdobe MAX 2015 - Giving Flash Professional Another Look
Adobe MAX 2015 - Giving Flash Professional Another LookJoseph Labrecque
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumAxway Appcelerator
 
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAAppcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAJeff Haynie
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRJoseph Labrecque
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applicationsMichael Chaize
 
Over the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidOver the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidMichael Chaize
 
Concurrent Programming with ActionScript workers
Concurrent Programming with ActionScript workersConcurrent Programming with ActionScript workers
Concurrent Programming with ActionScript workersPaul Robertson
 
User Interface customization for AEM 6
User Interface customization for AEM 6User Interface customization for AEM 6
User Interface customization for AEM 6Damien Antipa
 
JMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialJMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialRyan Baxter
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile developmentMihai Corlan
 
Creating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesCreating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesChris Griffith
 
Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011sullis
 
RICOH THETA x IoT Developers Contest : Cloud API Seminar
 RICOH THETA x IoT Developers Contest : Cloud API Seminar RICOH THETA x IoT Developers Contest : Cloud API Seminar
RICOH THETA x IoT Developers Contest : Cloud API Seminarcontest-theta360
 
UI Customization in AEM 6.0
UI Customization in AEM 6.0UI Customization in AEM 6.0
UI Customization in AEM 6.0Gilles Knobloch
 
Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15sullis
 

Similar to Using Edge Animate to Create a Reusable Component Set (20)

Adobe MAX 2015 - Giving Flash Professional Another Look
Adobe MAX 2015 - Giving Flash Professional Another LookAdobe MAX 2015 - Giving Flash Professional Another Look
Adobe MAX 2015 - Giving Flash Professional Another Look
 
iPhone/iPad Development with Titanium
iPhone/iPad Development with TitaniumiPhone/iPad Development with Titanium
iPhone/iPad Development with Titanium
 
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CAAppcelerator iPhone/iPad Dev Con 2010 San Diego, CA
Appcelerator iPhone/iPad Dev Con 2010 San Diego, CA
 
AIR for Higher Education
AIR for Higher EducationAIR for Higher Education
AIR for Higher Education
 
Progressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIRProgressing beyond the Desktop at Universities with Adobe AIR
Progressing beyond the Desktop at Universities with Adobe AIR
 
Xebia adobe flash mobile applications
Xebia adobe flash mobile applicationsXebia adobe flash mobile applications
Xebia adobe flash mobile applications
 
Over the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for AndroidOver the air 2.5 - Adobe AIR for Android
Over the air 2.5 - Adobe AIR for Android
 
Concurrent Programming with ActionScript workers
Concurrent Programming with ActionScript workersConcurrent Programming with ActionScript workers
Concurrent Programming with ActionScript workers
 
User Interface customization for AEM 6
User Interface customization for AEM 6User Interface customization for AEM 6
User Interface customization for AEM 6
 
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
 
Flex mobile for JUG
Flex mobile for JUGFlex mobile for JUG
Flex mobile for JUG
 
JMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocialJMP102 Extending Your App Arsenal With OpenSocial
JMP102 Extending Your App Arsenal With OpenSocial
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile development
 
Creating Compelling Mobile User Experiences
Creating Compelling Mobile User ExperiencesCreating Compelling Mobile User Experiences
Creating Compelling Mobile User Experiences
 
Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011Android 3.1 - Portland Code Camp 2011
Android 3.1 - Portland Code Camp 2011
 
RICOH THETA x IoT Developers Contest : Cloud API Seminar
 RICOH THETA x IoT Developers Contest : Cloud API Seminar RICOH THETA x IoT Developers Contest : Cloud API Seminar
RICOH THETA x IoT Developers Contest : Cloud API Seminar
 
UI Customization in AEM 6.0
UI Customization in AEM 6.0UI Customization in AEM 6.0
UI Customization in AEM 6.0
 
W-JAX Keynote 2010
W-JAX Keynote 2010W-JAX Keynote 2010
W-JAX Keynote 2010
 
Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15Android 3.0 Portland Java User Group 2011-03-15
Android 3.0 Portland Java User Group 2011-03-15
 
Salesforce.com Lightning
Salesforce.com LightningSalesforce.com Lightning
Salesforce.com Lightning
 

More from Joseph Labrecque

Producing Quality Video Content for Online Learning
Producing Quality Video Content for Online LearningProducing Quality Video Content for Online Learning
Producing Quality Video Content for Online LearningJoseph Labrecque
 
Interactive Animation with Adobe Animate CC
Interactive Animation with Adobe Animate CCInteractive Animation with Adobe Animate CC
Interactive Animation with Adobe Animate CCJoseph Labrecque
 
Cinematic Interactives with Animate CC
Cinematic Interactives with Animate CCCinematic Interactives with Animate CC
Cinematic Interactives with Animate CCJoseph Labrecque
 
Animate CC and the Flash Runtimes at Adobe MAX
Animate CC and the Flash Runtimes at Adobe MAX Animate CC and the Flash Runtimes at Adobe MAX
Animate CC and the Flash Runtimes at Adobe MAX Joseph Labrecque
 
Don't Fear the SWF! (Adobe MAX Community Summit)
Don't Fear the SWF! (Adobe MAX Community Summit)Don't Fear the SWF! (Adobe MAX Community Summit)
Don't Fear the SWF! (Adobe MAX Community Summit)Joseph Labrecque
 
Adobe Animate CC: Introduction to Animation and Interactivity
Adobe Animate CC: Introduction to Animation and InteractivityAdobe Animate CC: Introduction to Animation and Interactivity
Adobe Animate CC: Introduction to Animation and InteractivityJoseph Labrecque
 
Adobe Animate CC: Tool for the Changing Tech Landscape
 Adobe Animate CC: Tool for the Changing Tech Landscape Adobe Animate CC: Tool for the Changing Tech Landscape
Adobe Animate CC: Tool for the Changing Tech LandscapeJoseph Labrecque
 
Surviving Industry Disruption in Higher Education
Surviving Industry Disruption in Higher EducationSurviving Industry Disruption in Higher Education
Surviving Industry Disruption in Higher EducationJoseph Labrecque
 
Designing Short, Simple, and Effective Video Content for Online Consumption
Designing Short, Simple, and Effective Video Content for Online ConsumptionDesigning Short, Simple, and Effective Video Content for Online Consumption
Designing Short, Simple, and Effective Video Content for Online ConsumptionJoseph Labrecque
 
Introducing Adobe Animate CC
Introducing Adobe Animate CCIntroducing Adobe Animate CC
Introducing Adobe Animate CCJoseph Labrecque
 
Flash Professional CC for Mobile
Flash Professional CC for MobileFlash Professional CC for Mobile
Flash Professional CC for MobileJoseph Labrecque
 
Flash Professional CC 2015: A New Era in Animation and Interactivity
Flash Professional CC 2015: A New Era in Animation and InteractivityFlash Professional CC 2015: A New Era in Animation and Interactivity
Flash Professional CC 2015: A New Era in Animation and InteractivityJoseph Labrecque
 
Why Flash Professional Still Matters for the Web and Beyond
Why Flash Professional Still Matters for the Web and BeyondWhy Flash Professional Still Matters for the Web and Beyond
Why Flash Professional Still Matters for the Web and BeyondJoseph Labrecque
 
Mobile Application Development Technology Roundup
Mobile Application Development Technology RoundupMobile Application Development Technology Roundup
Mobile Application Development Technology RoundupJoseph Labrecque
 
Adobe Generation Professional: Animation
Adobe Generation Professional:AnimationAdobe Generation Professional:Animation
Adobe Generation Professional: AnimationJoseph Labrecque
 
Flash Professional CC: Multiplatform Creativity Engine
Flash Professional CC: Multiplatform Creativity EngineFlash Professional CC: Multiplatform Creativity Engine
Flash Professional CC: Multiplatform Creativity EngineJoseph Labrecque
 
Flash Runtimes Conquer the Universe
Flash Runtimes Conquer the UniverseFlash Runtimes Conquer the Universe
Flash Runtimes Conquer the UniverseJoseph Labrecque
 
Flash Professional and AIR 14: Creative Cloud Updates
Flash Professional and AIR 14: Creative Cloud UpdatesFlash Professional and AIR 14: Creative Cloud Updates
Flash Professional and AIR 14: Creative Cloud UpdatesJoseph Labrecque
 

More from Joseph Labrecque (20)

Producing Quality Video Content for Online Learning
Producing Quality Video Content for Online LearningProducing Quality Video Content for Online Learning
Producing Quality Video Content for Online Learning
 
Interactive Animation with Adobe Animate CC
Interactive Animation with Adobe Animate CCInteractive Animation with Adobe Animate CC
Interactive Animation with Adobe Animate CC
 
Cinematic Interactives with Animate CC
Cinematic Interactives with Animate CCCinematic Interactives with Animate CC
Cinematic Interactives with Animate CC
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Animate CC and the Flash Runtimes at Adobe MAX
Animate CC and the Flash Runtimes at Adobe MAX Animate CC and the Flash Runtimes at Adobe MAX
Animate CC and the Flash Runtimes at Adobe MAX
 
Don't Fear the SWF! (Adobe MAX Community Summit)
Don't Fear the SWF! (Adobe MAX Community Summit)Don't Fear the SWF! (Adobe MAX Community Summit)
Don't Fear the SWF! (Adobe MAX Community Summit)
 
Adobe Animate CC: Introduction to Animation and Interactivity
Adobe Animate CC: Introduction to Animation and InteractivityAdobe Animate CC: Introduction to Animation and Interactivity
Adobe Animate CC: Introduction to Animation and Interactivity
 
Adobe Animate CC: Tool for the Changing Tech Landscape
 Adobe Animate CC: Tool for the Changing Tech Landscape Adobe Animate CC: Tool for the Changing Tech Landscape
Adobe Animate CC: Tool for the Changing Tech Landscape
 
Surviving Industry Disruption in Higher Education
Surviving Industry Disruption in Higher EducationSurviving Industry Disruption in Higher Education
Surviving Industry Disruption in Higher Education
 
Designing Short, Simple, and Effective Video Content for Online Consumption
Designing Short, Simple, and Effective Video Content for Online ConsumptionDesigning Short, Simple, and Effective Video Content for Online Consumption
Designing Short, Simple, and Effective Video Content for Online Consumption
 
Introducing Adobe Animate CC
Introducing Adobe Animate CCIntroducing Adobe Animate CC
Introducing Adobe Animate CC
 
Bootstrap Fundamentals
Bootstrap FundamentalsBootstrap Fundamentals
Bootstrap Fundamentals
 
Flash Professional CC for Mobile
Flash Professional CC for MobileFlash Professional CC for Mobile
Flash Professional CC for Mobile
 
Flash Professional CC 2015: A New Era in Animation and Interactivity
Flash Professional CC 2015: A New Era in Animation and InteractivityFlash Professional CC 2015: A New Era in Animation and Interactivity
Flash Professional CC 2015: A New Era in Animation and Interactivity
 
Why Flash Professional Still Matters for the Web and Beyond
Why Flash Professional Still Matters for the Web and BeyondWhy Flash Professional Still Matters for the Web and Beyond
Why Flash Professional Still Matters for the Web and Beyond
 
Mobile Application Development Technology Roundup
Mobile Application Development Technology RoundupMobile Application Development Technology Roundup
Mobile Application Development Technology Roundup
 
Adobe Generation Professional: Animation
Adobe Generation Professional:AnimationAdobe Generation Professional:Animation
Adobe Generation Professional: Animation
 
Flash Professional CC: Multiplatform Creativity Engine
Flash Professional CC: Multiplatform Creativity EngineFlash Professional CC: Multiplatform Creativity Engine
Flash Professional CC: Multiplatform Creativity Engine
 
Flash Runtimes Conquer the Universe
Flash Runtimes Conquer the UniverseFlash Runtimes Conquer the Universe
Flash Runtimes Conquer the Universe
 
Flash Professional and AIR 14: Creative Cloud Updates
Flash Professional and AIR 14: Creative Cloud UpdatesFlash Professional and AIR 14: Creative Cloud Updates
Flash Professional and AIR 14: Creative Cloud Updates
 

Recently uploaded

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 

Recently uploaded (20)

Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 

Using Edge Animate to Create a Reusable Component Set

  • 1. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Adobe Presentation Joseph Labrecque | Using Edge Animate to Create a Reusable Component Set 1
  • 2. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Joseph Labrecque Senior Interactive Software Engineer | Adjunct Faculty University of Denver Proprietor | Owner Fractured Vision Media, LLC Adobe Community Professional Adobe Education Leader Adobe Certified Expert Adobe Certified Educator Adobe Influencer Author Packt Publishing | O’Reilly Media | Lynda.com | video2brain | Adobe Press | Peachpit Artist An Early Morning Letter, Displaced | shivervein 2
  • 3. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Joseph’s Edge Animate Publications 3
  • 4. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. What we’ll be covering today  Edge Animate Overview  Historical Component Creation  Animate Composition Anatomy  Creating Simple Components  Advanced Components  Component Libraries  Resources 4
  • 5. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. EDGE ANIMATE
  • 6. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Edge Tools and Services  Free to use at some level  Part of the Adobe Creative Cloud  Built from scratch for creative HTML, CSS, and JavaScript  Includes the following:  Edge Animate  Edge Code  Edge Inspect  Edge Reflow  Edge Web Fonts / Typekit  PhoneGap Build 6
  • 7. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Edge Animate  New tool for motion and interactivity  Based upon standard web technologies  Precise animation tools  Web font integration  CSS Filters and Gradients  Motion Paths  Symbols  Mobile friendly 7
  • 8. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. COMPONENT CREATION
  • 9. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Components?  Components are self-contained bits of code and assets which enable specific functionality across an application.  Buttons  Lists  Sliders  Inputs  Widgets 9
  • 10. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Notable Component Structures  Many, many, many Flash Libraries  Web Templates  Adobe TopCoat  Twitter Bootstrap  Foundation  Flat UI  Apache Flex  “The Shadow DOM” 10
  • 11. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Component Creation in Animate  Components are just Symbols!  How you think about them and how you wire them up matters a great deal.  They can be as simple or as complex as you want.  Could be a simple button.  Could be a complex nested widget.  Fully sharable via Animate Symbol Libraries and Templating. 11
  • 12. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Component Creation Overview Major steps to component creation: 1. Plan out functionality 2. Plan design in support of that functionality 3. Asset creation 4. Edge Animate Symbol creation 5. Wire up assets with interactivity 6. Expose variables for customization 7. Optionally integrate external data 8. Distribution 12
  • 13. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Familiar Component Creation Example Flash Platform Tooling:  Component creation in Flash Professional is very similar to approaches in Edge Animate :)  Skills are easily transferable. We will:  Create a Button with 3 states and the ability to set a custom label.  Examples using Flash Professional first – then transfer this modal to Edge Animate.  Also see a complex component in Edge Animate. 13
  • 14. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Authoring Component Parts MovieClip Symbol  Button skin  Up  Hover  Down  Dynamic label text object  Actions Layer to stop() the Timeline  Labels Layer to set state 14
  • 15. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Wiring Up Interactivity Force familiar button behavior:  Set buttonMode and useHandCursor to true  Set mouseChildren to false Event listeners for Up, Over Out, and Down  Corresponding functions to handle each event and jump to a specific label for each: this.gotoAndStop(“Hover”); 15
  • 16. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LIVE DEMO: FLASH PROFESSIONAL 16
  • 17. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. EDGE ANIMATE COMPOSITIONS
  • 18. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. About Animate Compositions  Much like Flash content, Animate compositions can be used to create any number of projects:  Web Animations  Web Banners  Web Interactives  Mobile Assets (PhoneGap)  Simple Games  Widgets 18
  • 19. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Composition Symbol Structure  Symbols in Animate have their own Stage and Timeline.  Similar to How Flash Professional MovieClip Symbols have their own Timeline.  Symbols can have nested logic and assets. Animate Symbol Stage Events:  creationComplete()  beforeDeletion() 19
  • 20. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Composition Symbol Properties  Width / Height  Overflow:  Visible  Hidden  Scroll  Auto  Autoplay  Instance:  Scale  Resize  Min / Max Width 20
  • 21. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LIVE DEMO: ANIMATE SYMBOLS 21
  • 22. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. CREATING COMPONENTS
  • 23. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Creating a Simple Button Component Simple Button* has:  3 different button states  Up, Hover, Down  Label which can be changed per-instance  Will scale upon resize *of course – you may define as many states as desired… 23
  • 24. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Generate Component Parts Components almost always include the following parts:  Skins / Image Assets  Layout / Motion  Interaction Logic Can also include:  Sound  External Data  Property Exposure 24
  • 25. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Exposing Parts for Manipulation Simple Button States:  Timeline Labels: Up, Hover, Down  Map to Mouse Events:  mouseup, mouseout, mousedown, mouseover  Jump to Timeline Labels to switch state.  “label” is a Text Box exposed within the Symbol for outside manipulation.  Easy! 25
  • 26. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Using Custom Components 1. Drag an instance onto the Stage 2. Give it an instance id 3. Invoke sym.getSymbol(‘id’) 4. From here… you can…  Invoke functions  Modify variables  Target elements 26
  • 27. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LIVE DEMO: CREATE A BUTTON 27
  • 28. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. ADVANCED COMPONENTS
  • 29. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Creating an Advanced Component Going beyond things like; Button, List, Scroller, Accordion, ToggleButton, et cetera.  Nested parts with isolated events  Presentation of many data pieces  Communication between Symbol instances  Data injection from the parent Stage  Tap into remote data APIs 29
  • 30. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Composition Setup Important considerations before getting too far in the development of our component  Will this be a responsive layout?  Is it better to resize, or scale?  Set defaults for layout  When should the component initialize?  What properties/methods may be exposed? 30
  • 31. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Component Parts When building a small widget in Animate – we will want all of these tasks to occur internal to that component Symbol.  Makes it easily accessible.  Makes it infinitely distributable.  Contains all aspects of the component within itself. 31
  • 32. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Using jQuery in a Component jQuery is already part of Edge Animate!*  Why use jQuery?  Already available within the composition  Mature library  Familiarity  Cross-browser support  Great JSON support via AJAX!  (Using Twitter JSON results) *jQuery 1.x – not the new 2.x 32
  • 33. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Integrating External Data Load in data using…  JSON  XML  Other data transport formats Twitter Public Search APIs  Lots of web services have nice APIs to tap into which server as JSON or XML  We are going to use Twitter  Pull @ mentions into a component! 33
  • 34. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Load up the JSON 1. Expose a method to the parent Stage which allows method invocation (and passing of args): loadTweets("@EdgeAnimate", 7); 2. Use jQuery to import the JSON via the getJSON() method: $.getJSON(dataURL + '&callback=?', function(data) {} 3. We can easily view the results in Chrome: console.log(tweetArray); 34
  • 35. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Parse and store the JSON 1. Instantiate a container array to store our data: var tweetArray = new Array(); 2. Create a function to loop over the results and build up internal data structures based upon these results. 3. Once finished, manipulate the component in such a way that it is fed the ingested data and exposes it through the Animate composition. 35
  • 36. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Generate Objects/Styles/Content from Data We can do this in a number of ways…  Change the text within a Text element  Adjust CSS properties w/ jQuery  Adjust Animate properties like location, scale, and transform.  Even generate additional instances of component parts through nested symbol duplication. 36
  • 37. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Don’t forget to… ANIMATE! Hey! We are building these things in an animation program, after all…  Animation adds life into what might otherwise be a dull experience.  Subtle animation is often the best animation.  …but sometimes crazy stuff is what catches attention.*  It all depends upon the project and the intended audience. *Just as with Flash content – be careful when doing crazy stuff… a lot of power here… 37
  • 38. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. LIVE DEMO: ADVANCED EXAMPLES 38
  • 39. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. COMPONENT LIBRARIES
  • 40. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Edge Animate Libraries and Symbol Files  Animate Symbols can be exported from the Library via right-click menu.  These .ansym files can be imported into additional projects.  When imported, they retain Symbol structure and contents.  Anything on the main composition Stage is not carried over with Animate Symbol files. 40
  • 41. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Edge Animate Templates  Templates are persistent across projects.  Templates, much like Animate Symbol Libraries, are distributable.  We can include any amount of functionality we desire within a Template.  Templates with a formed Stage.  Templates with basic Library exposed.  Templates which demonstrate component usage :) 41
  • 42. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Sharing Component Sets There are a number of ways to share these components once they have been created and tested:  Zip up the Animate project  Save the entire composition as a Template  Save individual Symbol components as Animate Symbol Libraries 42
  • 43. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Distribution Platforms There are many private and public platforms which can be used to distribute these component sets:  GitHub  BitBucket  DropBox  SkyDrive  Google Drive  Adobe Creative Cloud  Local Network 43
  • 44. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. FURTHER EXPLORATIONS
  • 45. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Resources and Links Edge Animate Component Library https://github.com/josephlabrecque/EdgeAnimateCo mponentLibrary Joseph’s Books & Videos http://josephlabrecque.com/books/ Lynda.com http://www.lynda.com/ EdgeCommons https://github.com/simonwidjaja/EdgeCommons 45
  • 46. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Thank You Get in touch… Twitter: @JosephLabrecque Email: Joseph.Labrecque@du.edu Web: http://JosephLabrecque.com/ Flash… HTML5… either way… À votre santé! 46
  • 47. © 2013 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Take the SESSION SURVEY on the MAX COMPANION app …for your chance to WIN one of these e-books from Adobe Press Every survey you submit enters your name to win the daily grand prize - an Apple iPod Nano. 47