[ltk-user] update?
Zdenek Eichler
zdenek.eichler at gcajkol.cz
Thu Oct 4 14:27:38 UTC 2007
Hello Peter,
this happened on SBCL 1.0.7 recompiled with multithreading, but i
thing more important is that this is on intel macbook.
I use standart tcl/tk aqua framework from apple.
When mouse is moving when selecting clicking on menubutton, this
happened:
"READER-ERROR on #<TWO-WAY-STREAM
:INPUT-STREAM #<SB-SYS:FD-STREAM for "descriptor
16" {12A11529}>
:OUTPUT-STREAM #<SB-SYS:FD-STREAM for "descriptor
15" {12A10B71}>>:
comma not inside a backquote"
And when I enable *debug-tk*, in listener i see this:
l:RCNE<=
l:SENDEVENTTOEVENTTARGET<=
l:(SUOM MOVED)<=
l:FAILED<=
senddatastring [tk_messageBox -message {READER-ERROR on #<TWO-WAY-
STREAM
:INPUT-STREAM #<SB-SYS:FD-STREAM for "descriptor
15" {1268ACA1}>
:OUTPUT-STREAM #<SB-SYS:FD-STREAM for "descriptor
14" {1268A2E9}>>:
comma not inside a backquote
Do you wish to invoke the debugger?} -title {Error} -type yesno -
icon question]
read-data error: -50
postponing event: (:CALLBACK "w20")
read-data: (:DATA "no")
l :(:CALLBACK "w20")<=
I can't find it now, but when i was repairing this error, i found
same where that this is specific to intel tcl/tk aqua.
If you want same thing else, please write me.
Zdenek Eichler
On Oct 4, 2007, at 4:04 PM, Peter Herth wrote:
> Hello Zdenek,
>
>
> On 10/1/07, Zdenek Eichler <zdenek.eichler at gcajkol.cz> wrote:
>> Hello,
>> i made some updates, may be useful.
>> i updated this function:
>>
>> (defun read-event (&key (blocking t) (no-event-value nil))
>> (or (pop (wish-event-queue *wish*))
>> (if (or blocking (can-read (wish-stream *wish*)))
>> (if (eql #\( (peek-char t (wish-stream *wish*) nil))
>> (read-preserving-whitespace (wish-stream *wish*) nil
>> nil)
>> (read-line (wish-stream *wish*) nil))
>> no-event-value)))
>>
>> Original function was not working under intel mac. Concretely made
>> error when you click on menubutton when mouse is moving. This error
>> is because of different version of tcl/tk aqua on intel and powerpc.
>
> Could you please describe, in which setup the bug appeared (which Lisp
> etc.), what exactly the bug was and how your changes fixed it?
>
>> And added same functions:
>>
>> This function allow to change menubutton state between normal, hidden
>> and disabled.
>> (defgeneric state (menu menu-label state))
>> (defmethod state ((a menu) menu-label state)
>> (format-wish "~a entryconfigure {~a} -state {~a}" (widget-path a)
>> menu-label state))
>>
>> This function allow to change label of menubutton. Important in Apple
>> HIG.
>> (defgeneric menu-label (menu old new))
>> (defmethod menu-label ((a menu) old new)
>> (format-wish "~a entryconfigure {~a} -label {~a}" (widget-path
>> a) old new))
>>
>> Allow to eneble or disable resizing window.
>> (defgeneric resizable (widget x y))
>> (defmethod resizable ((tl widget) x y)
>> (format-wish "wm resizable ~a ~a ~a" (widget-path tl) x y)
>> tl)
>
> I added those functions.
>
>>
>> Clear scrolled-listbox.
>> (defmethod listbox-clear ((l scrolled-listbox))
>> (listbox-clear (listbox l))
>> l)
>
> There is a fundamental problem with all the scrolled-* widgets. They
> wrap around a base widget but either we define all methods on the
> wrapped widget as delegates in the scrolled-* widget - or which I
> prefer, let the user just access the wrapped widget and call methods
> on those.
>
> Thanks for your additions,
>
> Peter
> _______________________________________________
> ltk-user site list
> ltk-user at common-lisp.net
> http://common-lisp.net/mailman/listinfo/ltk-user
More information about the ltk-user
mailing list