reorganized the modules.

This commit is contained in:
frese 2001-07-09 13:46:22 +00:00
parent a1501802f0
commit 21c4986189
3 changed files with 194 additions and 0 deletions

View File

@ -0,0 +1,86 @@
(define-structure xlib-display xlib-display-interface
(open scheme
external-calls
xlib-types)
(files display))
(define-structure xlib-window xlib-window-interface
(open scheme
external-calls
receiving
xlib-types
xlib-graphics ;; for clear-window
)
(files window))
(define-structure xlib-drawable xlib-drawable-interface
(open scheme
xlib-types
xlib-window
xlib-pixmap)
(files drawable))
(define-structure xlib-color xlib-color-interface
(open scheme
external-calls
xlib-types)
(files color))
(define-structure xlib-colormap xlib-colormap-interface
(open scheme
external-calls
xlib-types)
(files colormap))
(define-structure xlib-pixel xlib-pixel-interface
(open scheme
external-calls
xlib-types)
(files pixel))
(define-structure xlib-gcontext xlib-gcontext-interface
(open scheme
external-calls
receiving
xlib-types)
(files gcontext))
(define-structure xlib-pixmap xlib-pixmap-interface
(open scheme
external-calls
xlib-types)
(files)) ;;...
(define-structure xlib-graphics xlib-graphics-interface
(open scheme
external-calls
xlib-types)
(files graphics))
(define-structure xlib-event xlib-event-interface
(open scheme
external-calls
xlib-types)
(files event))
;; all together
(define-structure xlib xlib-interface
(open xlib-display
xlib-pixmap
xlib-window
; xlib-drawable
xlib-color
xlib-colormap
xlib-pixel
xlib-gcontext
xlib-graphics
xlib-event))

View File

@ -0,0 +1,86 @@
;;; Helper functions
(define-interface xlib-helper-interface
(export named-args->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
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 event?
event-type
event-args))
;; 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
))

View File

@ -0,0 +1,22 @@
;; the other xlib packages need this to gain direct access to the new datatypes.
;; Normal users shouldn't use this package.
(define-structure xlib-types xlib-types-interface
(open scsh ;; for fdes->inport
scheme
list-lib
weak
general-tables
primitives
define-record-types
external-calls)
(files helper
display-type
color-type
colormap-type
pixel-type
pixmap-type
window-type
drawable-type
gcontext-type
event-type))