[Openmcl-devel] Additions to easygui

Alexander Repenning ralex at cs.colorado.edu
Thu Mar 26 09:31:47 PDT 2009


Platform-agnostic, I think, is the right way to go and does not cause  
any loss of access to lower levels, e.g., Cocoa, if necessary. LUI  
(Lisp User Interface) has the Mac first, Cocoa inspired point of view  
based on wrapper classes, e.g., see below. This way, you can quickly  
make native looking interfaces through generic interfaces. If you need  
platform specific behavior you can always access native data  
structures (e.g, native-view, native-window). The resulting object  
diagram may seem a bit complex but all of this happens, from the  
viewpoint of the developer, behind the scenes without much overhead.  
LUI only sets up the interface and manages layout but when it comes to  
time critical GUI code, e.g., rendering OpenGL code, then there is no  
overhead at all.



-------------- next part --------------
A non-text attachment was scrubbed...
Name: object diagram.jpg
Type: image/jpeg
Size: 80116 bytes
Desc: not available
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20090326/2cc886a1/attachment.jpg>
-------------- next part --------------


That is, the developer specifies the generic components (window and  
button in this case) via Lisp or XMLisp


<application-window title="resizable button and window">
   <bevel-button text="this button
will assume window  
size
when
you resize the window"/>
</application-window>

-------------- next part --------------
A non-text attachment was scrubbed...
Name: pastedGraphic.tiff
Type: image/tiff
Size: 25968 bytes
Desc: not available
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20090326/2cc886a1/attachment.tiff>
-------------- next part --------------





for ccl 1.2: http://www.agentsheets.com/lisp/Lisp-User-Interface.zip

alex


On Mar 26, 2009, at 9:33 AM, Gail Zacharias wrote:

> This looks like good stuff, I just have one suggestion:  it would be
> nice to keep the easygui API platform-agnostic, so that someday we
> could add other backends (e.g. win32 or gtk or Qt or ...).  Of course
> not everybody cares about being portable, so for applications that
> don't mind being Cocoa-specific, perhaps there could be a
> cocoa-easygui package that would export stuff like
> ns-point-from-point, *cocoa-event*, etc. while keeping the core
> easygui package for the portable API's.
>
>
> At 3/26/2009 08:09 AM, Arthur W Cater wrote:
>
>> I have extended the easygui package for ccl1.3 on darwin, it runs on
>> ppc32 and intel64.
>> It is necessary to run in an image created by (require :cocoa- 
>> application).
>> Try out (easygui-demo::run-demo).
>>
>> Here's hoping I haven't broken anything ...
>>
>> Arthur
>> _______________________________________________
>> Openmcl-devel mailing list
>> Openmcl-devel at clozure.com
>> http://clozure.com/mailman/listinfo/openmcl-devel
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
>

Prof. Alexander Repenning

University of Colorado
Computer Science Department
Boulder, CO 80309-430

vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf




More information about the Openmcl-devel mailing list