HAPPY BOOKSGIVING
Use code BOOKSGIVING during checkout to save 40%-55% on books and eBooks. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This PDF will be accessible from your Account page after purchase and requires PDF reading software, such as Acrobat® Reader®.
The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
This is the eBook version of the printed book. If the print book includes a CD-ROM, this content is not included within the eBook version.
Filthy Rich Clients refers to ultra-graphically rich applications that ooze cool. They suck the user in from the outset and hang on to them with a death grip of excitement. Filthy Rich Clients: Developing Animated and Graphical Effects for Desktop Java™ Applications shows you how to build better, more effective, cooler desktop applications that intensify the user experience.
The keys to Filthy Rich Clients are graphical and animated effects. These kinds of effects provide ways of enhancing the user experience of the application through more attractive GUIs, dynamic effects that give your application a pulse, and animated transitions that keep your user connected to the logical flow of the application. The book also discusses how to do so effectively, making sure to enrich applications in sensible ways.
In-depth coverage includes
Code examples illustrate key concepts, and the book’s companion Web site, http://filthyrichclients.org, includes extensive demos, utility libraries, additional information on related technologies, and more.
Informal, fun, and, most of all, useful, this book is great for any developer working with Java to build desktop applications.
Abstract Window Toolkit (AWT) 12
Java 2D 13
Swing 13
Events 16
Swing Painting 17
Swing Rendering 20
Double-Buffering 28
Threading 31
Java 2D 43
Rendering 45
Image Types 92
BufferedImage 95
Image Scaling 98
Use the Clip 115
Compatible Images 121
Managed Images 126
Intermediate Images 134
Optimal Primitive Rendering 143
Benchmark 144
Command-Line Flags 145
AlphaComposite 153
AlphaComposite: The 12 Rules 155
Creating and Setting Up an AlphaComposite 163
Common Uses of AlphaComposite 164
Issues with AlphaComposite 168
Create Your Own Composite 170
Summary 177
Two-Stops Linear Gradient 179
Special Effects with Regular Gradients 182
Multistops Linear Gradient 187
Radial Gradient 189
Optimizing Gradients 193
Image Filters 200
Processing an Image with BufferedImageOp 201
AffineTransformOp 203
ColorConvertOp 204
ConvolveOp 206
LookupOp 211
RescaleOp 213
Custom BufferedImageOp 214
A Note about Filters Performance 222
Summary 222
Painting on the Glass Pane 225
Blocking Input Events 230
Using Layered Pane Layers 238
Ordering Components within a Single Layer 242
Layered Panes and Layouts 243
Alternative to JLayeredPane with Layouts 244
When Swing Gets Too Smart 249
Meet the RepaintManager 251
A Reflection on RepaintManager 253
Summary 262
It’s About Time 265
Fundamental Concepts 266
Frame-Based Animation 266
Timing (and Platform Timing Utilities) 275
Resolution 288
Animating Your Swing Application 300
Summary 314
Background: Why Does My Animation Look Bad? 315
What Makes Animations Choppy, and How to Smooth Them Out 316
SmoothMoves: The Demo 335
Summary 341
Introduction 343
Core Concepts 345
Interpolation 359
Summary 378
Triggers 379
Property Setters 392
Summary 420
Blur 423
Reflection 434
Drop Shadows 437
Highlights 442
Sharpening 450
Summary 458
Motion 460
Fading 465
Pulse 473
Spring 484
Morphing 489
Summary 495
Animating Application State Segues 497
Animated Transitions: The Library 501
Example: SearchTransition 503
Example: SearchTransition Revisited: Customization 516
Example: ImageBrowser 519
Animated Transitions: Under the Hood, or How Do You Get Swing to Do That? 527
Summary 530
Aerith 531
Workflow Paper Design 533
The Vision 535
Screen Paper Design 537
Mockup 538
From Mockup to Code 540
But . . . I’m Not an Artist! 544
Choosing Nice Colors 545
Read Design Books 547
Summary 548