[mcclim-cvs] CVS mcclim/Examples

dlichteblau dlichteblau at common-lisp.net
Sat Dec 23 21:44:04 UTC 2006


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)))
 
 
 




More information about the Mcclim-cvs mailing list