axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] Axiom/TK project


From: Camm Maguire
Subject: Re: [Axiom-developer] Axiom/TK project
Date: 07 Jun 2005 09:52:34 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Hi Tim!  Just checking here as I know you've already done some work on
the gcl-tk first page I sent.  What's the current status?

It would appear that almost all the issues mentioned below are already
worked out in gcl-tk, at least on Linux at the moment, leaving only
the relatively simple but perhaps tedious job of writing the lisp
functions for the various pages.  No?

Take care,

address@hidden writes:

> Axiom runs on multiple systems but there are two GUI components,
> the browser and the graphics, that are not portable. They are
> written in C using X11.
> 
> The Axiom/TK project will recreate the same functionality using
> lisp and TK. Since both of these systems run on all platforms
> we will eliminate the portability problem and remove the remaining
> portion of C code from Axiom.
> 
> The tasks are listed below and are designed as steps that show progress
> in small increments that could take anywhere from a day to two weeks.
> 
> The project has two subgoals, a running browser and a running graphics.
> 
> The browser steps are:
> 
> Get a running lisp
>   GCL is preferred but any common lisp will do
> Get a running TK
>   Initially we can use a binary version
>   Later we need to build it from sources
> Connect lisp and TK
>   TK uses sockets so the lisp must handle sockets
>   GCL has an LTK (Lisp-TK) package but it is untested
> Show primitive capability
>   A newly started lisp should be able to start TK 
> Show the first browser screen
>   The first browser screen layout should be created from lisp
> Show an image in the browser screen
>   The browser shows images in the browser so this must be demonstrated
> Handle the buttons
>   The browser uses buttons for navigation so callbacks must be handled
> Handle the hyperlink
>   The browser uses callbacks to find the next page and open other windows
> Handle user input
>   The browser has text input which needs to be transmitted back to lisp
> Handle fonts
>   The browser uses bold and italic fonts
> Parse the browser pages
>   The browser uses a latex style page language which must be parsed in lisp.
> Connect to Axiom
>   The browser connects to the running Axiom thru sman and sockets
> Send commands to Axiom
>   The browser sends commands to Axiom thru sockets
> Receive commands from Axiom
>   Axiom sends page commands to the browser
> 
> The graphics subtask is very similar to the above and builds on the same code.
> However there are additional requirements.
> 
> Draw in a window
>   Initially we need to open a window and draw a line between two points
> Open a command window
>   Clicking on the graph opens a command window with controls
> Handle dual window interactions
>   Clicking on control buttons needs to change the graph
> Handle rotate, translate
>   The graphics controls know how to rotate and translate the graph
> Handle 2D drawing
>   Axiom has code that knows how to scale, draw axes, etc
> Handle 3D drawing
>   Axiom knows how to shade and smooth 3D objects
> Handle Axiom requests
>   Axiom sends point lists to the graphics
> Handle Axiom commands
>   Axiom can command rotations, shading, etc
> 
> 
> Tim
> 
> 
> _______________________________________________
> Axiom-developer mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/axiom-developer
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

[Prev in Thread] Current Thread [Next in Thread]