132 lines
2.7 KiB
Scheme
132 lines
2.7 KiB
Scheme
;;; Helper functions
|
|
|
|
(define-interface xlib-helper-interface
|
|
(export make-enum-alist->vector
|
|
make-vector->enum-alist
|
|
none-resource?
|
|
none-resource
|
|
alist-split
|
|
vector-map!))
|
|
|
|
;; these are internal interfaces that describe the construction and access
|
|
;; functions to all the new datatypes. They are not needed by the user
|
|
|
|
(define-interface xlib-display-type-interface
|
|
(export make-display
|
|
display?
|
|
display-Xdisplay
|
|
display-after-function
|
|
display-set-after-function!
|
|
close-display
|
|
display-message-inport))
|
|
|
|
(define-interface xlib-window-type-interface
|
|
(export make-window
|
|
destroy-window
|
|
window?
|
|
window-Xwindow
|
|
window-display))
|
|
|
|
(define-interface xlib-drawable-type-interface
|
|
(export drawable?
|
|
drawable-abstraction
|
|
drawable-display
|
|
drawable-Xobject))
|
|
|
|
(define-interface xlib-color-type-interface
|
|
(export internal-make-color
|
|
extract-rgb-values
|
|
create-color
|
|
color?
|
|
color-Xcolor))
|
|
|
|
(define-interface xlib-colormap-type-interface
|
|
(export make-colormap
|
|
colormap?
|
|
free-colormap
|
|
colormap-display
|
|
colormap-Xcolormap))
|
|
|
|
(define-interface xlib-pixel-type-interface
|
|
(export make-pixel
|
|
pixel?
|
|
pixel-Xpixel))
|
|
|
|
(define-interface xlib-gcontext-type-interface
|
|
(export make-gcontext
|
|
free-gcontext
|
|
gcontext?
|
|
gcontext-display
|
|
gcontext-Xgcontext))
|
|
|
|
(define-interface xlib-pixmap-type-interface
|
|
(export make-pixmap
|
|
free-pixmap
|
|
pixmap?
|
|
pixmap-Xpixmap
|
|
pixmap-display))
|
|
|
|
(define-interface xlib-event-type-interface
|
|
(export make-event
|
|
event?
|
|
event-type
|
|
event-args
|
|
event-set-args!))
|
|
|
|
(define-interface xlib-font-type-interface
|
|
(export make-font
|
|
font?
|
|
font-Xfont
|
|
font-Xfontstruct
|
|
font-display
|
|
font-name
|
|
load-font
|
|
open-font
|
|
unload-font
|
|
close-font))
|
|
|
|
(define-interface xlib-atom-type-interface
|
|
(export atom?
|
|
make-atom
|
|
atom-Xatom
|
|
intern-atom))
|
|
|
|
(define-interface xlib-cursor-type-interface
|
|
(export cursor?
|
|
make-cursor
|
|
cursor-display
|
|
cursor-Xcursor
|
|
free-cursor))
|
|
|
|
(define-interface xlib-visual-type-interface
|
|
(export visual?
|
|
make-visual
|
|
visual-Xvisual))
|
|
|
|
(define-interface xlib-region-type-interface
|
|
(export region?
|
|
make-region
|
|
destroy-region
|
|
region-Xregion))
|
|
|
|
;; all in one
|
|
|
|
(define-interface xlib-types-interface
|
|
(compound-interface
|
|
xlib-helper-interface
|
|
xlib-display-type-interface
|
|
xlib-window-type-interface
|
|
xlib-drawable-type-interface
|
|
xlib-color-type-interface
|
|
xlib-colormap-type-interface
|
|
xlib-pixel-type-interface
|
|
xlib-gcontext-type-interface
|
|
xlib-pixmap-type-interface
|
|
xlib-event-type-interface
|
|
xlib-font-type-interface
|
|
xlib-atom-type-interface
|
|
xlib-cursor-type-interface
|
|
xlib-visual-type-interface
|
|
xlib-region-type-interface
|
|
))
|