[info-mcl] Autoscaled-views

Octav Popescu octav at cmu.edu
Tue Sep 2 18:01:49 CDT 2008


Toomas Altosaar wrote:
>> Does anybody have a version of autoscaled-views that works under MCL 5.2?
>>
>> Thanks,
>> Octav
>>     
>
> Good question.
>
> I recall there was a french group that had their own autoscaling 
> system using floats, IIRC.
>
>   

The only one I'm aware of is Gilles Bisson's, which is still available 
from here:

http://www-leibniz.imag.fr/Apprentissage/Membres/Bisson/MCL/index.html

It doesn't quite work in MCL 5.2 however. It's trying to make a view 
without specifying its size, and that gets into an MCL bug on 
fred-mixin. So since I didn't know how to fix the bug, I found a 
workaround, by replacing the line:

 (unless (numberp init-size)     (remf initargs :view-size))

in initialize-instance :around simple-view with:

(when (and init-size (not (numberp init-size))) (setf (getf initargs 
:view-size) #@(100 100)))

and now it kind of works, but not quite. If you try to run the code 
below and resize the created window, you'll see some artifacts around 
some fields. It looks like the problem is with 
editable-text-dialog-item's frame and highlighting. Maybe somebody with 
more knowledge about MCL's window system can fix that? I emailed the 
author but I didn't get any reply.

Thanks,
Octav

(make-instance 'window
 :window-title "Dynamic window"
 :view-size #@(400 50)
 :theme-background t
 :view-subviews
 (list (make-dialog-item 'EDITABLE-TEXT-DIALOG-ITEM #@(20 15) #@(#%50-62 
18) "An editable text area")
       (make-dialog-item 'STATIC-TEXT-DIALOG-ITEM #@(#%50-32 15) #@(64 
18) "Some text")
       (make-dialog-item 'EDITABLE-TEXT-DIALOG-ITEM #@(#%50+42 15) 
#@(#%50-62 18) "An editable text area")))



More information about the info-mcl mailing list