org.gnu.gdk

Class GC

public class GC extends GObject

All drawing operations in GDK take a GC argument. A graphics context encapsulates information about the way things are drawn, such as the foreground color or line width. By using graphics context, the number of arguments to each drawing call is reduced, and communication overhead is minimized.
Constructor Summary
GC(Handle handle)
GC(Window window)
GC(Drawable drawable)
Create a new graphics context with default values.
Method Summary
voidcopy(GC source)
Copy the set of values (settings) from another graphics context.
intgetClipXOrigin()
Getst he x origin of the clip mask.
intgetClipYOrigin()
Gets the y origin of the clip mask.
ColormapgetColormap()
Gets the colormap, if it exists.
static GCgetDefaultGC(Drawable d)
Convenience method to construct a new GC with default values.
ScreengetScreen()
Gets the Screen for which this GC was created.
intgetTsXOrigin()
Gets the x origin of the tile or stipple.
intgetTsYOrigin()
Gets the y origin of the tile or stipple.
voidoffset(int xOffset, int yOffset)
Offset attributes such as the clip and tile-stipple origins of the GC so that drawing at X - x_offset, y - y_offset with the offset GC has the same effect as drawing at x, y with the original GC.
voidsetBackground(Color color)
Sets the background color for the graphics context.
voidsetClipMask(Bitmap mask)
Sets the clip mask for a graphics context from a bitmap.
voidsetClipOrigin(int x, int y)
Sets the origin of the clip mask.
voidsetClipRectangle(Rectangle rect)
Sets the clip mask for a graphics context from a rectangle.
voidsetClipRegion(Region reg)
Sets the clip mask for a graphics context from a region.
voidsetColormap(Colormap colormap)
Sets the colormap to the given colormap.
voidsetDashes(int dashOffset, int[] dashList)
Sets the way dashed-lines are drawn.
voidsetExposures(boolean exposures)
Sets whether copying non-visible portions of a drawable using this graphics context generate exposure events for the corresponding regions of the destination drawable.
voidsetFillMode(Fill mode)
Sets the fill mode for the graphic context.
voidsetForeground(Color color)
Sets the foreground color for the graphics context.
voidsetFunction(Function func)
Determines how the current pixel values and the pixel values being drawn are combined to produce the final pixel values.
voidsetLineAttributes(int lineWidth, LineStyle lineStyle, CapStyle capStyle, JoinStyle joinStyle)
Sets various attributes of how lines are drawn.
voidsetOrigin(int x, int y)
Sets the origin when using tiles or stipples with the GC.
voidsetRGBBackground(Color color)
Sets the background color using an unallocated color.
voidsetRGBForeground(Color color)
Sets the foreground color using an unallocated color.
voidsetStipple(Pixmap stipple)
Sets the stipple bitmap for a graphics context.
voidsetSubwindow(SubwindowMode mode)
Sets how drawing with this GC on a window will affect child windows.
voidsetTile(Pixmap tile)
Sets the tile pixmap for the graphics context.

Constructor Detail

GC

public GC(Handle handle)

GC

public GC(Window window)

Deprecated:

Parameters: window

GC

public GC(Drawable drawable)
Create a new graphics context with default values.

Parameters: drawable The created GC must always be used with drawables of the same depth as this one.

Method Detail

copy

public void copy(GC source)
Copy the set of values (settings) from another graphics context.

Parameters: source the source graphics context.

getClipXOrigin

public int getClipXOrigin()
Getst he x origin of the clip mask.

getClipYOrigin

public int getClipYOrigin()
Gets the y origin of the clip mask.

getColormap

public Colormap getColormap()
Gets the colormap, if it exists. A GC will have a colormap if the drawable for which it was created has a colormap, or if a colormap was set explicitely with setColormap().

getDefaultGC

public static GC getDefaultGC(Drawable d)
Convenience method to construct a new GC with default values.

Parameters: d

getScreen

public Screen getScreen()
Gets the Screen for which this GC was created.

getTsXOrigin

public int getTsXOrigin()
Gets the x origin of the tile or stipple.

getTsYOrigin

public int getTsYOrigin()
Gets the y origin of the tile or stipple.

offset

public void offset(int xOffset, int yOffset)
Offset attributes such as the clip and tile-stipple origins of the GC so that drawing at X - x_offset, y - y_offset with the offset GC has the same effect as drawing at x, y with the original GC.

Parameters: xOffset amount by which to offset the GC in the X direction yOffset amount by which to offset the GC in the Y direction

setBackground

public void setBackground(Color color)
Sets the background color for the graphics context.

setClipMask

public void setClipMask(Bitmap mask)
Sets the clip mask for a graphics context from a bitmap.

setClipOrigin

public void setClipOrigin(int x, int y)
Sets the origin of the clip mask. The coordinates are interpreted relative to the upper-left cornor of the destination drawable of the current operation.

setClipRectangle

public void setClipRectangle(Rectangle rect)
Sets the clip mask for a graphics context from a rectangle.

setClipRegion

public void setClipRegion(Region reg)
Sets the clip mask for a graphics context from a region.

setColormap

public void setColormap(Colormap colormap)
Sets the colormap to the given colormap. The depth of the colormap's visual must match the depth of the drawable for which the GC was created.

setDashes

public void setDashes(int dashOffset, int[] dashList)
Sets the way dashed-lines are drawn. Lines will be drawn with alternating on and off segments of the lengths specified in dash_list. The manner in which the on and off segments are drawn is determined by the line style.

Parameters: dashOffset the phase of the pattern for the dashed line-style you want to see dashList the dash-list for the dashed line-style you want to set.

See Also: GC

setExposures

public void setExposures(boolean exposures)
Sets whether copying non-visible portions of a drawable using this graphics context generate exposure events for the corresponding regions of the destination drawable.

See Also: Drawable

setFillMode

public void setFillMode(Fill mode)
Sets the fill mode for the graphic context.

setForeground

public void setForeground(Color color)
Sets the foreground color for the graphics context.

setFunction

public void setFunction(Function func)
Determines how the current pixel values and the pixel values being drawn are combined to produce the final pixel values.

setLineAttributes

public void setLineAttributes(int lineWidth, LineStyle lineStyle, CapStyle capStyle, JoinStyle joinStyle)
Sets various attributes of how lines are drawn. See the corresponding members of GdkGCValues for full explanations of the arguments.

Parameters: lineWidth the width of lines. lineStyle the dash-style for lines. capStyle the manner in which the ends of lines are drawn. joinStyle the manner in which lines are joined together.

setOrigin

public void setOrigin(int x, int y)
Sets the origin when using tiles or stipples with the GC. The tile or stipple will be aligned such that the upper left cornor of the tile or stipple will coincide with this point.

setRGBBackground

public void setRGBBackground(Color color)
Sets the background color using an unallocated color. The pixel value for the color will be determined using GdkRGB. If the colormap has not previously been initialized for GdkRGB, then for pseudo-color colormaps (colormaps with a small modifiable number of colors), a colorcube will be allocated in the colormap.

Calling this function for a GC without a colormap is an error.

setRGBForeground

public void setRGBForeground(Color color)
Sets the foreground color using an unallocated color. The pixel value for the color will be determined using GdkRGB. If the colormap has not previously been initialized for GdkRGB, then for pseudo-color colormaps (colormaps with a small modifiable number of colors), a colorcube will be allocated in the colormap.

Calling this function for a GC without a colormap is an error.

setStipple

public void setStipple(Pixmap stipple)
Sets the stipple bitmap for a graphics context. The stipple will only be used if the fill mode is STIPPLED or OPAQUE_STIPPLED.

setSubwindow

public void setSubwindow(SubwindowMode mode)
Sets how drawing with this GC on a window will affect child windows.

setTile

public void setTile(Pixmap tile)
Sets the tile pixmap for the graphics context. This will only be used if the fill mode is TILED.