public final class GC extends Resource
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
.
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.
The result of drawing on an image that was created with an indexed palette using a color that is not in the palette is platform specific. Some platforms will match to the nearest color while other will draw the color itself. This happens because the allocated image might use a direct palette on platforms that do not support indexed palette.
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.
Modifier and Type | Field and Description |
---|---|
long |
handle
the handle to the OS device context
(Warning: This field is platform dependent)
|
Constructor and Description |
---|
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.
|
Modifier and Type | Method and Description |
---|---|
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 |
copyArea(int srcX,
int srcY,
int width,
int height,
int destX,
int destY,
boolean paint)
Copies a rectangular area of the receiver at the source
position onto the receiver at the destination position.
|
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 |
drawPath(Path path)
Draws the path described by the parameter.
|
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 |
fillPath(Path path)
Fills the path described by the parameter.
|
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.
|
boolean |
getAdvanced()
Returns
true if receiver is using the operating system's
advanced graphics subsystem. |
int |
getAdvanceWidth(char ch)
Returns the advance width of the specified character in
the font which is currently selected into the receiver.
|
int |
getAlpha()
Returns the receiver's alpha value.
|
int |
getAntialias()
Returns the receiver's anti-aliasing setting value, which will be
one of
SWT.DEFAULT , SWT.OFF or
SWT.ON . |
Color |
getBackground()
Returns the background color.
|
Pattern |
getBackgroundPattern()
Returns the background pattern.
|
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.
|
int |
getFillRule()
Returns the receiver's fill rule, which will be one of
SWT.FILL_EVEN_ODD or SWT.FILL_WINDING . |
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.
|
Pattern |
getForegroundPattern()
Returns the foreground pattern.
|
GCData |
getGCData()
Returns the GCData.
|
int |
getInterpolation()
Returns the receiver's interpolation setting, which will be one of
SWT.DEFAULT , SWT.NONE ,
SWT.LOW or SWT.HIGH . |
LineAttributes |
getLineAttributes()
Returns the receiver's line attributes.
|
int |
getLineCap()
Returns the receiver's line cap style, which will be one
of the constants
SWT.CAP_FLAT , SWT.CAP_ROUND ,
or SWT.CAP_SQUARE . |
int[] |
getLineDash()
Returns the receiver's line dash style.
|
int |
getLineJoin()
Returns the receiver's line join style, which will be one
of the constants
SWT.JOIN_MITER , SWT.JOIN_ROUND ,
or SWT.JOIN_BEVEL . |
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.
|
int |
getTextAntialias()
Returns the receiver's text drawing anti-aliasing setting value,
which will be one of
SWT.DEFAULT , SWT.OFF or
SWT.ON . |
void |
getTransform(Transform transform)
Sets the parameter to the transform that is currently being
used by the receiver.
|
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 |
setAdvanced(boolean advanced)
Sets the receiver to always use the operating system's advanced graphics
subsystem for all graphics operations if the argument is
true . |
void |
setAlpha(int alpha)
Sets the receiver's alpha value which must be
between 0 (transparent) and 255 (opaque).
|
void |
setAntialias(int antialias)
Sets the receiver's anti-aliasing value to the parameter,
which must be one of
SWT.DEFAULT , SWT.OFF
or SWT.ON . |
void |
setBackground(Color color)
Sets the background color.
|
void |
setBackgroundPattern(Pattern pattern)
Sets the background pattern.
|
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(Path path)
Sets the area of the receiver which can be changed
by drawing operations to the path specified
by the argument.
|
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 |
setFillRule(int rule)
Sets the receiver's fill rule to the parameter, which must be one of
SWT.FILL_EVEN_ODD or SWT.FILL_WINDING . |
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 |
setForegroundPattern(Pattern pattern)
Sets the foreground pattern.
|
void |
setInterpolation(int interpolation)
Sets the receiver's interpolation setting to the parameter, which
must be one of
SWT.DEFAULT , SWT.NONE ,
SWT.LOW or SWT.HIGH . |
void |
setLineAttributes(LineAttributes attributes)
Sets the receiver's line attributes.
|
void |
setLineCap(int cap)
Sets the receiver's line cap style to the argument, which must be one
of the constants
SWT.CAP_FLAT , SWT.CAP_ROUND ,
or SWT.CAP_SQUARE . |
void |
setLineDash(int[] dashes)
Sets the receiver's line dash style to the argument.
|
void |
setLineJoin(int join)
Sets the receiver's line join style to the argument, which must be one
of the constants
SWT.JOIN_MITER , SWT.JOIN_ROUND ,
or SWT.JOIN_BEVEL . |
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 |
setTextAntialias(int antialias)
Sets the receiver's text anti-aliasing value to the parameter,
which must be one of
SWT.DEFAULT , SWT.OFF
or SWT.ON . |
void |
setTransform(Transform transform)
Sets the transform that is currently being used by the receiver.
|
void |
setXORMode(boolean xor)
Deprecated.
this functionality is not supported on some platforms
|
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(long hDC,
GCData data)
Invokes platform specific functionality to wrap a graphics context.
|
public long handle
IMPORTANT: This field is not part of the SWT public API. 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 accessed from application code.
public GC(Drawable drawable)
You must dispose the graphics context when it is no longer required.
drawable
- the drawable to draw onIllegalArgumentException
- SWTError
- Resource.dispose()
public GC(Drawable drawable, int style)
You must dispose the graphics context when it is no longer required.
drawable
- the drawable to draw onstyle
- the style of GC to constructIllegalArgumentException
- SWTError
- Resource.dispose()
public void copyArea(Image image, int x, int y)
SWT.BITMAP
.image
- the image to copy intox
- the x coordinate in the receiver of the area to be copiedy
- the y coordinate in the receiver of the area to be copiedIllegalArgumentException
- SWTException
- public void copyArea(int srcX, int srcY, int width, int height, int destX, int destY)
srcX
- the x coordinate in the receiver of the area to be copiedsrcY
- the y coordinate in the receiver of the area to be copiedwidth
- the width of the area to copyheight
- the height of the area to copydestX
- the x coordinate in the receiver of the area to copy todestY
- the y coordinate in the receiver of the area to copy toSWTException
- public void copyArea(int srcX, int srcY, int width, int height, int destX, int destY, boolean paint)
srcX
- the x coordinate in the receiver of the area to be copiedsrcY
- the y coordinate in the receiver of the area to be copiedwidth
- the width of the area to copyheight
- the height of the area to copydestX
- the x coordinate in the receiver of the area to copy todestY
- the y coordinate in the receiver of the area to copy topaint
- if true
paint events will be generated for old and obscured areasSWTException
- public void drawArc(int x, int y, int width, int height, int startAngle, int arcAngle)
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.
x
- the x coordinate of the upper-left corner of the arc to be drawny
- the y coordinate of the upper-left corner of the arc to be drawnwidth
- the width of the arc to be drawnheight
- the height of the arc to be drawnstartAngle
- the beginning anglearcAngle
- the angular extent of the arc, relative to the start angleSWTException
- public void drawFocus(int x, int y, int width, int height)
x
- the x coordinate of the rectangley
- the y coordinate of the rectanglewidth
- the width of the rectangleheight
- the height of the rectangleSWTException
- drawRectangle(int, int, int, int)
public void drawImage(Image image, int x, int y)
image
- the image to drawx
- the x coordinate of where to drawy
- the y coordinate of where to drawIllegalArgumentException
- SWTException
- SWTError
- public void drawImage(Image image, int srcX, int srcY, int srcWidth, int srcHeight, int destX, int destY, int destWidth, int destHeight)
image
- the source imagesrcX
- the x coordinate in the source image to copy fromsrcY
- the y coordinate in the source image to copy fromsrcWidth
- the width in points to copy from the sourcesrcHeight
- the height in points to copy from the sourcedestX
- the x coordinate in the destination to copy todestY
- the y coordinate in the destination to copy todestWidth
- the width in points of the destination rectangledestHeight
- the height in points of the destination rectangleIllegalArgumentException
- SWTException
- SWTError
- public void drawLine(int x1, int y1, int x2, int y2)
x1
, y1
) and (x2
, y2
).x1
- the first point's x coordinatey1
- the first point's y coordinatex2
- the second point's x coordinatey2
- the second point's y coordinateSWTException
- public void drawOval(int x, int y, int width, int height)
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.
x
- the x coordinate of the upper left corner of the oval to be drawny
- the y coordinate of the upper left corner of the oval to be drawnwidth
- the width of the oval to be drawnheight
- the height of the oval to be drawnSWTException
- public void drawPath(Path path)
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
path
- the path to drawIllegalArgumentException
- SWTException
- Path
public void drawPoint(int x, int y)
x
, y
).
Note that the receiver's line attributes do not affect this operation.
x
- the point's x coordinatey
- the point's y coordinateSWTException
- public void drawPolygon(int[] pointArray)
pointArray
- an array of alternating x and y values which are the vertices of the polygonIllegalArgumentException
- SWTException
- public void drawPolyline(int[] pointArray)
pointArray
- an array of alternating x and y values which are the corners of the polylineIllegalArgumentException
- SWTException
- public void drawRectangle(int x, int y, int width, int height)
x
and x + width
.
The top and bottom edges are at y
and y + height
.x
- the x coordinate of the rectangle to be drawny
- the y coordinate of the rectangle to be drawnwidth
- the width of the rectangle to be drawnheight
- the height of the rectangle to be drawnSWTException
- public void drawRectangle(Rectangle rect)
rect.x
and rect.x + rect.width
. The top
and bottom edges are at rect.y
and
rect.y + rect.height
.rect
- the rectangle to drawIllegalArgumentException
- SWTException
- public void drawRoundRectangle(int x, int y, int width, int height, int arcWidth, int arcHeight)
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, which
are respectively the width and height of the ellipse used to draw
the corners.x
- the x coordinate of the rectangle to be drawny
- the y coordinate of the rectangle to be drawnwidth
- the width of the rectangle to be drawnheight
- the height of the rectangle to be drawnarcWidth
- the width of the arcarcHeight
- the height of the arcSWTException
- public void drawString(String string, int x, int y)
string
- the string to be drawnx
- the x coordinate of the top left corner of the rectangular area where the string is to be drawny
- the y coordinate of the top left corner of the rectangular area where the string is to be drawnIllegalArgumentException
- SWTException
- public void drawString(String string, int x, int y, boolean isTransparent)
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.string
- the string to be drawnx
- the x coordinate of the top left corner of the rectangular area where the string is to be drawny
- the y coordinate of the top left corner of the rectangular area where the string is to be drawnisTransparent
- if true
the background will be transparent, otherwise it will be opaqueIllegalArgumentException
- SWTException
- public void drawText(String string, int x, int y)
string
- the string to be drawnx
- the x coordinate of the top left corner of the rectangular area where the text is to be drawny
- the y coordinate of the top left corner of the rectangular area where the text is to be drawnIllegalArgumentException
- SWTException
- public void drawText(String string, int x, int y, boolean isTransparent)
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.string
- the string to be drawnx
- the x coordinate of the top left corner of the rectangular area where the text is to be drawny
- the y coordinate of the top left corner of the rectangular area where the text is to be drawnisTransparent
- if true
the background will be transparent, otherwise it will be opaqueIllegalArgumentException
- SWTException
- public void drawText(String string, int x, int y, int flags)
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:
string
- the string to be drawnx
- the x coordinate of the top left corner of the rectangular area where the text is to be drawny
- the y coordinate of the top left corner of the rectangular area where the text is to be drawnflags
- the flags specifying how to process the textIllegalArgumentException
- SWTException
- public boolean equals(Object object)
equals
in class Object
object
- the object to compare with this objecttrue
if the object is the same as this object and false
otherwisehashCode()
public void fillArc(int x, int y, int width, int height, int startAngle, int arcAngle)
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.
x
- the x coordinate of the upper-left corner of the arc to be filledy
- the y coordinate of the upper-left corner of the arc to be filledwidth
- the width of the arc to be filledheight
- the height of the arc to be filledstartAngle
- the beginning anglearcAngle
- the angular extent of the arc, relative to the start angleSWTException
- drawArc(int, int, int, int, int, int)
public void fillGradientRectangle(int x, int y, int width, int height, boolean vertical)
x
- the x coordinate of the rectangle to be filledy
- the y coordinate of the rectangle to be filledwidth
- 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 rightSWTException
- drawRectangle(int, int, int, int)
public void fillOval(int x, int y, int width, int height)
x
- the x coordinate of the upper left corner of the oval to be filledy
- the y coordinate of the upper left corner of the oval to be filledwidth
- the width of the oval to be filledheight
- the height of the oval to be filledSWTException
- drawOval(int, int, int, int)
public void fillPath(Path path)
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
path
- the path to fillIllegalArgumentException
- SWTException
- Path
public void fillPolygon(int[] pointArray)
pointArray
- an array of alternating x and y values which are the vertices of the polygonIllegalArgumentException
- SWTException
- drawPolygon(int[])
public void fillRectangle(int x, int y, int width, int height)
x
- the x coordinate of the rectangle to be filledy
- the y coordinate of the rectangle to be filledwidth
- the width of the rectangle to be filledheight
- the height of the rectangle to be filledSWTException
- drawRectangle(int, int, int, int)
public void fillRectangle(Rectangle rect)
rect
- the rectangle to be filledIllegalArgumentException
- SWTException
- drawRectangle(int, int, int, int)
public void fillRoundRectangle(int x, int y, int width, int height, int arcWidth, int arcHeight)
x
- the x coordinate of the rectangle to be filledy
- the y coordinate of the rectangle to be filledwidth
- the width of the rectangle to be filledheight
- the height of the rectangle to be filledarcWidth
- the width of the arcarcHeight
- the height of the arcSWTException
- drawRoundRectangle(int, int, int, int, int, int)
public int getAdvanceWidth(char ch)
The advance width is defined as the horizontal distance the cursor should move after printing the character in the selected font.
ch
- the character to measureSWTException
- public boolean getAdvanced()
true
if receiver is using the operating system's
advanced graphics subsystem. Otherwise, false
is returned
to indicate that normal graphics are in use.
Advanced graphics may not be installed for the operating system. In this
case, false
is always returned. Some operating system have
only one graphics subsystem. If this subsystem supports advanced graphics,
then true
is always returned. If any graphics operation such
as alpha, antialias, patterns, interpolation, paths, clipping or transformation
has caused the receiver to switch from regular to advanced graphics mode,
true
is returned. If the receiver has been explicitly switched
to advanced mode and this mode is supported, true
is returned.
SWTException
- setAdvanced(boolean)
public int getAlpha()
SWTException
- public int getAntialias()
SWT.DEFAULT
, SWT.OFF
or
SWT.ON
. Note that this controls anti-aliasing for all
non-text drawing operations.SWTException
- getTextAntialias()
public Color getBackground()
SWTException
- public Pattern getBackgroundPattern()
null
.SWTException
- Pattern
public int getCharWidth(char ch)
The width is defined as the space taken up by the actual character, not including the leading and tailing whitespace or overhang.
ch
- the character to measureSWTException
- public Rectangle getClipping()
SWTException
- public void getClipping(Region region)
region
- the region to fill with the clipping regionIllegalArgumentException
- SWTException
- public int getFillRule()
SWT.FILL_EVEN_ODD
or SWT.FILL_WINDING
.SWTException
- public Font getFont()
SWTException
- public FontMetrics getFontMetrics()
SWTException
- public Color getForeground()
SWTException
- public Pattern getForegroundPattern()
null
.SWTException
- Pattern
public GCData getGCData()
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.
SWTException
- GCData
public int getInterpolation()
SWT.DEFAULT
, SWT.NONE
,
SWT.LOW
or SWT.HIGH
.SWTException
- public LineAttributes getLineAttributes()
SWTException
- public int getLineCap()
SWT.CAP_FLAT
, SWT.CAP_ROUND
,
or SWT.CAP_SQUARE
.SWTException
- public int[] getLineDash()
null
.SWTException
- public int getLineJoin()
SWT.JOIN_MITER
, SWT.JOIN_ROUND
,
or SWT.JOIN_BEVEL
.SWTException
- public int getLineStyle()
SWT.LINE_SOLID
, SWT.LINE_DASH
,
SWT.LINE_DOT
, SWT.LINE_DASHDOT
or
SWT.LINE_DASHDOTDOT
.SWTException
- public int getLineWidth()
drawLine
, drawRectangle
,
drawPolyline
, and so forth.SWTException
- public int getStyle()
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.
SWTException
- public int getTextAntialias()
SWT.DEFAULT
, SWT.OFF
or
SWT.ON
. Note that this controls anti-aliasing
only for text drawing operations.SWTException
- getAntialias()
public void getTransform(Transform transform)
transform
- the destination to copy the transform intoIllegalArgumentException
- SWTException
- Transform
public boolean getXORMode()
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.true
true if the receiver is in XOR mode, and false otherwiseSWTException
- public int hashCode()
true
when passed to
equals
must return the same value for this
method.hashCode
in class Object
SWTException
- equals(java.lang.Object)
public boolean isClipped()
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)
.true
if the GC has a clipping region, and false
otherwiseSWTException
- public boolean isDisposed()
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 (except Resource.dispose()
) using the GC.
isDisposed
in class Resource
true
when the GC is disposed and false
otherwisepublic void setAdvanced(boolean advanced)
true
.
If the argument is false
, the advanced graphics subsystem is
no longer used, advanced graphics state is cleared and the normal graphics
subsystem is used from now on.
Normally, the advanced graphics subsystem is invoked automatically when any one of the alpha, antialias, patterns, interpolation, paths, clipping or transformation operations in the receiver is requested. When the receiver is switched into advanced mode, the advanced graphics subsystem performs both advanced and normal graphics operations. Because the two subsystems are different, their output may differ. Switching to advanced graphics before any graphics operations are performed ensures that the output is consistent.
Advanced graphics may not be installed for the operating system. In this case, this operation does nothing. Some operating system have only one graphics subsystem, so switching from normal to advanced graphics does nothing. However, switching from advanced to normal graphics will always clear the advanced graphics state, even for operating systems that have only one graphics subsystem.
advanced
- the new advanced graphics stateSWTException
- setAlpha(int)
,
setAntialias(int)
,
setBackgroundPattern(org.eclipse.swt.graphics.Pattern)
,
setClipping(Path)
,
setForegroundPattern(org.eclipse.swt.graphics.Pattern)
,
setLineAttributes(org.eclipse.swt.graphics.LineAttributes)
,
setInterpolation(int)
,
setTextAntialias(int)
,
setTransform(org.eclipse.swt.graphics.Transform)
,
getAdvanced()
public void setAntialias(int antialias)
SWT.DEFAULT
, SWT.OFF
or SWT.ON
. Note that this controls anti-aliasing for all
non-text drawing operations.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
antialias
- the anti-aliasing settingIllegalArgumentException
- SWT.DEFAULT
,
SWT.OFF
or SWT.ON
SWTException
- getAdvanced()
,
setAdvanced(boolean)
,
setTextAntialias(int)
public void setAlpha(int alpha)
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
alpha
- the alpha valueSWTException
- getAdvanced()
,
setAdvanced(boolean)
public void setBackground(Color color)
color
- the new background color for the receiverIllegalArgumentException
- SWTException
- public void setBackgroundPattern(Pattern pattern)
null
.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
pattern
- the new background patternIllegalArgumentException
- SWTException
- Pattern
,
getAdvanced()
,
setAdvanced(boolean)
public void setClipping(int x, int y, int width, int height)
x
- the x coordinate of the clipping rectangley
- the y coordinate of the clipping rectanglewidth
- the width of the clipping rectangleheight
- the height of the clipping rectangleSWTException
- public void setClipping(Path path)
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
path
- the clipping path.IllegalArgumentException
- SWTException
- Path
,
getAdvanced()
,
setAdvanced(boolean)
public void setClipping(Rectangle rect)
null
for the
rectangle reverts the receiver's clipping area to its
original value.rect
- the clipping rectangle or null
SWTException
- public void setClipping(Region region)
null
for the
region reverts the receiver's clipping area to its
original value.region
- the clipping region or null
IllegalArgumentException
- SWTException
- public void setFillRule(int rule)
SWT.FILL_EVEN_ODD
or SWT.FILL_WINDING
.rule
- the new fill ruleIllegalArgumentException
- SWT.FILL_EVEN_ODD
or SWT.FILL_WINDING
SWTException
- public void setFont(Font font)
font
- the new font for the receiver, or null to indicate a default fontIllegalArgumentException
- SWTException
- public void setForeground(Color color)
color
- the new foreground color for the receiverIllegalArgumentException
- SWTException
- public void setForegroundPattern(Pattern pattern)
null
.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
pattern
- the new foreground patternIllegalArgumentException
- SWTException
- Pattern
,
getAdvanced()
,
setAdvanced(boolean)
public void setInterpolation(int interpolation)
SWT.DEFAULT
, SWT.NONE
,
SWT.LOW
or SWT.HIGH
.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
interpolation
- the new interpolation settingIllegalArgumentException
- SWT.DEFAULT
,
SWT.NONE
, SWT.LOW
or SWT.HIGH
SWTException
- getAdvanced()
,
setAdvanced(boolean)
public void setLineAttributes(LineAttributes attributes)
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
attributes
- the line attributesIllegalArgumentException
- SWTException
- LineAttributes
,
getAdvanced()
,
setAdvanced(boolean)
public void setLineCap(int cap)
SWT.CAP_FLAT
, SWT.CAP_ROUND
,
or SWT.CAP_SQUARE
.cap
- the cap style to be used for drawing linesIllegalArgumentException
- SWTException
- public void setLineDash(int[] dashes)
null
. If the argument is not null
,
the receiver's line style is set to SWT.LINE_CUSTOM
, otherwise
it is set to SWT.LINE_SOLID
.dashes
- the dash style to be used for drawing linesIllegalArgumentException
- SWTException
- public void setLineJoin(int join)
SWT.JOIN_MITER
, SWT.JOIN_ROUND
,
or SWT.JOIN_BEVEL
.join
- the join style to be used for drawing linesIllegalArgumentException
- SWTException
- public void setLineStyle(int lineStyle)
SWT.LINE_SOLID
, SWT.LINE_DASH
,
SWT.LINE_DOT
, SWT.LINE_DASHDOT
or
SWT.LINE_DASHDOTDOT
.lineStyle
- the style to be used for drawing linesIllegalArgumentException
- SWTException
- public void setLineWidth(int lineWidth)
drawLine
, drawRectangle
,
drawPolyline
, and so forth.
Note that line width of zero is used as a hint to indicate that the fastest possible line drawing algorithms should be used. This means that the output may be different from line width one.
lineWidth
- the width of a lineSWTException
- @Deprecated public void setXORMode(boolean xor)
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.
Note that this mode in fundamentally unsupportable on certain platforms, notably Carbon (Mac OS X). Clients that want their code to run on all platforms need to avoid this method.
xor
- if true
, then xor mode is used, otherwise source copy mode is usedSWTException
- public void setTextAntialias(int antialias)
SWT.DEFAULT
, SWT.OFF
or SWT.ON
. Note that this controls anti-aliasing only
for all text drawing operations.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
antialias
- the anti-aliasing settingIllegalArgumentException
- SWT.DEFAULT
,
SWT.OFF
or SWT.ON
SWTException
- getAdvanced()
,
setAdvanced(boolean)
,
setAntialias(int)
public void setTransform(Transform transform)
null
, the current transform is set to
the identity transform.
This operation requires the operating system's advanced graphics subsystem which may not be available on some platforms.
transform
- the transform to setIllegalArgumentException
- SWTException
- Transform
,
getAdvanced()
,
setAdvanced(boolean)
public Point stringExtent(String string)
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).
string
- the string to measureIllegalArgumentException
- SWTException
- public Point textExtent(String string)
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).
string
- the string to measureIllegalArgumentException
- SWTException
- public Point textExtent(String string, int flags)
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).
string
- the string to measureflags
- the flags specifying how to process the textIllegalArgumentException
- SWTException
- public String toString()
public static GC win32_new(Drawable drawable, GCData data)
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.
drawable
- the Drawable for the receiver.data
- the data for the receiver.GC
public static GC win32_new(long hDC, GCData data)
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.
hDC
- the Windows HDC.data
- the data for the receiver.GC
Copyright © 2017. All Rights Reserved.