source: trunk/third/gtk/gtk/gtkmain.h @ 14482

Revision 14482, 5.3 KB checked in by ghudson, 25 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r14481, which included commits to RCS files with non-trunk default branches.
RevLine 
[14481]1/* GTK - The GIMP 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 Library 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 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
17 * Boston, MA 02111-1307, USA.
18 */
19
20/*
21 * Modified by the GTK+ Team and others 1997-1999.  See the AUTHORS
22 * file for a list of people on the GTK+ Team.  See the ChangeLog
23 * files for a list of changes.  These files are distributed with
24 * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
25 */
26
27#ifndef __GTK_MAIN_H__
28#define __GTK_MAIN_H__
29
30
31#include <gdk/gdk.h>
32#include <gtk/gtkwidget.h>
33
34
35#ifdef __cplusplus
36extern "C" {
37#endif /* __cplusplus */
38
39/* Priorities for redrawing and resizing
40 */
41#define GTK_PRIORITY_REDRAW     (G_PRIORITY_HIGH_IDLE + 20)
42#define GTK_PRIORITY_RESIZE     (G_PRIORITY_HIGH_IDLE + 10)
43
44/* Deprecated. Use G_PRIORITY #define's instead
45 */
46#define GTK_PRIORITY_HIGH       G_PRIORITY_HIGH
47#define GTK_PRIORITY_INTERNAL   GTK_PRIORITY_REDRAW
48#define GTK_PRIORITY_DEFAULT    G_PRIORITY_DEFAULT_IDLE
49#define GTK_PRIORITY_LOW        G_PRIORITY_LOW
50
51typedef void    (*GtkModuleInitFunc)    (gint           *argc,
52                                         gchar        ***argv);
53typedef gint    (*GtkKeySnoopFunc)      (GtkWidget      *grab_widget,
54                                         GdkEventKey    *event,
55                                         gpointer        func_data);
56
57/* Gtk version.
58 */
59extern const guint gtk_major_version;
60extern const guint gtk_minor_version;
61extern const guint gtk_micro_version;
62extern const guint gtk_binary_age;
63extern const guint gtk_interface_age;
64gchar* gtk_check_version (guint required_major,
65                          guint required_minor,
66                          guint required_micro);
67
68
69/* Initialization, exit, mainloop and miscellaneous routines
70 */
71void       gtk_init              (int          *argc,
72                                  char       ***argv);
73gboolean   gtk_init_check        (int          *argc,
74                                  char       ***argv);
75void       gtk_exit              (gint          error_code);
76gchar*     gtk_set_locale        (void);
77gint       gtk_events_pending    (void);
78
79/* The following is the event func GTK+ registers with GDK
80 * we expose it mainly to allow filtering of events between
81 * GDK and GTK+.
82 */
83void  gtk_main_do_event          (GdkEvent           *event);
84
85void       gtk_main              (void);
86guint      gtk_main_level        (void);
87void       gtk_main_quit         (void);
88gint       gtk_main_iteration    (void);
89/* gtk_main_iteration() calls gtk_main_iteration_do(TRUE) */
90gint       gtk_main_iteration_do (gboolean blocking);
91
92gint       gtk_true                (void);
93gint       gtk_false               (void);
94
95void       gtk_grab_add            (GtkWidget          *widget);
96GtkWidget* gtk_grab_get_current    (void);
97void       gtk_grab_remove         (GtkWidget          *widget);
98
99void       gtk_init_add            (GtkFunction        function,
100                                    gpointer           data);
101void       gtk_quit_add_destroy    (guint              main_level,
102                                    GtkObject         *object);
103guint      gtk_quit_add            (guint              main_level,
104                                    GtkFunction        function,
105                                    gpointer           data);
106guint      gtk_quit_add_full       (guint              main_level,
107                                    GtkFunction        function,
108                                    GtkCallbackMarshal marshal,
109                                    gpointer           data,
110                                    GtkDestroyNotify   destroy);
111void       gtk_quit_remove         (guint              quit_handler_id);
112void       gtk_quit_remove_by_data (gpointer           data);
113guint      gtk_timeout_add         (guint32            interval,
114                                    GtkFunction        function,
115                                    gpointer           data);
116guint      gtk_timeout_add_full    (guint32            interval,
117                                    GtkFunction        function,
118                                    GtkCallbackMarshal marshal,
119                                    gpointer           data,
120                                    GtkDestroyNotify   destroy);
121void       gtk_timeout_remove      (guint              timeout_handler_id);
122
123guint      gtk_idle_add            (GtkFunction        function,
124                                    gpointer           data);
125guint      gtk_idle_add_priority   (gint               priority,
126                                    GtkFunction        function,
127                                    gpointer           data);
128guint      gtk_idle_add_full       (gint               priority,
129                                    GtkFunction        function,
130                                    GtkCallbackMarshal marshal,
131                                    gpointer           data,
132                                    GtkDestroyNotify   destroy);
133void       gtk_idle_remove         (guint              idle_handler_id);
134void       gtk_idle_remove_by_data (gpointer           data);
135guint      gtk_input_add_full      (gint               source,
136                                    GdkInputCondition  condition,
137                                    GdkInputFunction   function,
138                                    GtkCallbackMarshal marshal,
139                                    gpointer           data,
140                                    GtkDestroyNotify   destroy);
141void       gtk_input_remove        (guint              input_handler_id);
142
143
144guint      gtk_key_snooper_install (GtkKeySnoopFunc snooper,
145                                    gpointer        func_data);
146void       gtk_key_snooper_remove  (guint           snooper_handler_id);
147 
148GdkEvent*  gtk_get_current_event   (void);
149GtkWidget* gtk_get_event_widget    (GdkEvent       *event);
150
151
152/* Private routines internal to GTK+
153 */
154void       gtk_propagate_event     (GtkWidget         *widget,
155                                    GdkEvent          *event);
156
157#ifdef __cplusplus
158}
159#endif /* __cplusplus */
160
161
162#endif /* __GTK_MAIN_H__ */
Note: See TracBrowser for help on using the repository browser.