]> Pileus Git - ~andy/gtk/blob - gtk/gtkplugprivate.h
e411c9d6a34ce870d72614ae4bf4386fff6efdac
[~andy/gtk] / gtk / gtkplugprivate.h
1 /* GTK - The GTK+ Toolkit
2  * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free
16  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17  */
18
19 /*
20  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
21  * file for a list of people on the GTK+ Team.  See the ChangeLog
22  * files for a list of changes.  These files are distributed with
23  * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
24  */
25
26 #ifndef __GTK_PLUG_PRIVATE_H__
27 #define __GTK_PLUG_PRIVATE_H__
28
29 /* In gtkplug.c: */
30 void _gtk_plug_send_delete_event      (GtkWidget        *widget);
31 void _gtk_plug_add_all_grabbed_keys   (GtkPlug          *plug);
32 void _gtk_plug_focus_first_last       (GtkPlug          *plug,
33                                        GtkDirectionType  direction);
34 void _gtk_plug_handle_modality_on     (GtkPlug          *plug);
35 void _gtk_plug_handle_modality_off    (GtkPlug          *plug);
36
37 /* In backend-specific file: */
38
39 /*
40  * _gtk_plug_windowing_get_id:
41  *
42  * @plug: a #GtkPlug
43  *
44  * Returns the native window system identifier for the plug's window.
45  */
46 GdkNativeWindow _gtk_plug_windowing_get_id (GtkPlug *plug);
47
48 /*
49  * _gtk_plug_windowing_realize_toplevel:
50  *
51  * @plug_window: a #GtkPlug's #GdkWindow
52  *
53  * Called from GtkPlug's realize method. Should tell the corresponding
54  * socket that the plug has been realized.
55  */
56 void _gtk_plug_windowing_realize_toplevel (GtkPlug *plug);
57
58 /*
59  * _gtk_plug_windowing_map_toplevel:
60  *
61  * @plug: a #GtkPlug
62  *
63  * Called from GtkPlug's map method. Should tell the corresponding
64  * #GtkSocket that the plug has been mapped.
65  */
66 void _gtk_plug_windowing_map_toplevel (GtkPlug *plug);
67
68 /*
69  * _gtk_plug_windowing_map_toplevel:
70  *
71  * @plug: a #GtkPlug
72  *
73  * Called from GtkPlug's unmap method. Should tell the corresponding
74  * #GtkSocket that the plug has been unmapped.
75  */
76 void _gtk_plug_windowing_unmap_toplevel (GtkPlug *plug);
77
78 /*
79  * _gtk_plug_windowing_set_focus:
80  *
81  * @plug: a #GtkPlug
82  *
83  * Called from GtkPlug's set_focus method. Should tell the corresponding
84  * #GtkSocket to request focus.
85  */
86 void _gtk_plug_windowing_set_focus (GtkPlug *plug);
87
88 /*
89  * _gtk_plug_windowing_add_grabbed_key:
90  *
91  * @plug: a #GtkPlug
92  * @accelerator_key: a key
93  * @accelerator_mods: modifiers for it
94  *
95  * Called from GtkPlug's keys_changed method. Should tell the
96  * corresponding #GtkSocket to grab the key.
97  */
98 void _gtk_plug_windowing_add_grabbed_key (GtkPlug         *plug,
99                                           guint            accelerator_key,
100                                           GdkModifierType  accelerator_mods);
101
102 /*
103  * _gtk_plug_windowing_remove_grabbed_key:
104  *
105  * @plug: a #GtkPlug
106  * @accelerator_key: a key
107  * @accelerator_mods: modifiers for it
108  *
109  * Called from GtkPlug's keys_changed method. Should tell the
110  * corresponding #GtkSocket to remove the key grab.
111  */
112 void _gtk_plug_windowing_remove_grabbed_key (GtkPlug         *plug,
113                                              guint            accelerator_key,
114                                              GdkModifierType  accelerator_mods);
115
116 /*
117  * _gtk_plug_windowing_focus_to_parent:
118  *
119  * @plug: a #GtkPlug
120  * @direction: a direction
121  *
122  * Called from GtkPlug's focus method. Should tell the corresponding
123  * #GtkSocket to move the focus.
124  */
125 void _gtk_plug_windowing_focus_to_parent (GtkPlug         *plug,
126                                           GtkDirectionType direction);
127
128 /*
129  * _gtk_plug_windowing_filter_func:
130  *
131  * @gdk_xevent: a windowing system native event
132  * @event: a pre-allocated empty GdkEvent
133  * @data: the #GtkPlug
134  *
135  * Event filter function installed on plug windows.
136  */
137 GdkFilterReturn _gtk_plug_windowing_filter_func (GdkXEvent *gdk_xevent,
138                                                  GdkEvent  *event,
139                                                  gpointer   data);
140
141 #endif /* __GTK_PLUG_PRIVATE_H__ */