1 /* GTK - The GTK+ Toolkit
2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
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.
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.
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.
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/.
26 #ifndef __GTK_PLUG_PRIVATE_H__
27 #define __GTK_PLUG_PRIVATE_H__
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);
37 /* In backend-specific file: */
40 * _gtk_plug_windowing_get_id:
44 * Returns the native window system identifier for the plug's window.
46 GdkNativeWindow _gtk_plug_windowing_get_id (GtkPlug *plug);
49 * _gtk_plug_windowing_realize_toplevel:
51 * @plug_window: a #GtkPlug's #GdkWindow
53 * Called from GtkPlug's realize method. Should tell the corresponding
54 * socket that the plug has been realized.
56 void _gtk_plug_windowing_realize_toplevel (GtkPlug *plug);
59 * _gtk_plug_windowing_map_toplevel:
63 * Called from GtkPlug's map method. Should tell the corresponding
64 * #GtkSocket that the plug has been mapped.
66 void _gtk_plug_windowing_map_toplevel (GtkPlug *plug);
69 * _gtk_plug_windowing_map_toplevel:
73 * Called from GtkPlug's unmap method. Should tell the corresponding
74 * #GtkSocket that the plug has been unmapped.
76 void _gtk_plug_windowing_unmap_toplevel (GtkPlug *plug);
79 * _gtk_plug_windowing_set_focus:
83 * Called from GtkPlug's set_focus method. Should tell the corresponding
84 * #GtkSocket to request focus.
86 void _gtk_plug_windowing_set_focus (GtkPlug *plug);
89 * _gtk_plug_windowing_add_grabbed_key:
92 * @accelerator_key: a key
93 * @accelerator_mods: modifiers for it
95 * Called from GtkPlug's keys_changed method. Should tell the
96 * corresponding #GtkSocket to grab the key.
98 void _gtk_plug_windowing_add_grabbed_key (GtkPlug *plug,
99 guint accelerator_key,
100 GdkModifierType accelerator_mods);
103 * _gtk_plug_windowing_remove_grabbed_key:
106 * @accelerator_key: a key
107 * @accelerator_mods: modifiers for it
109 * Called from GtkPlug's keys_changed method. Should tell the
110 * corresponding #GtkSocket to remove the key grab.
112 void _gtk_plug_windowing_remove_grabbed_key (GtkPlug *plug,
113 guint accelerator_key,
114 GdkModifierType accelerator_mods);
117 * _gtk_plug_windowing_focus_to_parent:
120 * @direction: a direction
122 * Called from GtkPlug's focus method. Should tell the corresponding
123 * #GtkSocket to move the focus.
125 void _gtk_plug_windowing_focus_to_parent (GtkPlug *plug,
126 GtkDirectionType direction);
129 * _gtk_plug_windowing_filter_func:
131 * @gdk_xevent: a windowing system native event
132 * @event: a pre-allocated empty GdkEvent
133 * @data: the #GtkPlug
135 * Event filter function installed on plug windows.
137 GdkFilterReturn _gtk_plug_windowing_filter_func (GdkXEvent *gdk_xevent,
141 #endif /* __GTK_PLUG_PRIVATE_H__ */