In what way is McCLIM is missing list and option pane gadgets? I implemented them over a year ago.
On 4/19/06, Paul Werkowski pw@snoopy.mv.com wrote:
For those interested, I have a mostly portable version of accept-values-pane running on lispworks CLIM and today I have it semi-working on McCLIM. Here is the patch file I load to supply missing parts of McCLIM. It would be cool if someone could add this functionality to the code base.
I plan to post my code in a few days once I figure out how to handle radio-box. The spec and McCLIM have radio-box :choices and :current-selection as toggle-button objects. CLIM makes things a bit easier so I want to make a wrapper around the button-object constraint.
What's really missing in McCLIM are list-pane and option-pane gadgets.
Another thing. CLIM puts with-look-and-feel-realization in the expansion of with-output-to-gadget. It would be good if McCLIM did as well. I don't think the spec forbids that.
Paul
;;; -*- Package: clim-internals -*- (in-package :clim-internals) ;;; Add missing view classes and +xxx-view+ objects. (macrolet ((frob (name) (let ((sym (intern (string name) :clim-internals)) (par (intern (concatenate 'string "+" (string name) "+") :clim-internals))) `(progn (defclass ,sym (clim:gadget-view)()) (import '(,sym ,par) :clim) (export '(,sym ,par) :clim) (defparameter ,par (make-instance ',sym)))))) (frob toggle-button-view) (frob push-button-view) (frob radio-box-view) (frob check-box-view) (frob slider-view) ;(frob text-field-view) (frob text-editor-view) (frob list-pane-view) (frob option-pane-view) ) (import '(name-key value-key test documentation-key) :clim) (export '(name-key value-key test documentation-key) :clim) (defun accept-present-default (type stream view default default-supplied-p present-p query-identifier) (funcall-presentation-generic-function accept-present-default type stream view default default-supplied-p present-p query-identifier)) (defmethod pane-frame ((pane standard-encapsulating-stream)) (pane-frame (encapsulating-stream-stream pane))) (defmethod invoke-with-sheet-medium-bound (continuation (medium null) (sheet standard-encapsulating-stream)) (invoke-with-sheet-medium-bound continuation medium (encapsulating-stream-stream sheet))) _______________________________________________ mcclim-devel mailing list mcclim-devel@common-lisp.net http://common-lisp.net/cgi-bin/mailman/listinfo/mcclim-devel