Class MattePainter<T>

  • All Implemented Interfaces:
    Painter<T>

    public class MattePainter<T>
    extends AbstractAreaPainter<T>
    A Painter implementation that uses a Paint to fill the entire background area. For example, if I wanted to paint the entire background of a panel green, I would:
    
      MattePainter p = new MattePainter(Color.GREEN);
      panel.setBackgroundPainter(p);
     

    Since it accepts a Paint, it is also possible to paint a texture or use other more exotic Paint implementations. To paint a BufferedImage texture as the background:

    
      TexturePaint paint = new TexturePaint(bufferedImage,
          new Rectangle2D.Double(0, 0, bufferedImage.getWidth(), bufferedImage.getHeight()));
      MattePainter p = new MattePainter(paint);
      panel.setBackgroundPainter(p);
     

    If no paint is specified, then nothing is painted

    • Constructor Detail

      • MattePainter

        public MattePainter()
        Creates a new MattePainter with "null" as the paint used
      • MattePainter

        public MattePainter​(java.awt.Paint paint)
        Create a new MattePainter for the given Paint. This can be a GradientPaint (the gradient will not grow when the component becomes larger unless you use the paintStretched boolean property), TexturePaint, Color, or other Paint instance.
        Parameters:
        paint - Paint to fill with
      • MattePainter

        public MattePainter​(java.awt.Paint paint,
                            boolean paintStretched)
        Create a new MattePainter for the given Paint. This can be a GradientPaint (the gradient will not grow when the component becomes larger unless you use the paintStretched boolean property), TexturePaint, Color, or other Paint instance.
        Parameters:
        paint - Paint to fill with
        paintStretched - indicates if the paint should be stretched
    • Method Detail

      • doPaint

        public void doPaint​(java.awt.Graphics2D g,
                            T component,
                            int width,
                            int height)
        Description copied from class: AbstractPainter
        Subclasses must implement this method and perform custom painting operations here.
        Specified by:
        doPaint in class AbstractPainter<T>
        Parameters:
        g - The Graphics2D object in which to paint
      • provideShape

        public java.awt.Shape provideShape​(java.awt.Graphics2D g,
                                           T comp,
                                           int width,
                                           int height)
        Description copied from class: AbstractAreaPainter
        Returns the outline shape of this painter. Subclasses must implement this method. This shape will be used for filling, stroking, and clipping.
        Specified by:
        provideShape in class AbstractAreaPainter<T>
        Parameters:
        g - graphics
        comp - The Object this painter will be painted on.
        width - the width to paint
        height - the height to paint
        Returns:
        the outline shape of this painter