From cc9d465b23de8b5ed2126d69b59abda7507ac6f8 Mon Sep 17 00:00:00 2001 From: espen Date: Fri, 3 Mar 2006 19:00:12 +0000 Subject: [PATCH] TREE-MODEL-VALUE made a generic function --- gtk/gtktree.lisp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/gtk/gtktree.lisp b/gtk/gtktree.lisp index 20f79ab..81d6474 100644 --- a/gtk/gtktree.lisp +++ b/gtk/gtktree.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: gtktree.lisp,v 1.17 2006-02-28 16:33:39 espen Exp $ +;; $Id: gtktree.lisp,v 1.18 2006-03-03 19:00:12 espen Exp $ (in-package "GTK") @@ -81,7 +81,9 @@ (call-next-method) (%list-store-set-column-types list-store column-types) (when column-names - (setf (object-data list-store 'column-names) column-names)) + (setf + (object-data list-store 'column-names) + (coerce column-names 'vector))) (when initial-content (loop with iter = (make-instance 'tree-iter) @@ -322,7 +324,9 @@ (column int) (gvalue gvalue)) -(defun tree-model-value (model row column) +(defgeneric tree-model-value (model row column)) + +(defmethod tree-model-value ((model tree-model) row column) (let ((index (column-index model column)) (iter (etypecase row (tree-iter row) @@ -461,7 +465,9 @@ (funcall setter value iter)) row setters))))))) -(defun (setf tree-model-value) (value model row column) +(defgeneric (setf tree-model-value) (value model row column)) + +(defmethod (setf tree-model-value) (value (model tree-model) row column) (let ((iter (etypecase row (tree-iter row) (tree-path (multiple-value-bind (valid iter) -- 2.11.0