#include "ecore_xcb_private.h" /** * Creates a new default graphics context associated with the given * drawable. * @param drawable Drawable to create graphics context with. If @c 0 is * given instead, the default root window is used. * @param value_mask Bitmask values. * @param value_list List of values. The order of values must be the * same than the corresponding bitmaks. * @return The new default graphics context. * * Creates a new default graphics context associated with @p * drawable. The graphic context can be used with any destination * drawable having the same root and depth as @p drawable. Use with * other drawables results in a BadMatch error. */ EAPI Ecore_X_GC ecore_x_gc_new(Ecore_X_Drawable drawable, Ecore_X_GC_Value_Mask value_mask, const unsigned int *value_list) { xcb_gcontext_t gc; if (!drawable) drawable = ((xcb_screen_t *)_ecore_xcb_screen)->root; gc = xcb_generate_id(_ecore_xcb_conn); xcb_create_gc(_ecore_xcb_conn, gc, drawable, value_mask, value_list); return gc; } /* ecore_x_gc_new */ /** * Deletes and frees the given graphics context. * @param gc The given graphics context. * * Destroyes the graphic context @p gc as well as the associated * storage. */ EAPI void ecore_x_gc_free(Ecore_X_GC gc) { xcb_free_gc(_ecore_xcb_conn, gc); } /* ecore_x_gc_free */