summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Bruno <lucabru@src.gnome.org>2011-11-17 11:03:22 +0100
committerJürg Billeter <j@bitron.ch>2011-11-30 15:02:11 +0100
commit0478faf919e2a2be2237fd1a67e460c41f0d0853 (patch)
tree66a8bb46ca430879c6359d80b5994888de7fc9c7
parent2cbd97026448e81bbf538c269accf1560cf0ed09 (diff)
downloadvala-0478faf919e2a2be2237fd1a67e460c41f0d0853.tar.gz
gtk+-3.0: Fix BindingArg, BindingSignal and BindingEntry.add_signal
Fixes bug 664240.
-rw-r--r--vapi/gtk+-3.0.vapi22
-rw-r--r--vapi/packages/gtk+-3.0/gtk+-3.0-custom.vala9
-rw-r--r--vapi/packages/gtk+-3.0/gtk+-3.0.metadata5
3 files changed, 27 insertions, 9 deletions
diff --git a/vapi/gtk+-3.0.vapi b/vapi/gtk+-3.0.vapi
index 8e4692d25..347ebe945 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 7d0375261..950058b7f 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 38ebcf13a..0a5cadce9 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"