;;;; qt-light.scm (module goodbye-widgets (gb:saygoodbye) (import scheme (chicken base) (chicken bitwise) (chicken foreign) (chicken format) (chicken fixnum) (chicken string) bind miscmacros qt-light srfi-4 srfi-1 protobj matchable ) (define (% (class 'gb-button))) (define (qt:->pointer i) (and i (? i pointer))) (define (qt:pointer->button p) (and p (% (pointer p)))) (bind-rename/pattern "gb_" "gb:") (bind-type gbbutton c-pointer gb:->pointer gb:pointer->button) #> #define ___safe #define ___bool int #define ___out <# #> extern "C" { #include "prototypes.h" } <# (bind-file* "prototypes.h") )