scx/scheme/xlib/xlib-interfaces.scm

260 lines
5.3 KiB
Scheme

(define-interface xlib-display-interface
(export display?
open-display
close-display
display-after-function
after-function ;; compatibility with Elk, same as above
display-set-after-function!
set-after-function! ;; compatibility with Elk, same as above
display-default-root-window
display-root-window ;; same as above
display-default-colormap
display-colormap ;; same as above
display-default-gcontext
display-default-depth
display-default-screen-number
display-cells
display-planes
display-string
display-vendor
display-protocol-version
display-screen-count
display-image-byte-order
display-bitmap-unit
display-bitmap-bit-order
display-bitmap-pad
display-width
display-height
display-width-mm
display-height-mm
display-motion-buffer-size
display-flush-output
display-wait-output
display-no-op
no-op ;; compatibility with Elk, same as above
display-list-depths
list-depths ;; compatibility with Elk, same as above
display-list-pixmap-formats
list-pixmap-formats ;; compatibility with Elk, same as above
synchronize
))
(define-interface xlib-window-interface
(export window?
drawable?
window-display
create-window
destroy-window
change-window-attributes
get-window-attributes
map-window
unmap-window
set-window-background-pixmap!
set-window-background-pixel!
set-window-border-pixmap!
set-window-border-pixel!
set-window-bit-gravity!
set-window-gravity!
set-window-backing-store!
set-window-backing-planes!
set-window-backing-pixel!
set-window-save-under!
set-window-event-mask!
set-window-do-not-propagate-mask!
set-window-override-redirect!
set-window-colormap!
set-window-cursor!
set-window-x!
set-window-y!
set-window-width!
set-window-height!
set-window-border-width!
set-window-sibling!
set-window-stack-mode!
window-x
window-y
window-width
window-height
window-border-width
window-depth
window-visual
window-root
window-class
window-bit-gravity
window-backing-store
window-backing-planes
window-backing-pixel
window-save-under
window-colormap
window-map-installed
window-map-state
window-all-event-masks
window-your-event-mask
window-do-not-propagate-mask
window-override-redirect
destroy-subwindows
map-subwindows
unmap-subwindows
circulate-subwindows
clear-window
raise-window
lower-window
restack-windows
query-tree
translate-coordinates
query-pointer
))
(define-interface xlib-drawable-interface
(export drawable?
drawable-root
drawable-x
drawable-y
drawable-width
drawable-height
drawable-border-width
drawable-depth))
(define-interface xlib-color-interface
(export make-color
color?
color-rgb-values
query-color
query-colors
lookup-color))
(define-interface xlib-colormap-interface
(export make-colormap
colormap?
free-colormap
colormap-display
alloc-color
alloc-named-color
))
(define-interface xlib-pixel-interface
(export pixel?
pixel-value
black-pixel
white-pixel
))
(define-interface xlib-gcontext-interface
(export gcontext?
gcontext-display
create-gcontext
copy-gcontext
free-gcontext
query-best-size
query-best-cursor
query-best-tile
query-best-stipple
gcontext-function
gcontext-plane-mask
gcontext-foreground
gcontext-background
gcontext-line-width
gcontext-line-style
gcontext-cap-style
gcontext-join-style
gcontext-fill-style
gcontext-fill-rule
gcontext-arc-mode
gcontext-tile
gcontext-stipple
gcontext-ts-x
gcontext-ts-y
gcontext-font
gcontext-subwindow-mode
gcontext-exposures
gcontext-clip-x
gcontext-clip-y
gcontext-clip-mask
gcontext-dash-offset
gcontext-dashes
set-gcontext-function!
set-gcontext-plane-mask!
set-gcontext-foreground!
set-gcontext-background!
set-gcontext-line-width!
set-gcontext-line-style!
set-gcontext-cap-style!
set-gcontext-join-style!
set-gcontext-fill-style!
set-gcontext-fill-rule!
set-gcontext-arc-mode!
set-gcontext-tile!
set-gcontext-stipple!
set-gcontext-ts-x!
set-gcontext-ts-y!
set-gcontext-font!
set-gcontext-subwindow-mode!
set-gcontext-exposures!
set-gcontext-clip-x!
set-gcontext-clip-y!
set-gcontext-clip-mask!
set-gcontext-dash-offset!
set-gcontext-clip-rectangles!
set-gcontext-dashlist!
))
(define-interface xlib-graphics-interface
(export clear-area
copy-area
copy-plane
draw-point
draw-points
draw-line
draw-lines
draw-segments
draw-rectangle
draw-rectangles
fill-rectangle
fill-rectangles
draw-arc
fill-arc
draw-arcs
fill-arcs
fill-polygon))
;; pixmap - not done!
(define-interface xlib-pixmap-interface
(export pixmap?
free-pixmap
pixmap-display))
(define-interface xlib-event-interface
(export event-ready?
events-pending
next-event
peek-event))
;; all together
(define-interface xlib-interface
(compound-interface xlib-display-interface
xlib-pixmap-interface
xlib-window-interface
xlib-drawable-interface
xlib-color-interface
xlib-colormap-interface
xlib-pixel-interface
xlib-gcontext-interface
xlib-graphics-interface
xlib-event-interface
))