Add GdkImage declaration stub and documentation stub for it
[cl-gtk2.git] / gdk / gdk.functions.lisp
1 (in-package :gdk)
2
3 (defcfun (default-screen "gdk_screen_get_default") (g-object gdk-screen))
4 (export 'default-screen)
5
6 (defcfun (default-display "gdk_display_get_default") (g-object display))
7 (export 'default-display)
8
9 (defcfun gdk-window-get-events event-mask
10   (window (g-object gdk-window)))
11
12 (defcfun gdk-window-set-events :void
13   (window (g-object gdk-window))
14   (flags event-mask))
15
16 (defun gdk-window-events (window)
17   (gdk-window-get-events window))
18
19 (defun (setf gdk-window-events) (new-value window)
20   (gdk-window-set-events window new-value))
21
22 (defcfun gdk-gc-new (g-object graphics-context :already-referenced)
23   (drawable (g-object drawable)))
24
25 (defcfun gdk-draw-line :void
26   (drawable (g-object drawable))
27   (gc (g-object graphics-context))
28   (x1 :int)
29   (y1 :int)
30   (x2 :int)
31   (y2 :int))
32
33 (defcfun gdk-gc-set-rgb-fg-color :void
34   (gc (g-object graphics-context))
35   (color (g-boxed-foreign color)))
36
37 (defcfun gdk-drawable-get-size :void
38   (drawable (g-object drawable))
39   (width (:pointer :int))
40   (height (:pointer :int)))
41
42 (defun drawable-get-size (drawable)
43   (with-foreign-objects ((x :int)
44                          (y :int))
45     (gdk-drawable-get-size drawable x y)
46     (values (mem-ref x :int) (mem-ref y :int))))
47
48 (define-g-object-class "PangoLayout" pango-layout (:type-initializer "pango_layout_get_type") ())
49
50 (defcfun gdk-draw-layout :void
51   (drawable (g-object drawable))
52   (gc (g-object graphics-context))
53   (x :int)
54   (y :int)
55   (layout (g-object pango-layout)))
56
57 (defcfun gdk-atom-name (glib:g-string :free-from-foreign t)
58   (atom gdk-atom))
59
60 (defcfun gdk-atom-intern gdk-atom
61   (name :string)
62   (only-if-exists :boolean))
63
64 (export 'drawable-size)
65
66 (defcfun gdk-pixbuf-get-from-drawable (g-object pixbuf)
67   (dest (g-object pixbuf))
68   (src (g-object drawable))
69   (colormap :pointer)
70   (src-x :int)
71   (src-y :int)
72   (dest-x :int)
73   (dest-y :int)
74   (width :int)
75   (height :int))
76
77 (defun pixbuf-get-from-drawable (pixbuf drawable &key (src-x 0) (src-y 0) (dest-x 0) (dest-y 0) (width -1) (height -1))
78   (gdk-pixbuf-get-from-drawable pixbuf drawable (null-pointer) src-x src-y dest-x dest-y width height))
79
80 (export 'pixbuf-get-from-drawable)
81
82 (defcfun gdk-pixbuf-savev :boolean
83   (pixbuf (g-object pixbuf))
84   (filename :string)
85   (type :string)
86   (option-keys (:pointer (:pointer :char)))
87   (option-values (:pointer (:pointer :char)))
88   (error :pointer))
89
90 (defun pixbuf-save (pixbuf filename type)
91   (gdk-pixbuf-savev pixbuf
92                     (etypecase filename
93                       (string filename)
94                       (pathname (namestring filename)))
95                     type
96                     (null-pointer)
97                     (null-pointer)
98                     (null-pointer)))
99
100 (export 'pixbuf-save)