]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Added 'type_name' metadata to function to override its return type.
authorJared Moore <jaredm@svn.gnome.org>
Thu, 17 Jul 2008 02:38:06 +0000 (02:38 +0000)
committerJared William Moore <jaredm@src.gnome.org>
Thu, 17 Jul 2008 02:38:06 +0000 (02:38 +0000)
2008-07-17  Jared Moore  <jaredm@svn.gnome.org>

* vapigen/valagidlparser.vala:

Added 'type_name' metadata to function to override its return type.

* vapi/packages/gtk+-2.0/gtk+-2.0.metadata

Changed gtk_selection_data_get_text to return a string, fixes bug
540663.

* vapi/gtk+-2.0.vapi:

Regenerated.

svn path=/trunk/; revision=1703

ChangeLog
vapi/gtk+-2.0.vapi
vapi/packages/gtk+-2.0/gtk+-2.0.metadata
vapigen/valagidlparser.vala

index b72055d71a58d24150786913ec3e1bb48424f68e..c13c6e79d51067484e3852f8e669d3a0d59f3e69 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2008-07-17  Jared Moore  <jaredm@svn.gnome.org>
+
+       * vapigen/valagidlparser.vala:
+
+       Added 'type_name' metadata to function to override its return type.
+
+       * vapi/packages/gtk+-2.0/gtk+-2.0.metadata
+
+       Changed gtk_selection_data_get_text to return a string, fixes bug
+       540663.
+
+       * vapi/gtk+-2.0.vapi:
+
+       Regenerated.
+
 2008-07-17  Jared Moore  <jaredm@svn.gnome.org>
 
        * vala/valasignal.vala:
index 605934357df19d3af165a05aba6af2db931a1f90..fb8d9c8e0d878d094d7444cc340ed2ce11c2937b 100644 (file)
@@ -1635,7 +1635,7 @@ namespace Gtk {
                public Gtk.SelectionData copy ();
                public Gdk.Pixbuf? get_pixbuf ();
                public bool get_targets (out Gdk.Atom targets, int n_atoms);
-               public weak uchar[] get_text ();
+               public string? get_text ();
                [NoArrayLength]
                public string[] get_uris ();
                public void set (Gdk.Atom type, int format, uchar[] data);
index e20b8ef68c9494b41c307027ff3f770e4ecd6e0a..3fbdde33b8cffcc79b342ab8ced8961e25d25ee2 100644 (file)
@@ -275,6 +275,7 @@ gtk_scrolled_window_new.vadjustment nullable="1"
 gtk_selection_add_targets.targets is_array="1"
 gtk_selection_data_copy transfer_ownership="1"
 gtk_selection_data_get_pixbuf transfer_ownership="1" nullable="1"
+gtk_selection_data_get_text type_name="string" nullable="1" transfer_ownership="1"
 gtk_selection_data_get_uris is_array="1" transfer_ownership="1" no_array_length="1"
 gtk_selection_data_set.length hidden="1"
 GtkSettings.queued_settings hidden="1"
index 2b39443f2fb81106b752e4b796ef194f8ae1382a..85de85f96cce8b5609bec9acea54bfb8d427f9e1 100644 (file)
@@ -1329,7 +1329,15 @@ public class Vala.GIdlParser : CodeVisitor {
                                                m.no_array_length = true;
                                        }
                                } else if (nv[0] == "type_name") {
-                                       ((UnresolvedType) return_type).unresolved_symbol = new UnresolvedSymbol (null, eval (nv[1]));
+                                       var sym = new UnresolvedSymbol (null, eval (nv[1]));
+                                       if (return_type is UnresolvedType) {
+                                               ((UnresolvedType) return_type).unresolved_symbol = sym;
+                                       } else {
+                                               // Overwrite old return_type, so "type_name" must be before any
+                                               // other return type modifying metadata
+                                               m.return_type = return_type = new UnresolvedType.from_symbol (sym, return_type.source_reference);
+                                       }
+                               }
                                } else if (nv[0] == "type_arguments") {
                                        var type_args = eval (nv[1]).split (",");
                                        foreach (string type_arg in type_args) {