Module java.desktop
Package javax.swing

Class DebugGraphics

java.lang.Object
java.awt.Graphics
javax.swing.DebugGraphics

public class DebugGraphics extends Graphics
Graphics subclass supporting graphics debugging. Overrides most methods from Graphics. DebugGraphics objects are rarely created by hand. They are most frequently created automatically when a JComponent's debugGraphicsOptions are changed using the setDebugGraphicsOptions() method.

NOTE: You must turn off double buffering to use DebugGraphics: RepaintManager repaintManager = RepaintManager.currentManager(component); repaintManager.setDoubleBufferingEnabled(false);

Since:
1.2
See Also:
JComponent.setDebugGraphicsOptions(int), RepaintManager.currentManager(java.awt.Component), RepaintManager.setDoubleBufferingEnabled(boolean)
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static int
    Show buffered operations in a separate Frame.
    static int
    Flash graphics operations.
    static int
    Log graphics operations.
    static int
    Don't debug graphics operations.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new debug graphics context that supports slowed down drawing.
    DebugGraphics​(Graphics graphics)
    Constructs a debug graphics context from an existing graphics context that supports slowed down drawing.
    DebugGraphics​(Graphics graphics, JComponent component)
    Constructs a debug graphics context from an existing graphics context that slows down drawing for the specified component.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    clearRect​(int x, int y, int width, int height)
    Overrides Graphics.clearRect.
    void
    clipRect​(int x, int y, int width, int height)
    Overrides Graphics.clipRect.
    void
    copyArea​(int x, int y, int width, int height, int destX, int destY)
    Overrides Graphics.copyArea.
    Overrides Graphics.create to return a DebugGraphics object.
    create​(int x, int y, int width, int height)
    Overrides Graphics.create to return a DebugGraphics object.
    void
    Overrides Graphics.dispose.
    void
    draw3DRect​(int x, int y, int width, int height, boolean raised)
    Overrides Graphics.draw3DRect.
    void
    drawArc​(int x, int y, int width, int height, int startAngle, int arcAngle)
    Overrides Graphics.drawArc.
    void
    drawBytes​(byte[] data, int offset, int length, int x, int y)
    Overrides Graphics.drawBytes.
    void
    drawChars​(char[] data, int offset, int length, int x, int y)
    Overrides Graphics.drawChars.
    boolean
    drawImage​(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
    Overrides Graphics.drawImage.
    boolean
    drawImage​(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
    Overrides Graphics.drawImage.
    boolean
    drawImage​(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
    Overrides Graphics.drawImage.
    boolean
    drawImage​(Image img, int x, int y, int width, int height, ImageObserver observer)
    Overrides Graphics.drawImage.
    boolean
    drawImage​(Image img, int x, int y, Color bgcolor, ImageObserver observer)
    Overrides Graphics.drawImage.
    boolean
    drawImage​(Image img, int x, int y, ImageObserver observer)
    Overrides Graphics.drawImage.
    void
    drawLine​(int x1, int y1, int x2, int y2)
    Overrides Graphics.drawLine.
    void
    drawOval​(int x, int y, int width, int height)
    Overrides Graphics.drawOval.
    void
    drawPolygon​(int[] xPoints, int[] yPoints, int nPoints)
    Overrides Graphics.drawPolygon.
    void
    drawPolyline​(int[] xPoints, int[] yPoints, int nPoints)
    Overrides Graphics.drawPolyline.
    void
    drawRect​(int x, int y, int width, int height)
    Overrides Graphics.drawRect.
    void
    drawRoundRect​(int x, int y, int width, int height, int arcWidth, int arcHeight)
    Overrides Graphics.drawRoundRect.
    void
    drawString​(String aString, int x, int y)
    Overrides Graphics.drawString.
    void
    drawString​(AttributedCharacterIterator iterator, int x, int y)
    Overrides Graphics.drawString.
    void
    fill3DRect​(int x, int y, int width, int height, boolean raised)
    Overrides Graphics.fill3DRect.
    void
    fillArc​(int x, int y, int width, int height, int startAngle, int arcAngle)
    Overrides Graphics.fillArc.
    void
    fillOval​(int x, int y, int width, int height)
    Overrides Graphics.fillOval.
    void
    fillPolygon​(int[] xPoints, int[] yPoints, int nPoints)
    Overrides Graphics.fillPolygon.
    void
    fillRect​(int x, int y, int width, int height)
    Overrides Graphics.fillRect.
    void
    fillRoundRect​(int x, int y, int width, int height, int arcWidth, int arcHeight)
    Overrides Graphics.fillRoundRect.
    static Color
    Returns the Color used to flash drawing operations.
    static int
    Returns the number of times that drawing operations will flash.
    static int
    Returns the time delay of drawing operation flashing.
    Overrides Graphics.getClip.
    Overrides Graphics.getClipBounds.
    Returns the Color used for text drawing operations.
    int
    Returns the current debugging options for this DebugGraphics.
    Returns the Font used for text drawing operations.
    Overrides Graphics.getFontMetrics.
    Overrides Graphics.getFontMetrics.
    boolean
    Returns the drawingBuffer value.
    Returns the stream to which the DebugGraphics logs drawing operations.
    void
    setClip​(int x, int y, int width, int height)
    Overrides Graphics.setClip.
    void
    setClip​(Shape clip)
    Overrides Graphics.setClip.
    void
    setColor​(Color aColor)
    Sets the color to be used for drawing and filling lines and shapes.
    void
    setDebugOptions​(int options)
    Enables/disables diagnostic information about every graphics operation.
    static void
    setFlashColor​(Color flashColor)
    Sets the Color used to flash drawing operations.
    static void
    setFlashCount​(int flashCount)
    Sets the number of times that drawing operations will flash.
    static void
    setFlashTime​(int flashTime)
    Sets the time delay of drawing operation flashing.
    void
    setFont​(Font aFont)
    Sets the Font used for text drawing operations.
    static void
    Sets the stream to which the DebugGraphics logs drawing operations.
    void
    Overrides Graphics.setPaintMode.
    void
    setXORMode​(Color aColor)
    Overrides Graphics.setXORMode.
    void
    translate​(int x, int y)
    Overrides Graphics.translate.

    Methods declared in class java.lang.Object

    clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • LOG_OPTION

      public static final int LOG_OPTION
      Log graphics operations.
      See Also:
      Constant Field Values
    • FLASH_OPTION

      public static final int FLASH_OPTION
      Flash graphics operations.
      See Also:
      Constant Field Values
    • BUFFERED_OPTION

      public static final int BUFFERED_OPTION
      Show buffered operations in a separate Frame.
      See Also:
      Constant Field Values
    • NONE_OPTION

      public static final int NONE_OPTION
      Don't debug graphics operations.
      See Also:
      Constant Field Values
  • Constructor Details

    • DebugGraphics

      public DebugGraphics()
      Constructs a new debug graphics context that supports slowed down drawing.
    • DebugGraphics

      public DebugGraphics(Graphics graphics, JComponent component)
      Constructs a debug graphics context from an existing graphics context that slows down drawing for the specified component.
      Parameters:
      graphics - the Graphics context to slow down
      component - the JComponent to draw slowly
    • DebugGraphics

      public DebugGraphics(Graphics graphics)
      Constructs a debug graphics context from an existing graphics context that supports slowed down drawing.
      Parameters:
      graphics - the Graphics context to slow down
  • Method Details

    • create

      public Graphics create()
      Overrides Graphics.create to return a DebugGraphics object.
      Specified by:
      create in class Graphics
      Returns:
      a new graphics context that is a copy of this graphics context.
    • create

      public Graphics create(int x, int y, int width, int height)
      Overrides Graphics.create to return a DebugGraphics object.
      Overrides:
      create in class Graphics
      Parameters:
      x - the x coordinate.
      y - the y coordinate.
      width - the width of the clipping rectangle.
      height - the height of the clipping rectangle.
      Returns:
      a new graphics context.
      See Also:
      Graphics.translate(int, int), Graphics.clipRect(int, int, int, int)
    • setFlashColor

      public static void setFlashColor(Color flashColor)
      Sets the Color used to flash drawing operations.
      Parameters:
      flashColor - the Color used to flash drawing operations
    • flashColor

      public static Color flashColor()
      Returns the Color used to flash drawing operations.
      Returns:
      the Color used to flash drawing operations
      See Also:
      setFlashColor(java.awt.Color)
    • setFlashTime

      public static void setFlashTime(int flashTime)
      Sets the time delay of drawing operation flashing.
      Parameters:
      flashTime - the time delay of drawing operation flashing
    • flashTime

      public static int flashTime()
      Returns the time delay of drawing operation flashing.
      Returns:
      the time delay of drawing operation flashing
      See Also:
      setFlashTime(int)
    • setFlashCount

      public static void setFlashCount(int flashCount)
      Sets the number of times that drawing operations will flash.
      Parameters:
      flashCount - number of times that drawing operations will flash
    • flashCount

      public static int flashCount()
      Returns the number of times that drawing operations will flash.
      Returns:
      the number of times that drawing operations will flash
      See Also:
      setFlashCount(int)
    • setLogStream

      public static void setLogStream(PrintStream stream)
      Sets the stream to which the DebugGraphics logs drawing operations.
      Parameters:
      stream - the stream to which the DebugGraphics logs drawing operations
    • logStream

      public static PrintStream logStream()
      Returns the stream to which the DebugGraphics logs drawing operations.
      Returns:
      the stream to which the DebugGraphics logs drawing operations
      See Also:
      setLogStream(java.io.PrintStream)
    • setFont

      public void setFont(Font aFont)
      Sets the Font used for text drawing operations.
      Specified by:
      setFont in class Graphics
      Parameters:
      aFont - the font.
      See Also:
      Graphics.getFont(), Graphics.drawString(java.lang.String, int, int), Graphics.drawBytes(byte[], int, int, int, int), Graphics.drawChars(char[], int, int, int, int)
    • getFont

      public Font getFont()
      Returns the Font used for text drawing operations.
      Specified by:
      getFont in class Graphics
      Returns:
      this graphics context's current font.
      See Also:
      setFont(java.awt.Font)
    • setColor

      public void setColor(Color aColor)
      Sets the color to be used for drawing and filling lines and shapes.
      Specified by:
      setColor in class Graphics
      Parameters:
      aColor - the new rendering color.
      See Also:
      Color, Graphics.getColor()
    • getColor

      public Color getColor()
      Returns the Color used for text drawing operations.
      Specified by:
      getColor in class Graphics
      Returns:
      this graphics context's current color.
      See Also:
      setColor(java.awt.Color)
    • getFontMetrics

      public FontMetrics getFontMetrics()
      Overrides Graphics.getFontMetrics.
      Overrides:
      getFontMetrics in class Graphics
      Returns:
      the font metrics of this graphics context's current font.
      See Also:
      Graphics.getFont(), FontMetrics, Graphics.getFontMetrics(Font)
    • getFontMetrics

      public FontMetrics getFontMetrics(Font f)
      Overrides Graphics.getFontMetrics.
      Specified by:
      getFontMetrics in class Graphics
      Parameters:
      f - the specified font
      Returns:
      the font metrics for the specified font.
      See Also:
      Graphics.getFont(), FontMetrics, Graphics.getFontMetrics()
    • translate

      public void translate(int x, int y)
      Overrides Graphics.translate.
      Specified by:
      translate in class Graphics
      Parameters:
      x - the x coordinate.
      y - the y coordinate.
    • setPaintMode

      public void setPaintMode()
      Overrides Graphics.setPaintMode.
      Specified by:
      setPaintMode in class Graphics
    • setXORMode

      public void setXORMode(Color aColor)
      Overrides Graphics.setXORMode.
      Specified by:
      setXORMode in class Graphics
      Parameters:
      aColor - the XOR alternation color
    • getClipBounds

      public Rectangle getClipBounds()
      Overrides Graphics.getClipBounds.
      Specified by:
      getClipBounds in class Graphics
      Returns:
      the bounding rectangle of the current clipping area, or null if no clip is set.
      See Also:
      Graphics.getClip(), Graphics.clipRect(int, int, int, int), Graphics.setClip(int, int, int, int), Graphics.setClip(Shape)
    • clipRect

      public void clipRect(int x, int y, int width, int height)
      Overrides Graphics.clipRect.
      Specified by:
      clipRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to intersect the clip with
      y - the y coordinate of the rectangle to intersect the clip with
      width - the width of the rectangle to intersect the clip with
      height - the height of the rectangle to intersect the clip with
      See Also:
      Graphics.setClip(int, int, int, int), Graphics.setClip(Shape)
    • setClip

      public void setClip(int x, int y, int width, int height)
      Overrides Graphics.setClip.
      Specified by:
      setClip in class Graphics
      Parameters:
      x - the x coordinate of the new clip rectangle.
      y - the y coordinate of the new clip rectangle.
      width - the width of the new clip rectangle.
      height - the height of the new clip rectangle.
      See Also:
      Graphics.clipRect(int, int, int, int), Graphics.setClip(Shape), Graphics.getClip()
    • getClip

      public Shape getClip()
      Overrides Graphics.getClip.
      Specified by:
      getClip in class Graphics
      Returns:
      a Shape object representing the current clipping area, or null if no clip is set.
      See Also:
      Graphics.getClipBounds(), Graphics.clipRect(int, int, int, int), Graphics.setClip(int, int, int, int), Graphics.setClip(Shape)
    • setClip

      public void setClip(Shape clip)
      Overrides Graphics.setClip.
      Specified by:
      setClip in class Graphics
      Parameters:
      clip - the Shape to use to set the clip
      See Also:
      Graphics.getClip(), Graphics.clipRect(int, int, int, int), Graphics.setClip(int, int, int, int)
    • drawRect

      public void drawRect(int x, int y, int width, int height)
      Overrides Graphics.drawRect.
      Overrides:
      drawRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be drawn.
      y - the y coordinate of the rectangle to be drawn.
      width - the width of the rectangle to be drawn.
      height - the height of the rectangle to be drawn.
      See Also:
      Graphics.fillRect(int, int, int, int), Graphics.clearRect(int, int, int, int)
    • fillRect

      public void fillRect(int x, int y, int width, int height)
      Overrides Graphics.fillRect.
      Specified by:
      fillRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be filled.
      y - the y coordinate of the rectangle to be filled.
      width - the width of the rectangle to be filled.
      height - the height of the rectangle to be filled.
      See Also:
      Graphics.clearRect(int, int, int, int), Graphics.drawRect(int, int, int, int)
    • clearRect

      public void clearRect(int x, int y, int width, int height)
      Overrides Graphics.clearRect.
      Specified by:
      clearRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to clear.
      y - the y coordinate of the rectangle to clear.
      width - the width of the rectangle to clear.
      height - the height of the rectangle to clear.
      See Also:
      Graphics.fillRect(int, int, int, int), Graphics.drawRect(int, int, int, int), Graphics.setColor(java.awt.Color), Graphics.setPaintMode(), Graphics.setXORMode(java.awt.Color)
    • drawRoundRect

      public void drawRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
      Overrides Graphics.drawRoundRect.
      Specified by:
      drawRoundRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be drawn.
      y - the y coordinate of the rectangle to be drawn.
      width - the width of the rectangle to be drawn.
      height - the height of the rectangle to be drawn.
      arcWidth - the horizontal diameter of the arc at the four corners.
      arcHeight - the vertical diameter of the arc at the four corners.
      See Also:
      Graphics.fillRoundRect(int, int, int, int, int, int)
    • fillRoundRect

      public void fillRoundRect(int x, int y, int width, int height, int arcWidth, int arcHeight)
      Overrides Graphics.fillRoundRect.
      Specified by:
      fillRoundRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be filled.
      y - the y coordinate of the rectangle to be filled.
      width - the width of the rectangle to be filled.
      height - the height of the rectangle to be filled.
      arcWidth - the horizontal diameter of the arc at the four corners.
      arcHeight - the vertical diameter of the arc at the four corners.
      See Also:
      Graphics.drawRoundRect(int, int, int, int, int, int)
    • drawLine

      public void drawLine(int x1, int y1, int x2, int y2)
      Overrides Graphics.drawLine.
      Specified by:
      drawLine in class Graphics
      Parameters:
      x1 - the first point's x coordinate.
      y1 - the first point's y coordinate.
      x2 - the second point's x coordinate.
      y2 - the second point's y coordinate.
    • draw3DRect

      public void draw3DRect(int x, int y, int width, int height, boolean raised)
      Overrides Graphics.draw3DRect.
      Overrides:
      draw3DRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be drawn.
      y - the y coordinate of the rectangle to be drawn.
      width - the width of the rectangle to be drawn.
      height - the height of the rectangle to be drawn.
      raised - a boolean that determines whether the rectangle appears to be raised above the surface or sunk into the surface.
      See Also:
      Graphics.fill3DRect(int, int, int, int, boolean)
    • fill3DRect

      public void fill3DRect(int x, int y, int width, int height, boolean raised)
      Overrides Graphics.fill3DRect.
      Overrides:
      fill3DRect in class Graphics
      Parameters:
      x - the x coordinate of the rectangle to be filled.
      y - the y coordinate of the rectangle to be filled.
      width - the width of the rectangle to be filled.
      height - the height of the rectangle to be filled.
      raised - a boolean value that determines whether the rectangle appears to be raised above the surface or etched into the surface.
      See Also:
      Graphics.draw3DRect(int, int, int, int, boolean)
    • drawOval

      public void drawOval(int x, int y, int width, int height)
      Overrides Graphics.drawOval.
      Specified by:
      drawOval in class Graphics
      Parameters:
      x - the x coordinate of the upper left corner of the oval to be drawn.
      y - the y coordinate of the upper left corner of the oval to be drawn.
      width - the width of the oval to be drawn.
      height - the height of the oval to be drawn.
      See Also:
      Graphics.fillOval(int, int, int, int)
    • fillOval

      public void fillOval(int x, int y, int width, int height)
      Overrides Graphics.fillOval.
      Specified by:
      fillOval in class Graphics
      Parameters:
      x - the x coordinate of the upper left corner of the oval to be filled.
      y - the y coordinate of the upper left corner of the oval to be filled.
      width - the width of the oval to be filled.
      height - the height of the oval to be filled.
      See Also:
      Graphics.drawOval(int, int, int, int)
    • drawArc

      public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)
      Overrides Graphics.drawArc.
      Specified by:
      drawArc in class Graphics
      Parameters:
      x - the x coordinate of the upper-left corner of the arc to be drawn.
      y - the y coordinate of the upper-left corner of the arc to be drawn.
      width - the width of the arc to be drawn.
      height - the height of the arc to be drawn.
      startAngle - the beginning angle.
      arcAngle - the angular extent of the arc, relative to the start angle.
      See Also:
      Graphics.fillArc(int, int, int, int, int, int)
    • fillArc

      public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
      Overrides Graphics.fillArc.
      Specified by:
      fillArc in class Graphics
      Parameters:
      x - the x coordinate of the upper-left corner of the arc to be filled.
      y - the y coordinate of the upper-left corner of the arc to be filled.
      width - the width of the arc to be filled.
      height - the height of the arc to be filled.
      startAngle - the beginning angle.
      arcAngle - the angular extent of the arc, relative to the start angle.
      See Also:
      Graphics.drawArc(int, int, int, int, int, int)
    • drawPolyline

      public void drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
      Overrides Graphics.drawPolyline.
      Specified by:
      drawPolyline in class Graphics
      Parameters:
      xPoints - an array of x points
      yPoints - an array of y points
      nPoints - the total number of points
      See Also:
      Graphics.drawPolygon(int[], int[], int)
    • drawPolygon

      public void drawPolygon(int[] xPoints, int[] yPoints, int nPoints)
      Overrides Graphics.drawPolygon.
      Specified by:
      drawPolygon in class Graphics
      Parameters:
      xPoints - a an array of x coordinates.
      yPoints - a an array of y coordinates.
      nPoints - a the total number of points.
      See Also:
      Graphics.fillPolygon(int[], int[], int), Graphics.drawPolyline(int[], int[], int)
    • fillPolygon

      public void fillPolygon(int[] xPoints, int[] yPoints, int nPoints)
      Overrides Graphics.fillPolygon.
      Specified by:
      fillPolygon in class Graphics
      Parameters:
      xPoints - a an array of x coordinates.
      yPoints - a an array of y coordinates.
      nPoints - a the total number of points.
      See Also:
      Graphics.drawPolygon(int[], int[], int)
    • drawString

      public void drawString(String aString, int x, int y)
      Overrides Graphics.drawString.
      Specified by:
      drawString in class Graphics
      Parameters:
      aString - the string to be drawn.
      x - the x coordinate.
      y - the y coordinate.
      See Also:
      Graphics.drawBytes(byte[], int, int, int, int), Graphics.drawChars(char[], int, int, int, int)
    • drawString

      public void drawString(AttributedCharacterIterator iterator, int x, int y)
      Overrides Graphics.drawString.
      Specified by:
      drawString in class Graphics
      Parameters:
      iterator - the iterator whose text is to be drawn
      x - the x coordinate.
      y - the y coordinate.
      See Also:
      Graphics.drawBytes(byte[], int, int, int, int), Graphics.drawChars(char[], int, int, int, int)
    • drawBytes

      public void drawBytes(byte[] data, int offset, int length, int x, int y)
      Overrides Graphics.drawBytes.
      Overrides:
      drawBytes in class Graphics
      Parameters:
      data - the data to be drawn
      offset - the start offset in the data
      length - the number of bytes that are drawn
      x - the x coordinate of the baseline of the text
      y - the y coordinate of the baseline of the text
      See Also:
      Graphics.drawChars(char[], int, int, int, int), Graphics.drawString(java.lang.String, int, int)
    • drawChars

      public void drawChars(char[] data, int offset, int length, int x, int y)
      Overrides Graphics.drawChars.
      Overrides:
      drawChars in class Graphics
      Parameters:
      data - the array of characters to be drawn
      offset - the start offset in the data
      length - the number of characters to be drawn
      x - the x coordinate of the baseline of the text
      y - the y coordinate of the baseline of the text
      See Also:
      Graphics.drawBytes(byte[], int, int, int, int), Graphics.drawString(java.lang.String, int, int)
    • drawImage

      public boolean drawImage(Image img, int x, int y, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      x - the x coordinate.
      y - the y coordinate.
      observer - object to be notified as more of the image is converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • drawImage

      public boolean drawImage(Image img, int x, int y, int width, int height, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      x - the x coordinate.
      y - the y coordinate.
      width - the width of the rectangle.
      height - the height of the rectangle.
      observer - object to be notified as more of the image is converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • drawImage

      public boolean drawImage(Image img, int x, int y, Color bgcolor, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      x - the x coordinate.
      y - the y coordinate.
      bgcolor - the background color to paint under the non-opaque portions of the image.
      observer - object to be notified as more of the image is converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • drawImage

      public boolean drawImage(Image img, int x, int y, int width, int height, Color bgcolor, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      x - the x coordinate.
      y - the y coordinate.
      width - the width of the rectangle.
      height - the height of the rectangle.
      bgcolor - the background color to paint under the non-opaque portions of the image.
      observer - object to be notified as more of the image is converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • drawImage

      public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      dx1 - the x coordinate of the first corner of the destination rectangle.
      dy1 - the y coordinate of the first corner of the destination rectangle.
      dx2 - the x coordinate of the second corner of the destination rectangle.
      dy2 - the y coordinate of the second corner of the destination rectangle.
      sx1 - the x coordinate of the first corner of the source rectangle.
      sy1 - the y coordinate of the first corner of the source rectangle.
      sx2 - the x coordinate of the second corner of the source rectangle.
      sy2 - the y coordinate of the second corner of the source rectangle.
      observer - object to be notified as more of the image is scaled and converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • drawImage

      public boolean drawImage(Image img, int dx1, int dy1, int dx2, int dy2, int sx1, int sy1, int sx2, int sy2, Color bgcolor, ImageObserver observer)
      Overrides Graphics.drawImage.
      Specified by:
      drawImage in class Graphics
      Parameters:
      img - the specified image to be drawn. This method does nothing if img is null.
      dx1 - the x coordinate of the first corner of the destination rectangle.
      dy1 - the y coordinate of the first corner of the destination rectangle.
      dx2 - the x coordinate of the second corner of the destination rectangle.
      dy2 - the y coordinate of the second corner of the destination rectangle.
      sx1 - the x coordinate of the first corner of the source rectangle.
      sy1 - the y coordinate of the first corner of the source rectangle.
      sx2 - the x coordinate of the second corner of the source rectangle.
      sy2 - the y coordinate of the second corner of the source rectangle.
      bgcolor - the background color to paint under the non-opaque portions of the image.
      observer - object to be notified as more of the image is scaled and converted.
      Returns:
      false if the image pixels are still changing; true otherwise.
      See Also:
      Image, ImageObserver, ImageObserver.imageUpdate(java.awt.Image, int, int, int, int, int)
    • copyArea

      public void copyArea(int x, int y, int width, int height, int destX, int destY)
      Overrides Graphics.copyArea.
      Specified by:
      copyArea in class Graphics
      Parameters:
      x - the x coordinate of the source rectangle.
      y - the y coordinate of the source rectangle.
      width - the width of the source rectangle.
      height - the height of the source rectangle.
      destX - the horizontal distance to copy the pixels.
      destY - the vertical distance to copy the pixels.
    • dispose

      public void dispose()
      Overrides Graphics.dispose.
      Specified by:
      dispose in class Graphics
      See Also:
      Graphics.finalize(), Component.paint(java.awt.Graphics), Component.update(java.awt.Graphics), Component.getGraphics(), Graphics.create()
    • isDrawingBuffer

      public boolean isDrawingBuffer()
      Returns the drawingBuffer value.
      Returns:
      true if this object is drawing from a Buffer
    • setDebugOptions

      public void setDebugOptions(int options)
      Enables/disables diagnostic information about every graphics operation. The value of options indicates how this information should be displayed. LOG_OPTION causes a text message to be printed. FLASH_OPTION causes the drawing to flash several times. BUFFERED_OPTION creates a new Frame that shows each operation on an offscreen buffer. The value of options is bitwise OR'd into the current value. To disable debugging use NONE_OPTION.
      Parameters:
      options - indicates how diagnostic information should be displayed
    • getDebugOptions

      public int getDebugOptions()
      Returns the current debugging options for this DebugGraphics.
      Returns:
      the current debugging options for this DebugGraphics
      See Also:
      setDebugOptions(int)