;; {{{ Data types (foreign-declare "#include \n") (include "canvas-draw-types.scm") ;; }}} ;; {{{ Context content playback (define canvas-play/ptr! (foreign-lambda int "cdCanvasPlay" nonnull-canvas nonnull-context int int int int c-pointer)) (define canvas-play/string! (foreign-lambda int "cdCanvasPlay" nonnull-canvas nonnull-context int int int int c-string)) (define (canvas-play! canvas context x0 x1 y0 y1 data) (let ([canvas-play/data! (if (string? data) canvas-play/string! canvas-play/ptr!)]) (unless (zero? (canvas-play/data! canvas context x0 x1 y0 y1 data)) (error 'canvas-play! "failed to replay graphics")))) ;; }}} ;; vim: set ai et ts=2 sts=2 sw=2: ;;