Lesson: Performing Custom Painting
        
 
This lesson describes custom painting in Swing. 
Many programs will get by just fine 
without writing their own painting code; they will simply use the 
standard GUI components that are already available in the Swing API. But if you need specific control 
over how your graphics are drawn, then this lesson is for you. 
We will explore custom painting by creating
a simple GUI application that draws a shape 
in response to the user's mouse activity.
By intentionally 
keeping its design simple, we can focus on the underlying 
painting concepts, which in turn will relate to other GUI applications
that you develop in the future.
 This lesson explains 
 each concept in steps as you construct the demo application. 
 It presents the code as soon as possible with a minimum amount 
of background reading. 
 Custom painting in 
Swing is similar to custom painting in AWT, but since we do not recommend 
 writing 
your applications entirely with the AWT, its painting mechanism is not specifically 
discussed here. You may find it useful to read this lesson 
 followed by the 
  in-depth discussion of  
 Painting in AWT and Swing 
  on the Sun Developer Network (SDN).