]> Pileus Git - ~andy/gtk/blobdiff - gtk/gtkbindings.h
Improve GtkBuilder error reporting
[~andy/gtk] / gtk / gtkbindings.h
index debd6989b8fb2aa9765c0ca8e0dddfa64578b531..0ff74230c4d5d583d2ac671921fb03357a56b4c5 100644 (file)
  * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS
  * file for a list of people on the GTK+ Team.  See the ChangeLog
  * files for a list of changes.  These files are distributed with
- * GTK+ at ftp://ftp.gtk.org/pub/gtk/. 
+ * GTK+ at ftp://ftp.gtk.org/pub/gtk/.
  */
 
+#if defined(GTK_DISABLE_SINGLE_INCLUDES) && !defined (__GTK_H_INSIDE__) && !defined (GTK_COMPILATION)
+#error "Only <gtk/gtk.h> can be included directly."
+#endif
+
 #ifndef __GTK_BINDINGS_H__
 #define __GTK_BINDINGS_H__
 
 
 #include <gdk/gdk.h>
 #include <gtk/gtkobject.h>
-#include <gtk/gtkenums.h>
 
 
 G_BEGIN_DECLS
@@ -69,6 +72,7 @@ struct _GtkBindingEntry
   GtkBindingSet                *binding_set;
   guint                        destroyed : 1;
   guint                        in_emission : 1;
+  guint                 marks_unbound : 1;
   GtkBindingEntry      *set_next;
   GtkBindingEntry      *hash_next;
   GtkBindingSignal     *signals;
@@ -89,7 +93,7 @@ struct _GtkBindingSignal
   GtkBindingSignal     *next;
   gchar                *signal_name;
   guint                         n_args;
-  GtkBindingArg                 args[1]; /* flexible array */
+  GtkBindingArg                *args;
 };
 
 /* Application-level methods */
@@ -106,16 +110,33 @@ gboolean gtk_binding_set_activate (GtkBindingSet  *binding_set,
                                         guint           keyval,
                                         GdkModifierType modifiers,
                                         GtkObject      *object);
+
+#ifndef GTK_DISABLE_DEPRECATED
 #define         gtk_binding_entry_add          gtk_binding_entry_clear
 void    gtk_binding_entry_clear        (GtkBindingSet  *binding_set,
                                         guint           keyval,
                                         GdkModifierType modifiers);
-void    gtk_binding_entry_add_signal   (GtkBindingSet  *binding_set,
+guint   gtk_binding_parse_binding      (GScanner       *scanner);
+#endif /* GTK_DISABLE_DEPRECATED */
+
+void    gtk_binding_entry_skip         (GtkBindingSet  *binding_set,
+                                         guint           keyval,
+                                         GdkModifierType modifiers);
+void    gtk_binding_entry_add_signal   (GtkBindingSet  *binding_set,
+                                         guint           keyval,
+                                         GdkModifierType modifiers,
+                                         const gchar    *signal_name,
+                                         guint           n_args,
+                                         ...);
+void    gtk_binding_entry_add_signall  (GtkBindingSet  *binding_set,
                                         guint           keyval,
                                         GdkModifierType modifiers,
                                         const gchar    *signal_name,
-                                        guint           n_args,
-                                        ...);
+                                        GSList         *binding_args);
+void    gtk_binding_entry_remove       (GtkBindingSet  *binding_set,
+                                        guint           keyval,
+                                        GdkModifierType modifiers);
+
 void    gtk_binding_set_add_path       (GtkBindingSet  *binding_set,
                                         GtkPathType     path_type,
                                         const gchar    *path_pattern,
@@ -124,34 +145,14 @@ void       gtk_binding_set_add_path       (GtkBindingSet  *binding_set,
 
 /* Non-public methods */
 
-void    gtk_binding_entry_remove       (GtkBindingSet  *binding_set,
-                                        guint           keyval,
-                                        GdkModifierType modifiers);
-void    gtk_binding_entry_add_signall  (GtkBindingSet  *binding_set,
+guint   _gtk_binding_parse_binding     (GScanner       *scanner);
+void     _gtk_binding_reset_parsed      (void);
+void    _gtk_binding_entry_add_signall (GtkBindingSet  *binding_set,
                                         guint           keyval,
                                         GdkModifierType modifiers,
                                         const gchar    *signal_name,
                                         GSList         *binding_args);
-guint   gtk_binding_parse_binding      (GScanner       *scanner);
-
-
-void     _gtk_binding_reset_parsed    (void);
-
-/* Creates a signal with a fixed callback instead of a class offset;
- * useful for key binding signals
- */
-guint _gtk_binding_signal_new (const gchar       *signal_name,
-                              GType              itype,
-                              GSignalFlags       signal_flags,
-                              GCallback          handler,
-                              GSignalAccumulator accumulator,
-                              gpointer           accu_data,
-                              GSignalCMarshaller c_marshaller,
-                              GType              return_type,
-                              guint              n_params,
-                              ...);
 
 G_END_DECLS
 
-
 #endif /* __GTK_BINDINGS_H__ */