Update of /project/mcclim/cvsroot/mcclim/Examples In directory clnet:/tmp/cvs-serv20070/Examples
Modified Files: demodemo.lisp Log Message:
Implement (SETF LIST-PANE-ITEMS) as discussed on IRC.
* package.lisp (CLIM-EXTENSIONS): Export LIST-PANE-ITEMS.
* Examples/demodemo.lisp: Extend the LIST-TEST to demonstrate the new functionality. * gadgets.lisp ((SETF LIST-PANE-ITEMS)): Add a new generic function. Implement it for GENERIC-LIST-PANE, with some general code specialized on META-LIST-PANE.
* Backends/gtkairo/gadgets.lisp: Implement (SETF LIST-PANE-ITEMS) for GTK-LIST, too.
* Backends/gtkairo/ffi.lisp: regenerated.
--- /project/mcclim/cvsroot/mcclim/Examples/demodemo.lisp 2006/12/19 04:08:58 1.14 +++ /project/mcclim/cvsroot/mcclim/Examples/demodemo.lisp 2006/12/23 21:44:04 1.15 @@ -205,16 +205,32 @@
(define-application-frame list-test () () + (:panes + (substring :text-field :value "INTER") + (result-list + (make-pane 'list-pane + :value 'clim:region-intersection + :items (apropos-list "INTER" :clim t) + :name-key (lambda (x) (format nil "~(~S~)" x))))) (:layouts (defaults (labelling (:label "Matching symbols" :text-style (make-text-style :sans-serif :roman :normal)) - (scrolling (:height 200) - (make-pane 'list-pane - :value 'clim:region-intersection - :items (apropos-list "INTER" :clim t) - :name-key (lambda (x) (format nil "~(~S~)" x)) - )))))) + (vertically () + (scrolling (:height 200) + result-list) + (horizontally () + substring + (make-pane 'push-button + :label "Update" + :activate-callback 'update-list-test))))))) + +(defun update-list-test (pane) + (declare (ignore pane)) + (setf (list-pane-items (find-pane-named *application-frame* 'result-list)) + (apropos-list (gadget-value + (find-pane-named *application-frame* 'substring)) + :clim t)))