;; 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: gtktypes.lisp,v 1.18 2004-11-07 17:55:29 espen Exp $
+;; $Id: gtktypes.lisp,v 1.20 2004-11-21 17:57:56 espen Exp $
(in-package "GTK")
:type string))
(:metaclass static-struct-class))
+;; We don't really need to access any of these slots, but we need to
+;; specify the size of the struct somehow
+(defclass tree-iter (boxed)
+ ((stamp :allocation :alien :type int)
+ (user-data :allocation :alien :type pointer)
+ (user-data2 :allocation :alien :type pointer)
+ (user-data3 :allocation :alien :type pointer))
+ (:metaclass boxed-class))
+
+
+;; (defclass tree-path (boxed)
+;; ((depth :allocation :alien :type int)
+;; (indices :allocation :alien :type pointer))
+;; (:metaclass boxed-class))
+
+(deftype tree-path () '(vector integer))
+(register-type 'tree-path "GtkTreePath")
+
+
(define-types-by-introspection "Gtk"
;; Manually defined
("GtkObject" :ignore t)
("GtkRequisition" :ignore t)
("GtkBorder" :ignore t)
-
+ ("GtkTreeIter" :ignore t)
+ ("GtkTreePath" :ignore t)
;; Manual override
("GtkWidget"
:allocation :virtual
:getter "gtk_tree_view_get_columns"
:reader tree-view-columns
- :type (glist tree-view-column))))
+ :type (glist tree-view-column))
+ (selection
+ :allocation :virtual
+ :getter "gtk_tree_view_get_selection"
+ :reader tree-view-selection
+ :type tree-selection)))
+
+ ("GtkTreeModel"
+ :slots
+ ((n-columns
+ :allocation :virtual
+ :getter "gtk_tree_model_get_n_columns"
+ :reader tree-model-n-columns
+ :type int)))
+
+ ("GtkTreeSelection"
+ :slots
+ ((mode
+ :allocation :virtual
+ :getter "gtk_tree_selection_get_mode"
+ :setter "gtk_tree_selection_set_mode"
+ :accessor tree-selection-mode
+ :initarg :mode
+ :type selection-mode)
+ (tree-view
+ :allocation :virtual
+ :getter "gtk_tree_selection_get_mode"
+ :reader tree-selection-mode
+ :type tree-view)))
("GtkComboBox"
:slots
:accessor combo-box-active-iter
:type tree-iter)))
+
;; Not needed
("GtkFundamentalType" :ignore t)