Index of /pub/X/opengroup/R5contrib/xakcl

Icon  Name                        Last modified      Size  Description
[PARENTDIR] Parent Directory - [CMP] xakcl.tar.Z 1993-04-15 08:00 167K [VID] Xakcl.sun4 1993-04-15 08:00 3.6M [VID] Xakcl.hp 1993-04-15 08:00 3.5M [TXT] README 1993-04-15 08:00 4.4K
README file for the Xakcl interface between akcl and X windows.  04 Sep 92

Copyright (c) 1992, The University of Texas at Austin.  All rights reserved.
See the file "copyright" for full copyright statement.

	Xakcl is an interface from akcl to the Xwindows library,
written by Hiep Huu Nguyen ( hhnguyen@cs.utexas.edu ).  Xakcl has been
tested on the HP9000 and SUN4 but should work on any machine that runs
an akcl that allows dynamic linking (i.e. the Suns, Decs). In order to
create Xakcl, it is necesary to have akcl running.

        dwindow.lsp is an "easy to use" interface from Lisp to Xakcl,
written by Gordon S. Novak Jr. ( novak@cs.utexas.edu )  It is written in
GLISP and has been translated into the Common Lisp file dwtrans.lsp ,
which is what most users will use.  Documentation is provided in the
LaTex file dwdoc.tex .  Test files are dwtest.lsp and pcalc.lsp .


	Akcl and Xakcl can be ftp'ed from 

rascal.ics.utexas.edu              128.83.138.20
cli.com                            192.31.85.1

	The file is called xakcl.tar.Z.  ftp it to your site and
uncompress and un-tar it:

        uncompress xakcl.tar.Z
        tar -xf xakcl.tar


After un-taring, the Xakcl direcotory contains the files:

Events.c
Makefile
README
X.lsp
X10.lsp
XAtom.lsp
XStruct-2.c
XStruct-4.c
XStruct-l-3.lsp
Xakcl.example.lsp
Xakcl.paper
Xinit.lsp
Xlib.lsp
Xstruct.lsp
Xutil-2.c
Xutil.lsp
copyright
defentry-events.lsp
dispatch-events.lsp
dwdoc.tex
dwindow.lsp
dwtest.lsp
dwtrans.lsp
foo.del
general-c.c
general.lsp
keysymdef.lsp
make-xakcl.lsp
pcalc.lsp


These files contain:

	c code necesary for some general facilities and
	interface into X, in the files:


Events.c  
XStruct-4.c 
XStruct-2.c          
Xutil-2.c  
general-c.c 


The lisp and shell makefiles that compile and create Xakcl are:

make-xakcl.lsp:
Makefile             



For reference the lisp interfaces to functions reside in:

Xlib.lsp 
Xstruct.lsp
general.lsp
Xutil.lsp
XStruct-l-3.lsp      
defentry-events.lsp


Constant declarations are in:
X.lsp                
XAtom.lsp            
keysymdef.lsp
X10.lsp



These files correspond to C header files for X windows:

Xlib.lsp
Xutil.lsp 
X.lsp                
XAtom.lsp            
keysymdef.lsp
X10.lsp


What little documentation there is:

Xakcl.paper

Also see Xakcl.example.lsp for some PRIMITIVE examples.

dwindow package files:

dwindow.lsp    source code, written in GLISP
dwtrans.lsp    dwindow.lsp translated to plain Common Lisp
dwdoc.tex      documentation in LaTex
dwtest.lsp     examples of use of dwindow
pcalc.lsp      pocket calculator	

	
	In order to make Xakcl, first edit the Makefile and change the
IFLAGS variable to your system configuration.  Then run akcl.  Load
the file "make-xackl.lsp". Compile the files with (compile-xakcl).
Set the variable *libs* to your library paths. Then make xakcl with
(make-xakcl).  This will save a lisp image called Xakcl in your
directory.  If you do not want to save the lisp image (which is about
3 megabytes), you can compile Xakcl once, and comment out the line
(save "Xakcl") from the function make-xakcl.  Save this file, and when
you want to use Xakcl call make-xakcl.  Now make-xakcl will only link
in the Xackl library without saving the lisp image.  it takes about 3
minutes to do this.

	% ;; edit the Makfile ....

	%akcl
	
	>(load "make-xakcl.lsp")

	>(compile-xakcl)
	
	....
	
	>(setq *libs* "-L /usr/local/lib/X11 -L /usr/local/lib") ;; ie for HP 
	
	  or 
	>(setq *libs* "-L/usr/local/libX11 -L/usr/local/lib") ;; for suns
	
	>(make-xakcl)

	....


After making an image of Xakcl,  run Xakcl with the command 'Xakcl'.
Below is a sample session.


%Xakcl

AKCL (Austin Kyoto Common Lisp)  Version(1.605) Wed Dec 18 12:57:00 CST 1991
Contains Enhancements by W. Schelter

>(load "Xinit.lsp")
Loading Xinit.lsp
Finished loading Xinit.lsp
T

>(Xinit)
NIL

>(open-window)
10485761

>(bye)
Bye.

As you can see, all that happened was that a simple window appeared.
Read the paper Xakcl.paper for more details.


To try the dwindow package, do the following:

%Xakcl
(load "dwtrans.o")    ; compiled dwtrans.lsp = translated dwindow functions
(load "dwtest.lsp")   ; test functions
(wtesta)              ; make a window
(wtestb)              ; draw some stuff
(wtestc)              ; choose from menu, then click in window
(wtestd)              ; menu with icons
(wteste)              ; picture menu with sensitive points
(wtesth)              ; arrows
(load "pcalc.lsp")
(pcalc)               ; pocket calculator