Gtk2::TreeIter

NAME

Gtk2::TreeIter − wrapper for GtkTreeIter

HIERARCHY

Glib::Boxed
+−−−−Gtk2::TreeIter

SYNOPSIS

package MyCustomListStore;
use Glib::Object::Subclass
Glib::Object::,
interfaces => [ Gtk2::TreeModel:: ],
;
...
sub set {
my $list = shift;
my $iter = shift; # a Gtk2::TreeIter
# this method needs access to the internal representation
# of the iter, as the model implementation sees it:
my $arrayref = $iter−>to_arrayref ($list−>{stamp});
...
}

DESCRIPTION

The methods described here are only of use in custom Gtk2::TreeModel implementations; they are not safe to be used on generic iters or in application code. See " CREATING A CUSTOM TREE MODEL" in Gtk2::TreeModel for more information.

METHODS

treeiter = Gtk2::TreeIter−>new_from_arrayref ($sv_iter)

$sv_iter (scalar)

Create a new Gtk2::TreeIter from the "internal" array reference representation used by custom Gtk2::TreeModel implementations. This is the complement to Gtk2::TreeIter::to_arrayref(), and is used when you need to create and return a new iter from a method that is not one of the Gtk2::TreeModelIface interface vfuncs. See " CREATING A CUSTOM TREE MODEL" in Gtk2::TreeModel for more information.

$iter−>set ($from)

$from (scalar)

Set the contents of $iter. $from can be either another Gtk2::TreeIter or an "internal" arrayref form as above.

Often you create a new iter instead of modifying an existing one, but "set" lets you to implement things in the style of the "remove" method of Gtk2::ListStore and Gtk2::TreeStore.

A set can also explicitly invalidate an iter by zapping its stamp, so nobody can accidentally use it again.

$iter−>set ([0,0,undef,undef]);

scalar = $iter−>to_arrayref ($stamp)

$stamp (integer)

Convert a boxed Gtk2::TreeIter reference into the "internal" array reference representation used by custom Gtk2::TreeModel implementations. This is necessary when you need to get to the data inside your iters in methods which are not the vfuncs of the Gtk2::TreeModelIface interface. The stamp must match; this protects the binding code from potential memory faults when attempting to convert an iter that doesn’t actually belong to your model. See " CREATING A CUSTOM TREE MODEL" in Gtk2::TreeModel for more information.

SEE ALSO

Gtk2, Glib::Boxed, Gtk2::TreeModel

COPYRIGHT

Copyright (C) 2003−2011 by the gtk2−perl team.

This software is licensed under the LGPL. See Gtk2 for a full notice.