Commit 60bde987 authored by Raymond Toy's avatar Raymond Toy

Import upstream clx version 0.7.5-19-g623c339

Straight copy of sharplispers/clx commit 623c339
parent dded48c6
Pipeline #667 failed with stage
in 18 minutes and 22 seconds
$Id: README-CMUCL,v 1.2 2009/06/11 16:03:56 rtoy Rel $
This is an import of Telent-CLX from the fork
https://github.com/sharplispers/clx, version
6e39a0df2a0a1d083166f405d4b8bbc463d54d85.
This is an import of Telent-CLX as of 0.7.3.
All (almost?) files are included. A few changes to fix bugs related
to CMUCL have been added, as well as the CVS id. I've tried to make
few changes so it will be easy to merge again when desired.
All files are included. A few changes to fix bugs related to CMUCL
have been added, as well as the CVS id. I've tried to make few
changes so it will be easy to merge again when desired.
The following files from this directory are compiled and loaded by
CMUCL when it builds utilities:
clx-library.lisp
package.lisp
depdefs.lisp
clx.lisp
dependent.lisp
macros.lisp
bufmac.lisp
buffer.lisp
display.lisp
gcontext.lisp
input.lisp
requests.lisp
fonts.lisp
graphics.lisp
text.lisp
attributes.lisp
translate.lisp
keysyms.lisp
manager.lisp
image.lisp
resource.lisp
shape.lisp
big-requests.lisp
xvidmode.lisp
xrender.lisp
glx.lisp
gl.lisp
dpms.lisp
provide.lisp
See src/tools/clxcom.lisp to see what files are compiled.
......@@ -387,9 +387,7 @@
;; FIXME: maybe we should reevaluate this?
(defvar *def-clx-class-use-defclass*
#+(or Genera allegro) t
#+(and cmu pcl) '(XLIB:DRAWABLE XLIB:WINDOW XLIB:PIXMAP)
#+(and cmu (not pcl)) nil
#-(or Genera cmu allegro) nil
#-(or Genera allegro) nil
"Controls whether DEF-CLX-CLASS uses DEFCLASS.
If it is a list, it is interpreted by DEF-CLX-CLASS to be a list of
......
......@@ -884,6 +884,47 @@
:element-type '(unsigned-byte 8)
:input t :output t :buffering :none))
#+cmu
(defun open-x-stream (host display protocol)
(let ((stream-fd
(ecase protocol
;; establish a TCP connection to the X11 server, which is
;; listening on port 6000 + display-number
((:internet :tcp nil)
(let ((fd (ext:connect-to-inet-socket host (+ *x-tcp-port* display))))
(unless (plusp fd)
(error 'connection-failure
:major-version *protocol-major-version*
:minor-version *protocol-minor-version*
:host host
:display display
:reason (format nil "Cannot connect to internet socket: ~S"
(unix:get-unix-error-msg))))
fd))
;; establish a connection to the X11 server over a Unix
;; socket. (:|| comes from Darwin's weird DISPLAY
;; environment variable)
((:unix :local :||)
(let ((path (unix-socket-path-from-host host display)))
(unless (probe-file path)
(error 'connection-failure
:major-version *protocol-major-version*
:minor-version *protocol-minor-version*
:host host
:display display
:reason (format nil "Unix socket ~s does not exist" path)))
(let ((fd (ext:connect-to-unix-socket (namestring path))))
(unless (plusp fd)
(error 'connection-failure
:major-version *protocol-major-version*
:minor-version *protocol-minor-version*
:host host
:display display
:reason (format nil "Can't connect to unix socket: ~S"
(unix:get-unix-error-msg))))
fd))))))
(system:make-fd-stream stream-fd :input t :output t :element-type '(unsigned-byte 8))))
;;; BUFFER-READ-DEFAULT for CMU Common Lisp.
;;;
;;; If timeout is 0, then we call LISTEN to see if there is any input.
......@@ -1643,7 +1684,7 @@ Returns a list of (host display-number screen protocol)."
(defmacro with-underlying-simple-vector
((variable element-type pixarray) &body body)
(declare (ignore element-type))
`(#+cmu kernel::with-array-data #+sbcl sb-kernel:with-array-data
`(#+cmu lisp::with-array-data #+sbcl sb-kernel:with-array-data
((,variable ,pixarray) (start) (end))
(declare (ignore start end))
,@body))
......@@ -1762,11 +1803,11 @@ Returns a list of (host display-number screen protocol)."
height width)
(declare (type array-index source-width sx sy dest-width dx dy height width))
#.(declare-buffun)
(kernel::with-array-data ((sdata source)
(lisp::with-array-data ((sdata source)
(sstart)
(send))
(declare (ignore send))
(kernel::with-array-data ((ddata dest)
(lisp::with-array-data ((ddata dest)
(dstart)
(dend))
(declare (ignore dend))
......
......@@ -15162,11 +15162,11 @@ a keycode.
@item
Convert the keycode into its corresponding keysym, based on the
current keyboard mapping. See @var{keycode->keysym}.
current keyboard mapping. See @var{keycode->keysym}.
@item
Convert the keysym into the corresponding Common Lisp character. See
@var{keysym->character}.
@var{keysym->character}.
@end enumerate
@menu
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment