#include "xlib.h" #include "scheme48.h" s48_value Free_Cursor(s48_value Xdisplay, s48_value Xcursor) { XFreeCursor(EXTRACT_DISPLAY(Xdisplay), EXTRACT_CURSOR(Xcursor)); return S48_UNSPECIFIC; } s48_value Create_Pixmap_Cursor(s48_value Xdisplay, s48_value src, s48_value mask, s48_value x, s48_value y, s48_value foreground, s48_value background) { Cursor xc = XCreatePixmapCursor(EXTRACT_DISPLAY(Xdisplay), EXTRACT_PIXMAP(src), EXTRACT_PIXMAP(mask), EXTRACT_COLOR(foreground), EXTRACT_COLOR(background), s48_extract_integer(x), s48_extract_integer(y)); return ENTER_CURSOR(xc); } s48_value Create_Glyph_Cursor(s48_value Xdisplay, s48_value src, s48_value srcc, s48_value mask, s48_value maskc, s48_value foreground, s48_value background) { Cursor xc = XCreateGlyphCursor(EXTRACT_DISPLAY(Xdisplay), EXTRACT_FONT(src), EXTRACT_FONT(mask), s48_extract_integer(srcc), s48_extract_integer(maskc), EXTRACT_COLOR(foreground), EXTRACT_COLOR(background)); return ENTER_CURSOR(xc); } s48_value Recolor_Cursor(s48_value Xdisplay, s48_value Xcursor, s48_value f, s48_value b) { XRecolorCursor(EXTRACT_DISPLAY(Xdisplay), EXTRACT_CURSOR(Xcursor), EXTRACT_COLOR(f), EXTRACT_COLOR(b)); return S48_UNSPECIFIC; } s48_init_cursor() { S48_EXPORT_FUNCTION(Free_Cursor); S48_EXPORT_FUNCTION(Create_Pixmap_Cursor); S48_EXPORT_FUNCTION(Create_Glyph_Cursor); S48_EXPORT_FUNCTION(Recolor_Cursor); }