Keith L. Downing | 6 May 23:34
Raffael Cavallaro | 7 May 02:31

Re: The barest of bare-bones graphics


On May 6, 2008, at 5:39 PM, Keith L. Downing wrote:

> It's not well commented, but if you read the code, you'll at least  
> see WHAT Cocoa primitives are probably worth
> reading up on, such as the Bezier curve stuff, the ns-view and ns- 
> window classes, etc.

You want to add a defpackage form - the file starts with (in- 
package :SEUSS) but that package hasn't been defined.

regards,

Ralph

Raffael Cavallaro, Ph.D.
raffaelcavallaro@...

_______________________________________________
info-mcl mailing list
info-mcl@...
http://clozure.com/mailman/listinfo/info-mcl

Keith L. Downing | 7 May 10:10

Re: The barest of bare-bones graphics

Ralph:

   Thanks.

... Keith

On May 7, 2008, at 2:31 AM, Raffael Cavallaro wrote:

>
> On May 6, 2008, at 5:39 PM, Keith L. Downing wrote:
>
>> It's not well commented, but if you read the code, you'll at least
>> see WHAT Cocoa primitives are probably worth
>> reading up on, such as the Bezier curve stuff, the ns-view and ns-
>> window classes, etc.
>
> You want to add a defpackage form - the file starts with (in-
> package :SEUSS) but that package hasn't been defined.
>
> regards,
>
> Ralph
>
>
>
> Raffael Cavallaro, Ph.D.
> raffaelcavallaro@...
>
> _______________________________________________
> info-mcl mailing list
(Continue reading)

Raffael Cavallaro | 7 May 02:57

Re: The barest of bare-bones graphics


On May 6, 2008, at 5:39 PM, Keith L. Downing wrote:

> WHAT Cocoa primitives are probably worth
> reading up on, such as the Bezier curve stuff, the ns-view and ns- 
> window classes, etc.

Your function kdwait is not what you want - it uses 100% cpu during  
the wait. The built in common lisp function sleep is another option.  
Still another is NSTimer and Run
Loops:
<http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSTimer_Class/Reference/NSTimer.html 
 >

regards,

Ralph

Raffael Cavallaro, Ph.D.
raffaelcavallaro@...

_______________________________________________
info-mcl mailing list
info-mcl@...
http://clozure.com/mailman/listinfo/info-mcl

p2.edoc | 7 May 14:08

Re: The barest of bare-bones graphics

Thanks Keith.

I don't follow all your reasoning, but every Lisp friendly 
translation of Cocoa or Objective-C helps me gradually get the right 
end of the stick. Much easier to read and reverse engineer than a 
mountain of documentation that assumes one already knows the C or 
MacOS guts that one's trying to learn about!

Not sure why the class seuss::cocoa-window is defined so the actual 
window is just a slot in it.

Nor understanding quite why the seuss::kd-make-simple-window returns 
the view within the window rather than the window.

All in, in your example material, I don't find the handle "window" 
seems to relate to window objects directly.  Perhaps it'd work better 
if seuss::cocoa-window were called something like 
seuss::cocoa-window-holder ?

Perhaps we could all add code at the top of files to catch which 
version of ClozureCL is to be used.
In Version 1.1-r7809 (DarwinPPC32), (seuss::thing-1) hangs.
(haven't started un-picking that yet)
(I'm still with CCL 1.1 as I assumed a lisp user friendly Hemlock 
installed version of CCL 1.2 is just about to appear - at least I'm 
hoping).

Wherever you allocate a Cocoa structure (eg. a ns:ns-bezier-path 
object), you abandon the object (and LIsp object where you create 
that) after using it to draw. I assume the idea is that the 
(Continue reading)

Keith L. Downing | 7 May 16:23

Re: The barest of bare-bones graphics

There are surely others who can answer some of these questions better  
than I, but a few things are "personal", so I'll try:

On May 7, 2008, at 2:08 PM, p2.edoc@... wrote:

> Thanks Keith.
>
> I don't follow all your reasoning, but every Lisp friendly
> translation of Cocoa or Objective-C helps me gradually get the right
> end of the stick. Much easier to read and reverse engineer than a
> mountain of documentation that assumes one already knows the C or
> MacOS guts that one's trying to learn about!
>
> Not sure why the class seuss::cocoa-window is defined so the actual
> window is just a slot in it.

 From what I've gathered, you need an ns-window and then an ns-view  
within the window.  So I just wanted to create the simplest of both.   
I also wanted to just
pass around the view and let it be drawn onto.  If you actually need  
the ns-window object (for example when you want to resize the window)  
then you can get it from the view.  I don't want to have to think about
the view-vs-window distinction very much, so I called the view a  
simple-window in places, but the abstraction was not well thought out  
by any means.
>
>
> Nor understanding quite why the seuss::kd-make-simple-window returns
> the view within the window rather than the window.

(Continue reading)


Gmane