[vala/0.14] gtk+-3.0: Fix BindingArg, BindingSignal and BindingEntry.add_signal



commit 0478faf919e2a2be2237fd1a67e460c41f0d0853
Author: Luca Bruno <lucabru src gnome org>
Date:   Thu Nov 17 11:03:22 2011 +0100

    gtk+-3.0: Fix BindingArg, BindingSignal and BindingEntry.add_signal
    
    Fixes bug 664240.

 vapi/gtk+-3.0.vapi                          |   22 ++++++++++++++--------
 vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala |    9 +++++++++
 vapi/packages/gtk+-3.0/gtk+-3.0.metadata    |    5 ++++-
 3 files changed, 27 insertions(+), 9 deletions(-)
---
diff --git a/vapi/gtk+-3.0.vapi b/vapi/gtk+-3.0.vapi
index 8e4692d..347ebe9 100644
--- a/vapi/gtk+-3.0.vapi
+++ b/vapi/gtk+-3.0.vapi
@@ -632,11 +632,6 @@ namespace Gtk {
 	}
 	[CCode (cheader_filename = "gtk/gtk.h")]
 	[Compact]
-	public class BindingArg {
-		public GLib.Type arg_type;
-	}
-	[CCode (cheader_filename = "gtk/gtk.h")]
-	[Compact]
 	public class BindingEntry {
 		public weak Gtk.BindingSet binding_set;
 		public uint destroyed;
@@ -647,9 +642,9 @@ namespace Gtk {
 		public Gdk.ModifierType modifiers;
 		public weak Gtk.BindingEntry set_next;
 		public weak Gtk.BindingSignal signals;
-		public static void add_signal (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, uint n_args);
+		public static void add_signal (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, uint n_args, ...);
 		public static GLib.TokenType add_signal_from_string (Gtk.BindingSet binding_set, string signal_desc);
-		public static void add_signall (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, GLib.SList<Gtk.BindingArg> binding_args);
+		public static void add_signall (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers, string signal_name, GLib.SList<Gtk.BindingArg?> binding_args);
 		public static void remove (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
 		public static void skip (Gtk.BindingSet binding_set, uint keyval, Gdk.ModifierType modifiers);
 	}
@@ -671,7 +666,8 @@ namespace Gtk {
 	[CCode (cheader_filename = "gtk/gtk.h")]
 	[Compact]
 	public class BindingSignal {
-		public weak Gtk.BindingArg args;
+		[CCode (array_length_cname = "n_args")]
+		public weak Gtk.BindingArg[] args;
 		public uint n_args;
 		public weak Gtk.BindingSignal next;
 		public weak string signal_name;
@@ -6218,6 +6214,16 @@ namespace Gtk {
 		public int height;
 	}
 	[CCode (cheader_filename = "gtk/gtk.h")]
+	public struct BindingArg {
+		[CCode (cname = "d.long_data")]
+		public long long_data;
+		[CCode (cname = "d.double_data")]
+		public double double_data;
+		[CCode (cname = "d.string_data")]
+		public weak string string_data;
+		public GLib.Type arg_type;
+	}
+	[CCode (cheader_filename = "gtk/gtk.h")]
 	public struct Border {
 		public int16 left;
 		public int16 right;
diff --git a/vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala b/vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala
index 7d03752..950058b 100644
--- a/vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala
+++ b/vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala
@@ -25,6 +25,15 @@ namespace Gtk {
 		public Gtk.AccelKey* find (Gtk.AccelGroupFindFunc find_func);
 	}
 
+	public struct BindingArg {
+		[CCode (cname = "d.long_data")]
+		public long long_data;
+		[CCode (cname = "d.double_data")]
+		public double double_data;
+		[CCode (cname = "d.string_data")]
+		public weak string string_data;
+	}
+
 	public struct Allocation {
 		public int x;
 		public int y;
diff --git a/vapi/packages/gtk+-3.0/gtk+-3.0.metadata b/vapi/packages/gtk+-3.0/gtk+-3.0.metadata
index 38ebcf1..0a5cadc 100644
--- a/vapi/packages/gtk+-3.0/gtk+-3.0.metadata
+++ b/vapi/packages/gtk+-3.0/gtk+-3.0.metadata
@@ -56,11 +56,14 @@ GtkAssistant.close hidden="1"
 gtk_assistant_set_forward_page_func.page_func transfer_ownership="1"
 gtk_assistant_set_forward_page_func.data hidden="1"
 gtk_assistant_set_forward_page_func.destroy hidden="1"
+GtkBindingArg is_value_type="1"
 GtkBindingArg.d hidden="1"
-gtk_binding_entry_add_signall.binding_args type_arguments="BindingArg"
+gtk_binding_entry_add_signal ellipsis="1"
+gtk_binding_entry_add_signall.binding_args type_arguments="BindingArg?"
 GtkBindingSet.class_branch_pspecs hidden="1"
 GtkBindingSet.widget_class_pspecs hidden="1"
 GtkBindingSet.widget_path_pspecs hidden="1"
+GtkBindingSignal.args is_array="1" array_length_cname="n_args"
 GtkBorder is_value_type="1"
 gtk_border_copy hidden="1"
 gtk_border_free hidden="1"



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]