+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:
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);
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"
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) {