org.eclipse.swt.graphics
Class GC
java.lang.Object
org.eclipse.swt.graphics.GC
- public final class GC
- extends Object
Class GC is where all of the drawing capabilities that are
supported by SWT are located. Instances are used to draw on either an
Image, a Control, or directly on a Display.
- Styles:
- LEFT_TO_RIGHT, RIGHT_TO_LEFT
The SWT drawing coordinate system is the two-dimensional space with the origin
(0,0) at the top left corner of the drawing area and with (x,y) values increasing
to the right and downward respectively.
Application code must explicitly invoke the GC.dispose()
method to release the operating system resources managed by each instance
when those instances are no longer required. This is particularly
important on Windows95 and Windows98 where the operating system has a limited
number of device contexts available.
Note: Only one of LEFT_TO_RIGHT and RIGHT_TO_LEFT may be specified.
- See Also:
- PaintEvent
Field Summary
|
int
| handle
the handle to the OS device context
(Warning: This field is platform dependent)
|
Constructor Summary
|
GC(Drawable drawable)
Constructs a new instance of this class which has been
configured to draw on the specified drawable.
|
GC(Drawable drawable,
int style)
Constructs a new instance of this class which has been
configured to draw on the specified drawable.
|
Method Summary
|
void
| copyArea(Image image,
int x,
int y)
Copies a rectangular area of the receiver at the specified
position into the image, which must be of type SWT.BITMAP.
|
void
| copyArea(int srcX,
int srcY,
int width,
int height,
int destX,
int destY)
Copies a rectangular area of the receiver at the source
position onto the receiver at the destination position.
|
void
| dispose()
Disposes of the operating system resources associated with
the graphics context.
|
void
| drawArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
Draws the outline of a circular or elliptical arc
within the specified rectangular area.
|
void
| drawFocus(int x,
int y,
int width,
int height)
Draws a rectangle, based on the specified arguments, which has
the appearance of the platform's focus rectangle if the
platform supports such a notion, and otherwise draws a simple
rectangle in the receiver's foreground color.
|
void
| drawImage(Image image,
int x,
int y)
Draws the given image in the receiver at the specified
coordinates.
|
void
| drawImage(Image image,
int srcX,
int srcY,
int srcWidth,
int srcHeight,
int destX,
int destY,
int destWidth,
int destHeight)
Copies a rectangular area from the source image into a (potentially
different sized) rectangular area in the receiver.
|
void
| drawLine(int x1,
int y1,
int x2,
int y2)
Draws a line, using the foreground color, between the points
(x1, y1) and (x2, y2).
|
void
| drawOval(int x,
int y,
int width,
int height)
Draws the outline of an oval, using the foreground color,
within the specified rectangular area.
|
void
| drawPoint(int x,
int y)
Draws a pixel, using the foreground color, at the specified
point (x, y).
|
void
| drawPolygon(int[] pointArray)
Draws the closed polygon which is defined by the specified array
of integer coordinates, using the receiver's foreground color.
|
void
| drawPolyline(int[] pointArray)
Draws the polyline which is defined by the specified array
of integer coordinates, using the receiver's foreground color.
|
void
| drawRectangle(int x,
int y,
int width,
int height)
Draws the outline of the rectangle specified by the arguments,
using the receiver's foreground color.
|
void
| drawRectangle(Rectangle rect)
Draws the outline of the specified rectangle, using the receiver's
foreground color.
|
void
| drawRoundRectangle(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
Draws the outline of the round-cornered rectangle specified by
the arguments, using the receiver's foreground color.
|
void
| drawString(String string,
int x,
int y)
Draws the given string, using the receiver's current font and
foreground color.
|
void
| drawString(String string,
int x,
int y,
boolean isTransparent)
Draws the given string, using the receiver's current font and
foreground color.
|
void
| drawText(String string,
int x,
int y)
Draws the given string, using the receiver's current font and
foreground color.
|
void
| drawText(String string,
int x,
int y,
boolean isTransparent)
Draws the given string, using the receiver's current font and
foreground color.
|
void
| drawText(String string,
int x,
int y,
int flags)
Draws the given string, using the receiver's current font and
foreground color.
|
boolean
| equals(Object object)
Compares the argument to the receiver, and returns true
if they represent the same object using a class
specific comparison.
|
void
| fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
Fills the interior of a circular or elliptical arc within
the specified rectangular area, with the receiver's background
color.
|
void
| fillGradientRectangle(int x,
int y,
int width,
int height,
boolean vertical)
Fills the interior of the specified rectangle with a gradient
sweeping from left to right or top to bottom progressing
from the receiver's foreground color to its background color.
|
void
| fillOval(int x,
int y,
int width,
int height)
Fills the interior of an oval, within the specified
rectangular area, with the receiver's background
color.
|
void
| fillPolygon(int[] pointArray)
Fills the interior of the closed polygon which is defined by the
specified array of integer coordinates, using the receiver's
background color.
|
void
| fillRectangle(int x,
int y,
int width,
int height)
Fills the interior of the rectangle specified by the arguments,
using the receiver's background color.
|
void
| fillRectangle(Rectangle rect)
Fills the interior of the specified rectangle, using the receiver's
background color.
|
void
| fillRoundRectangle(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
Fills the interior of the round-cornered rectangle specified by
the arguments, using the receiver's background color.
|
int
| getAdvanceWidth(char ch)
Returns the advance width of the specified character in
the font which is currently selected into the receiver.
|
Color
| getBackground()
Returns the background color.
|
int
| getCharWidth(char ch)
Returns the width of the specified character in the font
selected into the receiver.
|
Rectangle
| getClipping()
Returns the bounding rectangle of the receiver's clipping
region.
|
void
| getClipping(Region region)
Sets the region managed by the argument to the current
clipping region of the receiver.
|
Font
| getFont()
Returns the font currently being used by the receiver
to draw and measure text.
|
FontMetrics
| getFontMetrics()
Returns a FontMetrics which contains information
about the font currently being used by the receiver
to draw and measure text.
|
Color
| getForeground()
Returns the receiver's foreground color.
|
int
| getLineStyle()
Returns the receiver's line style, which will be one
of the constants SWT.LINE_SOLID, SWT.LINE_DASH,
SWT.LINE_DOT, SWT.LINE_DASHDOT or
SWT.LINE_DASHDOTDOT.
|
int
| getLineWidth()
Returns the width that will be used when drawing lines
for all of the figure drawing operations (that is,
drawLine, drawRectangle,
drawPolyline, and so forth.
|
int
| getStyle()
Returns the receiver's style information.
|
boolean
| getXORMode()
Returns true if this GC is drawing in the mode
where the resulting color in the destination is the
exclusive or of the color values in the source
and the destination, and false if it is
drawing in the mode where the destination color is being
replaced with the source color value.
|
int
| hashCode()
Returns an integer hash code for the receiver.
|
boolean
| isClipped()
Returns true if the receiver has a clipping
region set into it, and false otherwise.
|
boolean
| isDisposed()
Returns true if the GC has been disposed,
and false otherwise.
|
void
| setBackground(Color color)
Sets the background color.
|
void
| setClipping(int x,
int y,
int width,
int height)
Sets the area of the receiver which can be changed
by drawing operations to the rectangular area specified
by the arguments.
|
void
| setClipping(Rectangle rect)
Sets the area of the receiver which can be changed
by drawing operations to the rectangular area specified
by the argument.
|
void
| setClipping(Region region)
Sets the area of the receiver which can be changed
by drawing operations to the region specified
by the argument.
|
void
| setFont(Font font)
Sets the font which will be used by the receiver
to draw and measure text to the argument.
|
void
| setForeground(Color color)
Sets the foreground color.
|
void
| setLineStyle(int lineStyle)
Sets the receiver's line style to the argument, which must be one
of the constants SWT.LINE_SOLID, SWT.LINE_DASH,
SWT.LINE_DOT, SWT.LINE_DASHDOT or
SWT.LINE_DASHDOTDOT.
|
void
| setLineWidth(int lineWidth)
Sets the width that will be used when drawing lines
for all of the figure drawing operations (that is,
drawLine, drawRectangle,
drawPolyline, and so forth.
|
void
| setXORMode(boolean xor)
If the argument is true, puts the receiver
in a drawing mode where the resulting color in the destination
is the exclusive or of the color values in the source
and the destination, and if the argument is false,
puts the receiver in a drawing mode where the destination color
is replaced with the source color value.
|
Point
| stringExtent(String string)
Returns the extent of the given string.
|
Point
| textExtent(String string)
Returns the extent of the given string.
|
Point
| textExtent(String string,
int flags)
Returns the extent of the given string.
|
String
| toString()
Returns a string containing a concise, human-readable
description of the receiver.
|
static GC
| win32_new(Drawable drawable,
GCData data)
Invokes platform specific functionality to allocate a new graphics context.
|
static GC
| win32_new(int hDC,
GCData data)
Invokes platform specific functionality to wrap a graphics context.
|
handle
public int handle
- the handle to the OS device context
(Warning: This field is platform dependent)
GC
public GC(Drawable drawable)
- Constructs a new instance of this class which has been
configured to draw on the specified drawable. Sets the
foreground and background color in the GC to match those
in the drawable.
You must dispose the graphics context when it is no longer required.
- Parameters:
- drawable - the drawable to draw on
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the drawable is null
- ERROR_NULL_ARGUMENT - if there is no current device
- ERROR_INVALID_ARGUMENT
- if the drawable is an image that is not a bitmap or an icon
- if the drawable is an image or printer that is already selected
into another graphics context
- SWTError -
- ERROR_NO_HANDLES if a handle could not be obtained for gc creation
GC
public GC(Drawable drawable,
int style)
- Constructs a new instance of this class which has been
configured to draw on the specified drawable. Sets the
foreground and background color in the GC to match those
in the drawable.
You must dispose the graphics context when it is no longer required.
- Parameters:
- drawable - the drawable to draw on
- style - the style of GC to construct
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the drawable is null
- ERROR_NULL_ARGUMENT - if there is no current device
- ERROR_INVALID_ARGUMENT
- if the drawable is an image that is not a bitmap or an icon
- if the drawable is an image or printer that is already selected
into another graphics context
- SWTError -
- ERROR_NO_HANDLES if a handle could not be obtained for gc creation
- Since:
- 2.1.2
copyArea
public void copyArea(Image image,
int x,
int y)
- Copies a rectangular area of the receiver at the specified
position into the image, which must be of type SWT.BITMAP.
- Parameters:
- image - the image to copy into
- x - the x coordinate in the receiver of the area to be copied
- y - the y coordinate in the receiver of the area to be copied
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the image is null
- ERROR_INVALID_ARGUMENT - if the image is not a bitmap or has been disposed
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
copyArea
public void copyArea(int srcX,
int srcY,
int width,
int height,
int destX,
int destY)
- Copies a rectangular area of the receiver at the source
position onto the receiver at the destination position.
- Parameters:
- srcX - the x coordinate in the receiver of the area to be copied
- srcY - the y coordinate in the receiver of the area to be copied
- width - the width of the area to copy
- height - the height of the area to copy
- destX - the x coordinate in the receiver of the area to copy to
- destY - the y coordinate in the receiver of the area to copy to
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
dispose
public void dispose()
- Disposes of the operating system resources associated with
the graphics context. Applications must dispose of all GCs
which they allocate.
drawArc
public void drawArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
- Draws the outline of a circular or elliptical arc
within the specified rectangular area.
The resulting arc begins at startAngle and extends
for arcAngle degrees, using the current color.
Angles are interpreted such that 0 degrees is at the 3 o'clock
position. A positive value indicates a counter-clockwise rotation
while a negative value indicates a clockwise rotation.
The center of the arc is the center of the rectangle whose origin
is (x, y) and whose size is specified by the
width and height arguments.
The resulting arc covers an area width + 1 pixels wide
by height + 1 pixels tall.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawFocus
public void drawFocus(int x,
int y,
int width,
int height)
- Draws a rectangle, based on the specified arguments, which has
the appearance of the platform's focus rectangle if the
platform supports such a notion, and otherwise draws a simple
rectangle in the receiver's foreground color.
- Parameters:
- x - the x coordinate of the rectangle
- y - the y coordinate of the rectangle
- width - the width of the rectangle
- height - the height of the rectangle
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawRectangle(int, int, int, int)
drawImage
public void drawImage(Image image,
int x,
int y)
- Draws the given image in the receiver at the specified
coordinates.
- Parameters:
- image - the image to draw
- x - the x coordinate of where to draw
- y - the y coordinate of where to draw
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the image is null
- ERROR_INVALID_ARGUMENT - if the image has been disposed
- ERROR_INVALID_ARGUMENT - if the given coordinates are outside the bounds of the image
- SWTError -
- ERROR_NO_HANDLES - if no handles are available to perform the operation
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawImage
public void drawImage(Image image,
int srcX,
int srcY,
int srcWidth,
int srcHeight,
int destX,
int destY,
int destWidth,
int destHeight)
- Copies a rectangular area from the source image into a (potentially
different sized) rectangular area in the receiver. If the source
and destination areas are of differing sizes, then the source
area will be stretched or shrunk to fit the destination area
as it is copied. The copy fails if any part of the source rectangle
lies outside the bounds of the source image, or if any of the width
or height arguments are negative.
- Parameters:
- image - the source image
- srcX - the x coordinate in the source image to copy from
- srcY - the y coordinate in the source image to copy from
- srcWidth - the width in pixels to copy from the source
- srcHeight - the height in pixels to copy from the source
- destX - the x coordinate in the destination to copy to
- destY - the y coordinate in the destination to copy to
- destWidth - the width in pixels of the destination rectangle
- destHeight - the height in pixels of the destination rectangle
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the image is null
- ERROR_INVALID_ARGUMENT - if the image has been disposed
- ERROR_INVALID_ARGUMENT - if any of the width or height arguments are negative.
- ERROR_INVALID_ARGUMENT - if the source rectangle is not contained within the bounds of the source image
- SWTError -
- ERROR_NO_HANDLES - if no handles are available to perform the operation
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawLine
public void drawLine(int x1,
int y1,
int x2,
int y2)
- Draws a line, using the foreground color, between the points
(x1, y1) and (x2, y2).
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawOval
public void drawOval(int x,
int y,
int width,
int height)
- Draws the outline of an oval, using the foreground color,
within the specified rectangular area.
The result is a circle or ellipse that fits within the
rectangle specified by the x, y,
width, and height arguments.
The oval covers an area that is width + 1
pixels wide and height + 1 pixels tall.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawPoint
public void drawPoint(int x,
int y)
- Draws a pixel, using the foreground color, at the specified
point (x, y).
Note that the receiver's line attributes do not affect this
operation.
- Parameters:
- x - the point's x coordinate
- y - the point's y coordinate
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
drawPolygon
public void drawPolygon(int[] pointArray)
- Draws the closed polygon which is defined by the specified array
of integer coordinates, using the receiver's foreground color. The array
contains alternating x and y values which are considered to represent
points which are the vertices of the polygon. Lines are drawn between
each consecutive pair, and between the first pair and last pair in the
array.
- Parameters:
- pointArray - an array of alternating x and y values which are the vertices of the polygon
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT if pointArray is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawPolyline
public void drawPolyline(int[] pointArray)
- Draws the polyline which is defined by the specified array
of integer coordinates, using the receiver's foreground color. The array
contains alternating x and y values which are considered to represent
points which are the corners of the polyline. Lines are drawn between
each consecutive pair, but not between the first pair and last pair in
the array.
- Parameters:
- pointArray - an array of alternating x and y values which are the corners of the polyline
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the point array is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawRectangle
public void drawRectangle(int x,
int y,
int width,
int height)
- Draws the outline of the rectangle specified by the arguments,
using the receiver's foreground color. The left and right edges
of the rectangle are at x and x + width.
The top and bottom edges are at y and y + height.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawRectangle
public void drawRectangle(Rectangle rect)
- Draws the outline of the specified rectangle, using the receiver's
foreground color. The left and right edges of the rectangle are at
rect.x and rect.x + rect.width. The top
and bottom edges are at rect.y and
rect.y + rect.height.
- Parameters:
- rect - the rectangle to draw
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the rectangle is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawRoundRectangle
public void drawRoundRectangle(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
- Draws the outline of the round-cornered rectangle specified by
the arguments, using the receiver's foreground color. The left and
right edges of the rectangle are at x and x + width.
The top and bottom edges are at y and y + height.
The roundness of the corners is specified by the
arcWidth and arcHeight arguments.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawString
public void drawString(String string,
int x,
int y)
- Draws the given string, using the receiver's current font and
foreground color. No tab expansion or carriage return processing
will be performed. The background of the rectangular area where
the string is being drawn will be filled with the receiver's
background color.
- Parameters:
- string - the string to be drawn
- x - the x coordinate of the top left corner of the rectangular area where the string is to be drawn
- y - the y coordinate of the top left corner of the rectangular area where the string is to be drawn
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawString
public void drawString(String string,
int x,
int y,
boolean isTransparent)
- Draws the given string, using the receiver's current font and
foreground color. No tab expansion or carriage return processing
will be performed. If isTransparent is true,
then the background of the rectangular area where the string is being
drawn will not be modified, otherwise it will be filled with the
receiver's background color.
- Parameters:
- string - the string to be drawn
- x - the x coordinate of the top left corner of the rectangular area where the string is to be drawn
- y - the y coordinate of the top left corner of the rectangular area where the string is to be drawn
- isTransparent - if true the background will be transparent, otherwise it will be opaque
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawText
public void drawText(String string,
int x,
int y)
- Draws the given string, using the receiver's current font and
foreground color. Tab expansion and carriage return processing
are performed. The background of the rectangular area where
the text is being drawn will be filled with the receiver's
background color.
- Parameters:
- string - the string to be drawn
- x - the x coordinate of the top left corner of the rectangular area where the text is to be drawn
- y - the y coordinate of the top left corner of the rectangular area where the text is to be drawn
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawText
public void drawText(String string,
int x,
int y,
boolean isTransparent)
- Draws the given string, using the receiver's current font and
foreground color. Tab expansion and carriage return processing
are performed. If isTransparent is true,
then the background of the rectangular area where the text is being
drawn will not be modified, otherwise it will be filled with the
receiver's background color.
- Parameters:
- string - the string to be drawn
- x - the x coordinate of the top left corner of the rectangular area where the text is to be drawn
- y - the y coordinate of the top left corner of the rectangular area where the text is to be drawn
- isTransparent - if true the background will be transparent, otherwise it will be opaque
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
drawText
public void drawText(String string,
int x,
int y,
int flags)
- Draws the given string, using the receiver's current font and
foreground color. Tab expansion, line delimiter and mnemonic
processing are performed according to the specified flags. If
flags includes DRAW_TRANSPARENT,
then the background of the rectangular area where the text is being
drawn will not be modified, otherwise it will be filled with the
receiver's background color.
The parameter flags may be a combination of:
- DRAW_DELIMITER
- draw multiple lines
- DRAW_TAB
- expand tabs
- DRAW_MNEMONIC
- underline the mnemonic character
- DRAW_TRANSPARENT
- transparent background
- Parameters:
- string - the string to be drawn
- x - the x coordinate of the top left corner of the rectangular area where the text is to be drawn
- y - the y coordinate of the top left corner of the rectangular area where the text is to be drawn
- flags - the flags specifing how to process the text
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
equals
public boolean equals(Object object)
- Compares the argument to the receiver, and returns true
if they represent the same object using a class
specific comparison.
- Parameters:
- object - the object to compare with this object
- Returns:
- true if the object is the same as this object and false otherwise
- See Also:
- hashCode()
fillArc
public void fillArc(int x,
int y,
int width,
int height,
int startAngle,
int arcAngle)
- Fills the interior of a circular or elliptical arc within
the specified rectangular area, with the receiver's background
color.
The resulting arc begins at startAngle and extends
for arcAngle degrees, using the current color.
Angles are interpreted such that 0 degrees is at the 3 o'clock
position. A positive value indicates a counter-clockwise rotation
while a negative value indicates a clockwise rotation.
The center of the arc is the center of the rectangle whose origin
is (x, y) and whose size is specified by the
width and height arguments.
The resulting arc covers an area width + 1 pixels wide
by height + 1 pixels tall.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawArc(int, int, int, int, int, int)
fillGradientRectangle
public void fillGradientRectangle(int x,
int y,
int width,
int height,
boolean vertical)
- Fills the interior of the specified rectangle with a gradient
sweeping from left to right or top to bottom progressing
from the receiver's foreground color to its background color.
- 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, may be negative
(inverts direction of gradient if horizontal)
- height - the height of the rectangle to be filled, may be negative
(inverts direction of gradient if vertical)
- vertical - if true sweeps from top to bottom, else
sweeps from left to right
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawRectangle(int, int, int, int)
fillOval
public void fillOval(int x,
int y,
int width,
int height)
- Fills the interior of an oval, within the specified
rectangular area, with the receiver's background
color.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawOval(int, int, int, int)
fillPolygon
public void fillPolygon(int[] pointArray)
- Fills the interior of the closed polygon which is defined by the
specified array of integer coordinates, using the receiver's
background color. The array contains alternating x and y values
which are considered to represent points which are the vertices of
the polygon. Lines are drawn between each consecutive pair, and
between the first pair and last pair in the array.
- Parameters:
- pointArray - an array of alternating x and y values which are the vertices of the polygon
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT if pointArray is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawPolygon(int[])
fillRectangle
public void fillRectangle(int x,
int y,
int width,
int height)
- Fills the interior of the rectangle specified by the arguments,
using the receiver's background color.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawRectangle(int, int, int, int)
fillRectangle
public void fillRectangle(Rectangle rect)
- Fills the interior of the specified rectangle, using the receiver's
background color.
- Parameters:
- rect - the rectangle to be filled
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the rectangle is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawRectangle(int, int, int, int)
fillRoundRectangle
public void fillRoundRectangle(int x,
int y,
int width,
int height,
int arcWidth,
int arcHeight)
- Fills the interior of the round-cornered rectangle specified by
the arguments, using the receiver's background color.
- 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
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- drawRoundRectangle(int, int, int, int, int, int)
getAdvanceWidth
public int getAdvanceWidth(char ch)
- Returns the advance width of the specified character in
the font which is currently selected into the receiver.
The advance width is defined as the horizontal distance the cursor
should move after printing the character in the selected font.
- Parameters:
- ch - the character to measure
- Returns:
- the distance in the x direction to move past the character before painting the next
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getBackground
public Color getBackground()
- Returns the background color.
- Returns:
- the receiver's background color
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getCharWidth
public int getCharWidth(char ch)
- Returns the width of the specified character in the font
selected into the receiver.
The width is defined as the space taken up by the actual
character, not including the leading and tailing whitespace
or overhang.
- Parameters:
- ch - the character to measure
- Returns:
- the width of the character
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getClipping
public Rectangle getClipping()
- Returns the bounding rectangle of the receiver's clipping
region. If no clipping region is set, the return value
will be a rectangle which covers the entire bounds of the
object the receiver is drawing on.
- Returns:
- the bounding rectangle of the clipping region
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getClipping
public void getClipping(Region region)
- Sets the region managed by the argument to the current
clipping region of the receiver.
- Parameters:
- region - the region to fill with the clipping region
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the region is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getFont
public Font getFont()
- Returns the font currently being used by the receiver
to draw and measure text.
- Returns:
- the receiver's font
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getFontMetrics
public FontMetrics getFontMetrics()
- Returns a FontMetrics which contains information
about the font currently being used by the receiver
to draw and measure text.
- Returns:
- font metrics for the receiver's font
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getForeground
public Color getForeground()
- Returns the receiver's foreground color.
- Returns:
- the color used for drawing foreground things
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getLineStyle
public int getLineStyle()
- Returns the receiver's line style, which will be one
of the constants SWT.LINE_SOLID, SWT.LINE_DASH,
SWT.LINE_DOT, SWT.LINE_DASHDOT or
SWT.LINE_DASHDOTDOT.
- Returns:
- the style used for drawing lines
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getLineWidth
public int getLineWidth()
- Returns the width that will be used when drawing lines
for all of the figure drawing operations (that is,
drawLine, drawRectangle,
drawPolyline, and so forth.
- Returns:
- the receiver's line width
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
getStyle
public int getStyle()
- Returns the receiver's style information.
Note that the value which is returned by this method may
not match the value which was provided to the constructor
when the receiver was created. This can occur when the underlying
operating system does not support a particular combination of
requested styles.
- Returns:
- the style bits
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 2.1.2
getXORMode
public boolean getXORMode()
- Returns true if this GC is drawing in the mode
where the resulting color in the destination is the
exclusive or of the color values in the source
and the destination, and false if it is
drawing in the mode where the destination color is being
replaced with the source color value.
- Returns:
- true true if the receiver is in XOR mode, and false otherwise
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
hashCode
public int hashCode()
- Returns an integer hash code for the receiver. Any two
objects which return true when passed to
equals must return the same value for this
method.
- Returns:
- the receiver's hash
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
- equals(java.lang.Object)
isClipped
public boolean isClipped()
- Returns true if the receiver has a clipping
region set into it, and false otherwise.
If this method returns false, the receiver will draw on all
available space in the destination. If it returns true,
it will draw only in the area that is covered by the region
that can be accessed with getClipping(region).
- Returns:
- true if the GC has a clipping region, and false otherwise
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
isDisposed
public boolean isDisposed()
- Returns true if the GC has been disposed,
and false otherwise.
This method gets the dispose state for the GC.
When a GC has been disposed, it is an error to
invoke any other method using the GC.
- Returns:
- true when the GC is disposed and false otherwise
setBackground
public void setBackground(Color color)
- Sets the background color. The background color is used
for fill operations and as the background color when text
is drawn.
- Parameters:
- color - the new background color for the receiver
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the color is null
- ERROR_INVALID_ARGUMENT - if the color has been disposed
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setClipping
public void setClipping(int x,
int y,
int width,
int height)
- Sets the area of the receiver which can be changed
by drawing operations to the rectangular area specified
by the arguments.
- Parameters:
- x - the x coordinate of the clipping rectangle
- y - the y coordinate of the clipping rectangle
- width - the width of the clipping rectangle
- height - the height of the clipping rectangle
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setClipping
public void setClipping(Rectangle rect)
- Sets the area of the receiver which can be changed
by drawing operations to the rectangular area specified
by the argument.
- Parameters:
- rect - the clipping rectangle
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setClipping
public void setClipping(Region region)
- Sets the area of the receiver which can be changed
by drawing operations to the region specified
by the argument.
- Parameters:
- region - the clipping region.
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setFont
public void setFont(Font font)
- Sets the font which will be used by the receiver
to draw and measure text to the argument. If the
argument is null, then a default font appropriate
for the platform will be used instead.
- Parameters:
- font - the new font for the receiver, or null to indicate a default font
- Throws:
- IllegalArgumentException -
- ERROR_INVALID_ARGUMENT - if the font has been disposed
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setForeground
public void setForeground(Color color)
- Sets the foreground color. The foreground color is used
for drawing operations including when text is drawn.
- Parameters:
- color - the new foreground color for the receiver
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the color is null
- ERROR_INVALID_ARGUMENT - if the color has been disposed
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setLineStyle
public void setLineStyle(int lineStyle)
- Sets the receiver's line style to the argument, which must be one
of the constants SWT.LINE_SOLID, SWT.LINE_DASH,
SWT.LINE_DOT, SWT.LINE_DASHDOT or
SWT.LINE_DASHDOTDOT.
- Parameters:
- lineStyle - the style to be used for drawing lines
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setLineWidth
public void setLineWidth(int lineWidth)
- Sets the width that will be used when drawing lines
for all of the figure drawing operations (that is,
drawLine, drawRectangle,
drawPolyline, and so forth.
- Parameters:
- lineWidth - the width of a line
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
setXORMode
public void setXORMode(boolean xor)
- If the argument is true, puts the receiver
in a drawing mode where the resulting color in the destination
is the exclusive or of the color values in the source
and the destination, and if the argument is false,
puts the receiver in a drawing mode where the destination color
is replaced with the source color value.
- Parameters:
- xor - if true, then xor mode is used, otherwise source copy mode is used
- Throws:
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
stringExtent
public Point stringExtent(String string)
- Returns the extent of the given string. No tab
expansion or carriage return processing will be performed.
The extent of a string is the width and height of
the rectangular area it would cover if drawn in a particular
font (in this case, the current font in the receiver).
- Parameters:
- string - the string to measure
- Returns:
- a point containing the extent of the string
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
textExtent
public Point textExtent(String string)
- Returns the extent of the given string. Tab expansion and
carriage return processing are performed.
The extent of a string is the width and height of
the rectangular area it would cover if drawn in a particular
font (in this case, the current font in the receiver).
- Parameters:
- string - the string to measure
- Returns:
- a point containing the extent of the string
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
textExtent
public Point textExtent(String string,
int flags)
- Returns the extent of the given string. Tab expansion, line
delimiter and mnemonic processing are performed according to
the specified flags, which can be a combination of:
- DRAW_DELIMITER
- draw multiple lines
- DRAW_TAB
- expand tabs
- DRAW_MNEMONIC
- underline the mnemonic character
- DRAW_TRANSPARENT
- transparent background
The extent of a string is the width and height of
the rectangular area it would cover if drawn in a particular
font (in this case, the current font in the receiver).
- Parameters:
- string - the string to measure
- flags - the flags specifing how to process the text
- Returns:
- a point containing the extent of the string
- Throws:
- IllegalArgumentException -
- ERROR_NULL_ARGUMENT - if the string is null
- SWTException -
- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
toString
public String toString()
- Returns a string containing a concise, human-readable
description of the receiver.
- Returns:
- a string representation of the receiver
win32_new
public static GC win32_new(Drawable drawable,
GCData data)
- Invokes platform specific functionality to allocate a new graphics context.
IMPORTANT: This method is not part of the public
API for GC. It is marked public only so that it
can be shared within the packages provided by SWT. It is not
available on all platforms, and should never be called from
application code.
- Parameters:
- drawable - the Drawable for the receiver.
- data - the data for the receiver.
- Returns:
- a new GC
win32_new
public static GC win32_new(int hDC,
GCData data)
- Invokes platform specific functionality to wrap a graphics context.
IMPORTANT: This method is not part of the public
API for GC. It is marked public only so that it
can be shared within the packages provided by SWT. It is not
available on all platforms, and should never be called from
application code.
- Parameters:
- hDC - the Windows HDC.
- data - the data for the receiver.
- Returns:
- a new GC
Guidelines for using Eclipse APIs.
Copyright (c) IBM Corp. and others 2000, 2004. All rights reserved.