ac3f371956bf34451ed28a51940075d2c96158ca
[cl-gtk2.git] / gtk / gtk.tree-view-column.lisp
1 (in-package :gtk)
2
3 (defcfun gtk-tree-view-column-pack-start :void
4   (tree-column (g-object tree-view-column))
5   (cell (g-object cell-renderer))
6   (expand :boolean))
7
8 (defun tree-view-column-pack-start (tree-column cell &key (expand t))
9   (gtk-tree-view-column-pack-start tree-column cell expand))
10
11 (export 'tree-view-column-pack-start)
12
13 (defcfun gtk-tree-view-column-pack-end :void
14   (tree-column (g-object tree-view-column))
15   (cell (g-object cell-renderer))
16   (expand :boolean))
17
18 (defun tree-view-column-pack-end (tree-column cell &key (expand t))
19   (gtk-tree-view-column-pack-end tree-column cell expand))
20
21 (export 'tree-view-column-pack-end)
22
23 (defcfun (tree-view-column-clear "gtk_tree_view_column_clear") :void
24   (tree-column (g-object tree-view-column)))
25
26 (export 'tree-view-column-clear)
27
28 (defcfun (tree-view-column-add-attribute "gtk_tree_view_column_add_attribute") :void
29   (tree-column (g-object tree-view-column))
30   (cell-renderer (g-object cell-renderer))
31   (attribute :string)
32   (column :int))
33
34 (export 'tree-view-column-add-attribute)
35
36 (defcallback gtk-tree-cell-data-func-cb :void
37     ((tree-column (g-object tree-column))
38      (cell (g-object cell-renderer))
39      (tree-model (g-object tree-model))
40      (iter (g-boxed-ref tree-iter))
41      (data :pointer))
42   (let ((fn (get-stable-pointer-value data)))
43     (restart-case
44         (funcall fn tree-column cell tree-model iter)
45       (return-from-tree-cell-data-function () nil))))
46
47 (defcallback gtk-tree-cell-data-func-destroy-cb :void ((data :pointer))
48   (free-stable-pointer data))
49
50 (defcfun gtk-tree-view-column-set-cell-data-func :void
51   (tree-column (g-object tree-column))
52   (cell-renderer (g-object cell-renderer))
53   (func :pointer)
54   (func-data :pointer)
55   (destroy-notify :pointer))
56
57 (defun tree-view-column-set-cell-data-function (tree-column cell-renderer function)
58   (gtk-tree-view-column-set-cell-data-func
59    tree-column
60    cell-renderer
61    (callback gtk-tree-cell-data-func-cb)
62    (allocate-stable-pointer function)
63    (callback gtk-tree-cell-data-func-destroy-cb)))
64
65 (defcfun (tree-view-column-clear-attributes "gtk_tree_view_column_clear_attributes") :void
66   (tree-column (g-object tree-column))
67   (cell-renderer (g-object cell-renderer)))
68
69 (export 'tree-view-column-clear-attributes)
70
71 (defcfun (tree-view-column-cell-set-cell-data "gtk_tree_view_column_cell_set_cell_data") :void
72   (tree-column (g-object tree-view-column))
73   (tree-model (g-object tree-model))
74   (iter (g-boxed-ref tree-iter))
75   (is-expander :boolean)
76   (is-expanded :boolean))
77
78 (export 'tree-view-column-set-cell-data)
79
80 ;; TODO gtk_tree_view_column_cell_get_size () gtk_tree_view_column_cell_get_position ()
81
82 (defcfun (tree-view-column-focus-cell "gtk_tree_view_column_focus_cell") :void
83   (tree-column (g-object tree-view-column))
84   (cell-renderer (g-object cell-renderer)))
85
86 (export 'tree-view-column-focus-cell)
87
88 (defcfun (tree-view-column-queue-resize "gtk_tree_view_column_queue_resize") :void
89   (tree-column (g-object tree-view-column)))
90
91 (export 'tree-view-column-queue-resize)