Ingo,

thanks again for the patch.  I it is now in CVS.

> 1. If libcellsgtk is not used (gtk-init...) never seems to be called.

Yep, stupid typo of mine.  Sorry about that.

> 2. Also if used in a single threading environment (like clisp)
>   (g-thread-init...) and (gdk-threads-init) do get called which
>   results in an error.

Hmm, I never changed that, I think.  They were always called in
cells-gtk if IIRC.  However, if it does no harm to leave them out,
then that seems the right thing to do.

Are you on windows or linux?  I'm just guessing, but it might be the
case that it is a GTK issue and not a cells-gtk issue whether to call
them:  On linux GTK supports threads, so it might be necessary to call
those (even if you don't use threads yourself).  On windows it
doesn't, so maybe you can't call them.  In this case, we should
condition on :unix vs. :windows.  But again, I'm just guessing.  If
you're on linux, then forget everything I said.


As to the call-next-method thing, the background is this:  Cells uses
progn method combination for observers, which is not available on
clisp (or at least, used to not be available on clisp).

Therefore cells needed to imitate it by using standard method
combination and (call-next-method) in every method.  You see a lot of
these calls in cells-gtk:

[EMAIL PROTECTED]:~/cells-gtk3/cells-gtk$ grep clisp *.lisp
actions.lisp:  #+clisp (call-next-method))
buttons.lisp:  #+clisp (call-next-method))
buttons.lisp:  #+clisp (call-next-method))
...

However, I see that cells3 only uses this imitation on corman lisp now:

[EMAIL PROTECTED]:~/lisp/cells3.cvs$ grep progn cells.lisp
  (:method-combination progn))
(defmethod slot-value-observe #-(or cormanlisp) progn

So maybe this means that clisp now supports progn method combination,
which the error message suggests:

#<STANDARD-GENERIC-FUNCTION SLOT-VALUE-OBSERVE>: CALL-NEXT-METHOD is
invalid within PROGN methods

Than it would be time to remove all those calls to call-next-method
from cells-gtk.  I'd suggest you just go ahead and deactivate all
those calls (e.g by conditioning on :no-progn-combination instead of
:clisp), which should remove those warnings.

Cheers,
Peter
_______________________________________________
cells-gtk-devel site list
cells-gtk-devel@common-lisp.net
http://common-lisp.net/mailman/listinfo/cells-gtk-devel

Reply via email to