Contents
foreword xxi
preface xxiii
acknowledgments xxv
about this book xxvii
Part 1 Application basics
- Introduction to Flex
- Why are web applications so prolific?
- Prolific, but at a price
- The RIA solution
- The RIA contenders
- Flex vs. web applications
- Becoming acquainted with Flex
- What’s new in Flex 3
- Summary
- Getting started
- Flex on the cheap
- Get serious with Flex Builder
- Exploring Flex Builder
- Views and perspectives
- Our first project—Hello World!
- Using design mode
- Built-in help
- MXML and ActionScript in a nutshell
- Summary
- Working with ActionScript
- Comments
- Variables
- Loops
- Conditional statements (if statements and switches)
- Arrays
- ActionScript tidbits
- Sneak peek at functions, classes, and packages
- Simple data binding
- Summary
- Layout and containers
- Absolute layout
- Constraint-based layout
- Automatic layout
- Variable and fixed sizing
- Containers
- Dynamic layout with Repeaters
- Summary
- Displaying forms and capturing user input
- The id attribute
- Text controls
- Date controls
- Numeric controls
- Buttons
- Picklist controls
- Accessing the control’s value
- Summary
- Validating user input
- Overview of validation
- Built-in validators
- Real-time validation
- Committed value validation
- Pass-through validation
- Scripted validation
- Validation tidbits
- Summary
- Formatting data
- Built-in formatters
- Real-time formatting
- Scripted formatting
- Working with formatting errors
- Summary
- DataGrids, lists, and trees
- List genealogy
- The dataProvider and collections
- Initializing collections
- Populating collections
- Interacting with lists
- Summary
- List customization
- Label functions
- Item renderers
- Item editors
- Combining an item editor and item renderer
- Advanced item renderers
- Filter functions
- Summary
Part 2 Application flow and structure
- Events
- The event system
- Sending and receiving events
- Custom events
- Summary
- Application navigation
- Feeding the data provider for menus and menu bars
- Working with menus
- Using a menu bar
- Using view stacks
- TabNavigator
- Accordion
- Summary
- Introduction to pop-ups
- Creating your first pop-up
- Controlling the window location
- Setting window transparency
- Data integration with pop-ups
- Using alerts
- Summary
- View states
- Understanding view states
- View states in Flex
- Summary
- Working with data services
- What the heck is a WSDL document?
- Reading WSDL
- Using WebService components
- Using HTTPService to retrieve results
- Using the RemoteObject tag
- Using the URLLoader
- Using the Flex Import Web Service wizard
- Summary
- Working with XML
- XML primer
- XML components and classes
- Loading external XML source data
- Binding in XML
- ECMAScript for XML (E4X)
- Summary
- Objects and classes
- OO theory in 5 minutes
- Playing with objects
- Creating a class
- Adding properties
- Adding getter/setter methods
- Creating methods for your class
- Summary
- Custom components
- What are custom components?
- How custom components work
- Simple custom components
- Passing parameters
- Retrieving values
- Creating composite components
- Creating ActionScript components
- Custom events
- Namespaces and structure
- Summary
- Advanced reusability in Flex
- SWC files
- Runtime shared libraries
- Modular Flex application development
- Adding patches in your Flex application lifecycle
- Refactoring
- Summary
Part 3 The finishing touches
Customizing the experience
- Styles
- Embedding fonts
- Images and icons
- Skins
- Summary
- Working with effects
- What is an effect?
- Triggered effects
- Programmatically applying an effect
- Creating composite effects
- Using out-of-the-box effects
- Easing functions
- Fonts and effects
- Summary
- Drag-and-drop
- The drag-and-drop process
- Drag-and-drop events
- Components that support drag-and-drop
- Enabling D&D on List-based components
- Moving versus copying
- Multi-item drag
- Two-way drag-and-drop
- Using D&D for user-controlled sorting
- Enter the DragManager
- Accepting or denying a drop
- Applying your own drop
- Adding D&D to non-List components
- Customizing the drag-and-drop experience
- Summary
- Charting
- Introduction to charting
- Setting the stage with series and data
- Creating charts
- Stacking charts
- Exploring chart types
- Customizing charts
- Summary
- Debugging and testing
- Debugging
- Testing
- Summary
- Wrapping up a project
- Printing
- Customizing the wrapper
- Deployment
- Summary
-
resources
index