Add Gdk/Pango-interaction
[cl-gtk2.git] / gdk / gdk.screen.lisp
1 (in-package :gdk)
2
3 (defcfun gdk-screen-get-monitor-geometry :void
4   (screen (g-object screen))
5   (monitor-num :int)
6   (dest (g-boxed-foreign rectangle)))
7
8 (defun screen-get-monitor-geometry (screen monitor-num)
9   (let ((dest (make-rectangle)))
10     (gdk-screen-get-monitor-geometry screen monitor-num dest)
11     dest))
12
13 (export 'screen-get-monitor-geometry)
14
15 (defcfun (screen-get-monitor-at-point "gdk_screen_get_monitor_at_point") :int
16   (screen (g-object screen))
17   (x :int)
18   (y :int))
19
20 (export 'screen-get-monitor-at-point)
21
22 (defcfun (screen-get-monitor-at-window "gdk_screen_get_monitor_at_window") :int
23   (screen (g-object screen))
24   (window (g-object gdk-window)))
25
26 (export 'screen-get-monitor-at-window)
27
28 (defcfun (screen-get-monitor-height-mm "gdk_screen_get_monitor_height_mm") :int
29   (screen (g-object screen))
30   (monitor-num :int))
31
32 (defcfun (screen-get-monitor-width-mm "gdk_screen_get_monitor_width_mm") :int
33   (screen (g-object screen))
34   (monitor-num :int))
35
36 (export '(screen-get-monitor-height-mm screen-get-monitor-width-mm))
37
38 (defcfun (screen-get-monitor-plug-name "gdk_screen_get_monitor_plug_name") (glib:g-string :free-from-foreign t)
39   (screen (g-object screen))
40   (monitor-num :int))
41
42 (export 'screen-get-monitor-plug-name)
43
44 (defcfun (screen-broadcast-client-message "gdk_screen_broadcast_client_message") :void
45   (screen (g-object screen))
46   (event (g-boxed-foreign event)))
47
48 (export 'screen-broadcast-client-message)
49
50 (defcfun gdk-screen-get-setting :boolean
51   (screen (g-object screen))
52   (name :string)
53   (value :pointer))
54
55 (defun screen-get-setting (screen name)
56   (with-foreign-object (value 'g-value)
57     (g-value-zero value)
58     (when (gdk-screen-get-setting screen name value)
59       (prog1 (parse-g-value value)
60         (g-value-unset value)))))
61
62 (export 'screen-get-setting)
63
64 (defcfun gdk-spawn-command-line-on-screen :boolean
65   (screen (g-object screen))
66   (command-line :string)
67   (error :pointer))
68
69 (defun spawn-command-line-on-screen (screen command-line)
70   (glib:with-g-error (err)
71     (gdk-spawn-command-line-on-screen screen command-line err)))
72
73 (export 'spawn-command-line-on-screen)