Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jdesktop.swingx.plaf
Class PainterUIResource<T extends javax.swing.JComponent>

    java.lang.Object
      org.jdesktop.swingx.plaf.PainterUIResource<T>

Type Parameters:
  `T` - a subclass of JComponent

All Implemented Interfaces:
  javax.swing.plaf.UIResource, Painter<T>

    public class PainterUIResource<T extends javax.swing.JComponent>

extends java.lang.Object
implements Painter<T>, javax.swing.plaf.UIResource

An implementation of Painter as a UIResource. UI classes that create Painters should use this class.

Author:
  rbair, Karl George Schaefer

Constructor Summary
`PainterUIResource(Painter<? super T> p)` Creates a new instance of PainterUIResource with the specified delegate painter.

Method Summary
`void` | `paint(java.awt.Graphics2D g, T component, int width, int height)` Renders to the given `Graphics2D` object.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### PainterUIResource

    public PainterUIResource(Painter<? super T> p)

  Creates a new instance of PainterUIResource with the specified delegate painter.

  Parameters:
    `p` - the delegate painter

Method Detail

### paint

    public void paint(java.awt.Graphics2D g,
                      T component,
                      int width,
                      int height)

  Renders to the given `Graphics2D` object. Implementations of this method may modify state on the `Graphics2D`, and are not required to restore that state upon completion. In most cases, it is recommended that the caller pass in a scratch graphics object. The `Graphics2D` must never be null.

  State on the graphics object may be honored by the `paint` method, but may not be. For instance, setting the antialiasing rendering hint on the graphics may or may not be respected by the `Painter` implementation.

  The supplied object parameter acts as an optional configuration argument. For example, it could be of type `Component`. A `Painter` that expected it could then read state from that `Component` and use the state for painting. For example, an implementation may read the backgroundColor and use that.

  Generally, to enhance reusability, most standard `Painter`s ignore this parameter. They can thus be reused in any context. The `object` may be null. Implementations must not throw a NullPointerException if the object parameter is null.

  Finally, the `width` and `height` arguments specify the width and height that the `Painter` should paint into. More specifically, the specified width and height instruct the painter that it should paint fully within this width and height. Any specified clip on the `g` param will further constrain the region.

  For example, suppose I have a `Painter` implementation that draws a gradient. The gradient goes from white to black. It "stretches" to fill the painted region. Thus, if I use this `Painter` to paint a 500 x 500 region, the far left would be black, the far right would be white, and a smooth gradient would be painted between. I could then, without modification, reuse the `Painter` to paint a region that is 20x20 in size. This region would also be black on the left, white on the right, and a smooth gradient painted between.

  Specified by:
    `paint` in interface `Painter<T extends javax.swing.JComponent>`
  Parameters:
    `g` - The Graphics2D to render to. This must not be null.
    `component` - an optional configuration parameter. This may be null.
    `width` - width of the area to paint.
    `height` - height of the area to paint.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2010. All Rights Reserved.