]> Pileus Git - ~andy/gtk/blob - gdk/quartz/gdkdisplay-quartz.c
Initialize GdkInput.
[~andy/gtk] / gdk / quartz / gdkdisplay-quartz.c
1 /* gdkdisplay-quartz.c
2  *
3  * Copyright (C) 2005 Imendio AB
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  */
20
21 #include <config.h>
22
23 #include "gdk.h"
24 #include "gdkprivate-quartz.h"
25
26 GdkWindow *
27 gdk_display_get_default_group (GdkDisplay *display)
28 {
29   g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
30
31   /* FIXME: Implement */
32
33   return NULL;
34 }
35
36 void
37 _gdk_windowing_set_default_display (GdkDisplay *display)
38 {
39   g_assert (_gdk_display == display);
40 }
41
42 GdkDisplay *
43 gdk_display_open (const gchar *display_name)
44 {
45   if (_gdk_display != NULL)
46     return NULL;
47
48   _gdk_display = g_object_new (GDK_TYPE_DISPLAY, NULL);
49   _gdk_screen = g_object_new (GDK_TYPE_SCREEN, NULL);
50
51   /* Initialize application */
52   [NSApplication sharedApplication];
53
54   _gdk_visual_init ();
55   gdk_screen_set_default_colormap (_gdk_screen,
56                                    gdk_screen_get_system_colormap (_gdk_screen));
57   _gdk_windowing_window_init ();
58
59   _gdk_events_init ();
60   _gdk_input_init ();
61
62 #if 0
63   /* FIXME: Remove the #if 0 when we have these functions */
64   _gdk_dnd_init ();
65 #endif
66
67   g_signal_emit_by_name (gdk_display_manager_get (),
68                          "display_opened", _gdk_display);
69
70   return _gdk_display;
71 }
72
73 G_CONST_RETURN gchar *
74 gdk_display_get_name (GdkDisplay *display)
75 {
76   /* FIXME: Implement */
77   return NULL;
78 }
79
80 int
81 gdk_display_get_n_screens (GdkDisplay *display)
82 {
83   g_return_val_if_fail (GDK_IS_DISPLAY (display), 0);
84
85   return 1;
86 }
87
88 GdkScreen *
89 gdk_display_get_screen (GdkDisplay *display,
90                         gint        screen_num)
91 {
92   g_return_val_if_fail (GDK_IS_DISPLAY (display), NULL);
93   g_return_val_if_fail (screen_num == 0, NULL);
94
95   return _gdk_screen;
96 }
97
98 GdkScreen *
99 gdk_display_get_default_screen (GdkDisplay *display)
100 {
101   return _gdk_screen;
102 }
103
104 void
105 gdk_display_beep (GdkDisplay *display)
106 {
107   g_return_if_fail (GDK_IS_DISPLAY (display));
108
109   NSBeep();
110 }
111
112 gboolean 
113 gdk_display_supports_selection_notification (GdkDisplay *display)
114 {
115   g_return_val_if_fail (GDK_IS_DISPLAY (display), FALSE);
116
117   /* FIXME: Implement */
118   return FALSE;
119 }
120
121 gboolean 
122 gdk_display_request_selection_notification (GdkDisplay *display,
123                                             GdkAtom     selection)
124
125 {
126   /* FIXME: Implement */
127   return FALSE;
128 }
129
130 gboolean
131 gdk_display_supports_clipboard_persistence (GdkDisplay *display)
132 {
133   /* FIXME: Implement */
134   return FALSE;
135 }
136
137 gboolean 
138 gdk_display_supports_shapes (GdkDisplay *display)
139 {
140   /* FIXME: Implement */
141   return FALSE;
142 }
143
144 gboolean 
145 gdk_display_supports_input_shapes (GdkDisplay *display)
146 {
147   /* FIXME: Implement */
148   return FALSE;
149 }
150
151 void
152 gdk_display_store_clipboard (GdkDisplay *display,
153                              GdkWindow  *clipboard_window,
154                              guint32     time_,
155                              GdkAtom    *targets,
156                              gint        n_targets)
157 {
158   /* FIXME: Implement */
159 }
160