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.
copy
public void copy(GC source)
Copy the set of values (settings) from another graphics context.
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.
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.
xOffset
- amount by which to offset the GC in the X directionyOffset
- 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.
dashOffset
- the phase of the pattern for the dashed
line-style you want to seedashList
- the dash-list for the dashed line-style you
want to set.
setLineAttributes(int,LineStyle,CapStyle,JoinStyle)
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.
Drawable.drawDrawable
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.
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.