#!/usr/bin/perl -w
use strict;
use Gtk2::TestHelper
tests => 7,
noinit => 1;
# GtkTreeDragSource drag_data_get()
#
{ my $list = Gtk2::ListStore->new('Glib::String');
$list->insert_with_values (0, 0=>'foo');
$list->insert_with_values (1, 0=>'bar');
# one arg returning new GtkSelectionData
my $seldata = $list->drag_data_get (Gtk2::TreePath->new_from_indices(0));
isa_ok($seldata, 'Gtk2::SelectionData');
my ($model, $path) = $seldata->get_row_drag_data;
is ($model, $list);
is_deeply ([ 0 ], [ $path->get_indices ]);
# storing to existing GtkSelectionData
$list->drag_data_get (Gtk2::TreePath->new_from_indices(1), $seldata);
($model, $path) = $seldata->get_row_drag_data;
is ($model, $list);
is_deeply ([ 1 ], [ $path->get_indices ]);
# check mortalizing
require Scalar::Util;
Scalar::Util::weaken ($seldata); is ($seldata, undef);
$model = undef;
Scalar::Util::weaken ($list); is ($list, undef);
}
exit 0;
__END__