## Graphics Contexts

Graphics Contexts — A shared pool of GdkGC objects

## Functions

GdkGC * | gtk_gc_get ()
void | gtk_gc_release ()

## Includes

    #include <gtk/gtk.h>

## Description

These functions provide access to a shared pool of GdkGC objects. When a new GdkGC is needed, `gtk_gc_get()` is called with the required depth, colormap and GdkGCValues. If a GdkGC with the required properties already exists then that is returned. If not, a new GdkGC is created. When the GdkGC is no longer needed, `gtk_gc_release()` should be called.

## Functions

### gtk_gc_get ()

    GdkGC *
    gtk_gc_get (gint depth,
                GdkColormap *colormap,
                GdkGCValues *values,
                GdkGCValuesMask values_mask);

Gets a GdkGC with the given depth, colormap and GdkGCValues. If a GdkGC with the given properties already exists then it is returned, otherwise a new GdkGC is created. The returned GdkGC should be released with `gtk_gc_release()` when it is no longer needed.

#### Parameters

depth | the depth of the GdkGC to create. |
colormap | the GdkColormap (FIXME: I don't know why this is needed). |
values | a GdkGCValues struct containing settings for the GdkGC. |
values_mask | a set of flags indicating which of the fields in `values` has been set. |

#### Returns

a GdkGC.

### gtk_gc_release ()

    void
    gtk_gc_release (GdkGC *gc);

Releases a GdkGC allocated using `gtk_gc_get()`.

#### Parameters

gc | a GdkGC. |

## Types and Values