X-Git-Url: https://git.distorted.org.uk/~mdw/clg/blobdiff_plain/3d36c5d66c327143ac12c3c2222352618da3123c..7554d66ce2d63597f774c885ad43bc2bab68c396:/gtk/gtktree.lisp diff --git a/gtk/gtktree.lisp b/gtk/gtktree.lisp index 8025a15..d25cfb1 100644 --- a/gtk/gtktree.lisp +++ b/gtk/gtktree.lisp @@ -1,5 +1,5 @@ ;; Common Lisp bindings for GTK+ v2.0 -;; Copyright (C) 1999-2001 Espen S. Johnsen +;; Copyright (C) 1999-2005 Espen S. Johnsen ;; ;; This library is free software; you can redistribute it and/or ;; modify it under the terms of the GNU Lesser General Public @@ -15,7 +15,7 @@ ;; License along with this library; if not, write to the Free Software ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -;; $Id: gtktree.lisp,v 1.6 2005/02/03 23:09:09 espen Exp $ +;; $Id: gtktree.lisp,v 1.8 2005/03/03 10:05:32 espen Exp $ (in-package "GTK") @@ -47,11 +47,12 @@ (defbinding cell-layout-clear () nil (cell-layout cell-layout)) -(defbinding cell-layout-add-attribute (cell-layout cell attribute column) nil +(defbinding cell-layout-add-attribute + (cell-layout cell attribute column &optional model) nil (cell-layout cell-layout) (cell cell-renderer) ((string-downcase attribute) string) - (column int)) + ((if model (column-index model column) column) int)) (def-callback-marshal %cell-layout-data-func (nil cell-layout cell-renderer tree-model (copy-of tree-iter))) @@ -274,6 +275,12 @@ #'(lambda (location &optional (offset 0)) (%tree-path-to-vector (funcall reader location offset))))) +(defmethod destroy-function ((type (eql 'tree-path)) &rest args) + (declare (ignore type args)) + (let ((reader (reader-function 'pointer))) + #'(lambda (location &optional (offset 0)) + (%tree-path-free (funcall reader location offset))))) + (defbinding %tree-row-reference-new () pointer (model tree-model)