On Thu, 2011-09-22 at 18:22 +0100, Andrea Pretto wrote:
> Hello,
> 
> I have downloaded a code sample for drag&drop on gtk, but I get an error 
> compiling it:
> 
> 
>     private bool on_drag_drop (Widget widget, DragContext context, int x, int 
> y, uint time) {
>       if (context.targets != null) {
>         
>         Atom target_type = (Atom) (context.targets.nth_data (0)); // THIS 
> GIVE ERROR !!!!
>         
>         stderr.printf("data %s\n", target_type.name());
>         // Request the data
>         //Gtk.drag_get_data (widget, context, target_type, time);
>       }
> 
> The error is "missing generic type arguments".
> context is of type Gdk.DragContext and context.targets is a List<Gdk.Atom>.
> 
> I have no idea on how to fix that.
> 
> I'am using valac 0.8.1 on debia squeeze.

In 0.8.1 there were no type arguments on Gdk.DragContext.targets... they
were added on 2010-07-17 [1], but 0.8.1 was released on 2010-04-21.

Updating Vala is probably not a bad idea (lots of bugs like this have
been fixed in the past 17 months), but you should be able to work around
this issue by doing something like this:

unowned GLib.List<Gdk.Atom> targets =
    (GLib.List<Gdk.Atom>) (context.targets);
Gdk.Atom target_type = targets.nth_data (0);

Or, if you want to avoid the extra variable:

Gdk.Atom target_type =
    ((GLib.List<Gdk.Atom>) (context.targets)).nth_data (0);


-Evan

[1]
http://git.gnome.org/browse/vala/commit/?id=26b892aab2e9c8df7d7736410244a6b3563da82e

_______________________________________________
vala-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to