Fix some compilation warnings
[cl-gtk2.git] / gtk / gtk.objects.lisp
1 (in-package :gtk)
2
3 (define-g-boxed-cstruct border "GtkBorder"
4   (left :int :initform 0)
5   (right :int :initform 0)
6   (top :int :initform 0)
7   (bottom :int :initform 0))
8
9 (at-init () (foreign-funcall "gtk_border_get_type" :int))
10 (at-init () (foreign-funcall "gtk_ui_manager_get_type" :int))
11
12 (export (boxed-related-symbols 'border))
13
14 (define-foreign-type pointer-as-integer-foreign-type ()
15   ()
16   (:actual-type :pointer)
17   (:simple-parser pointer-as-integer))
18
19 (defmethod translate-to-foreign (value (type pointer-as-integer-foreign-type))
20   (make-pointer value))
21
22 (defmethod translate-from-foreign (value (type pointer-as-integer-foreign-type))
23   (pointer-address value))
24
25 (define-g-boxed-cstruct tree-iter "GtkTreeIter"
26   (stamp :int :initform 0)
27   (user-data pointer-as-integer :initform 0)
28   (user-data-2 pointer-as-integer :initform 0)
29   (user-data-3 pointer-as-integer :initform 0))
30
31 (export 'tree-iter)
32 (export 'tree-iter-stamp)
33 (export 'tree-iter-user-data)
34
35 (defctype tree-path :pointer)
36
37 (defcfun gtk-tree-path-new :pointer)
38 (defcfun gtk-tree-path-free :void (path :pointer))
39
40 (define-g-boxed-opaque tree-path "GtkTreePath"
41   :alloc (gtk-tree-path-new))
42
43 (defcfun (%gtk-tree-path-get-depth "gtk_tree_path_get_depth") :int
44   (path tree-path))
45
46 (defcfun (%gtk-tree-path-get-indices "gtk_tree_path_get_indices") (:pointer :int)
47   (path tree-path))
48
49 (defcfun (%gtk-tree-path-append-index "gtk_tree_path_append_index") :void
50   (path :pointer)
51   (index :int))
52
53 (defun tree-path-indices (path)
54   (tree-path-get-indices path))
55
56 (defun (setf tree-path-indices) (new-value path)
57   (tree-path-set-indices new-value path))
58
59 (defun tree-path-get-indices (path)
60   (setf path (pointer path))
61   (let ((n (%gtk-tree-path-get-depth path))
62         (indices (%gtk-tree-path-get-indices path)))
63     (loop
64        for i from 0 below n
65        collect (mem-aref indices :int i))))
66
67 (defun tree-path-set-indices (indices path)
68   (setf path (pointer path))
69   (loop 
70      repeat (%gtk-tree-path-get-depth path)
71      do (foreign-funcall "gtk_tree_path_up" :pointer path :boolean))
72   (loop
73      for index in indices
74      do(foreign-funcall "gtk_tree_path_append_index" :pointer path :int index :void)))
75
76 (export 'tree-path)
77 (export 'tree-path-indices)
78
79 (define-g-enum "PangoWrapMode" pango-wrap-mode
80     (:export t :type-initializer
81              "pango_wrap_mode_get_type")
82   (:word 0) (:char 1) (:word-char 2))
83
84 (define-g-enum "PangoEllipsizeMode" pango-ellipsize-mode
85     (:export t :type-initializer
86              "pango_ellipsize_mode_get_type")
87   (:none 0) (:start 1) (:middle 2) (:end 3))
88
89 (defcfun (adjustment-clamp-page "gtk_adjustment_clamp_page") :void
90   (adjustment (g-object adjustment))
91   (lower :double)
92   (upper :double))
93
94 (export 'adjustment-clamp-page)
95
96 (define-g-boxed-cstruct requisition "GtkRequisition"
97   (width :int :initform 0)
98   (height :int :initform 0))
99
100 (export (boxed-related-symbols 'requisition))
101
102 (define-g-boxed-cstruct allocation "GtkAllocation"
103   (x :int :initform 0)
104   (y :int :initform 0)
105   (width :int :initform 0)
106   (height :int :initform 0))
107
108 (export (boxed-related-symbols 'allocation))