Class PlafPaintUtils


  • public class PlafPaintUtils
    extends Object
    Some static methods for some common painting functions.
    Author:
    Jeremy Wood
    • Field Detail

      • whites

        static final Color[] whites
        Four shades of white, each with increasing opacity.
      • blacks

        static final Color[] blacks
        Four shades of black, each with increasing opacity.
    • Constructor Detail

      • PlafPaintUtils

        public PlafPaintUtils()
    • Method Detail

      • getFocusRingColor

        public static Color getFocusRingColor()
        Returns:
        the color used to indicate when a component has focus. By default this uses the color (64,113,167), but you can override this by calling:
        UIManager.put("focusRing",customColor);
      • paintFocus

        public static void paintFocus​(Graphics2D g,
                                      Shape shape,
                                      int pixelSize)
        Paints 3 different strokes around a shape to indicate focus. The widest stroke is the most transparent, so this achieves a nice "glow" effect.

        The catch is that you have to render this underneath the shape, and the shape should be filled completely.

        Parameters:
        g - the graphics to paint to
        shape - the shape to outline
        pixelSize - the number of pixels the outline should cover.
      • paintFocus

        public static void paintFocus​(Graphics2D g,
                                      Shape shape,
                                      int pixelSize,
                                      Color focusColor,
                                      boolean changeRenderingHints)
        Paints 3 different strokes around a shape to indicate focus. The widest stroke is the most transparent, so this achieves a nice "glow" effect.

        The catch is that you have to render this underneath the shape, and the shape should be filled completely.

        Parameters:
        g - the graphics to paint to
        shape - the shape to outline
        pixelSize - the number of pixels the outline should cover.
        focusColor - the color of the focus ring to paint
        changeRenderingHints - if true then the rendering hints will be modified, if false they will be left in tact
      • drawBevel

        public static void drawBevel​(Graphics2D g,
                                     Rectangle r)
        Uses translucent shades of white and black to draw highlights and shadows around a rectangle, and then frames the rectangle with a shade of gray (120).

        This should be called to add a finishing touch on top of existing graphics.

        Parameters:
        g - the graphics to paint to.
        r - the rectangle to paint.
      • getVerticalGradient

        static Paint getVerticalGradient​(String name,
                                         int height,
                                         int y,
                                         float[] positions,
                                         Color[] colors)
        Create a vertical gradient. This gradient is stored in a table and reused throughout the rest of this session.
        Parameters:
        name - an identifying key for this gradient (used to cache it).
        height - the height of the gradient
        y - the y offset of the gradient
        positions - the fractional positions of each color (between [0,1]).
        colors - one color for each position.
        Returns:
        the vertical gradient.
      • getCheckerBoard

        public static TexturePaint getCheckerBoard​(int checkerSize)
      • getCheckerBoard

        public static TexturePaint getCheckerBoard​(int checkerSize,
                                                   Color color1,
                                                   Color color2)