Provided by: libgtk2-perl-doc_1.24993-1ubuntu2_all bug

NAME

       Gtk2::TreeSortable - wrapper for GtkTreeSortable

HIERARCHY

         Glib::Interface
         +----Gtk2::TreeSortable

METHODS

   $sortable->set_default_sort_func ($sort_func, $user_data=undef)
       •   $sort_func (scalar)

       •   $user_data (scalar)

   boolean = $sortable->has_default_sort_func
   $sortable->sort_column_changed
   (sort_column_id, order) = $sortable->get_sort_column_id
       Returns sort_column_id, an integer and order, a Gtk2::SortType.

   $sortable->set_sort_column_id ($sort_column_id, $order)
       •   $sort_column_id (integer)

       •   $order (Gtk2::SortType)

   $sortable->set_sort_func ($sort_column_id, $sort_func, $user_data=undef)
       •   $sort_column_id (integer)

       •   $sort_func (scalar)

       •   $user_data (scalar)

IMPLEMENTING THE GtkTreeSortable INTERACE

       If  you  want your custom tree model to be sortable, you need to implement the GtkTreeSortable interface.
       Just like with other interfaces, this  boils  down  to  announcing  that  your  subclass  implements  the
       interface  and providing a few virtual methods.  The former is achieved by adding "Gtk2::TreeSortable" to
       the "interfaces" key.  For example:

         package MyModel;
         use Gtk2;
         use Glib::Object::Subclass
             Glib::Object::,
             interfaces => [ Gtk2::TreeModel::, Gtk2::TreeSortable:: ],
             ;

       The virtual methods you need to implement are listed below.

   VIRTUAL METHODS
       These virtual methods are called by perl when gtk+ attempts to modify the sorting behavior of your model.
       Implement them in your model's package.  Note that we don't provide  a  wrapper  for  sort_column_changed
       because  there  is  a  signal  for  it,  which  means  you can use the normal signal overriding mechanism
       documented in Glib::Object::Subclass.

       (is_not_special, id, order) = GET_SORT_COLUMN_ID ($model)
           Returns a boolean indicating whether the column is a special or normal one, its id  and  its  sorting
           order.

       SET_SORT_COLUMN_ID ($list, $id, $order)
           Sets the sort column to the one specified by $id and the sorting order to $order.

       SET_SORT_FUNC ($list, $id, $func, $data)
           Sets the function that is to be used for sorting the column $id.

       SET_DEFAULT_SORT_FUNC ($list, $func, $data)
           Sets  the function that is to be used for sorting columns that don't have a sorting function attached
           to them.

           The $func and $data arguments passed to these two methods should be treated as blackboxes.  They  are
           generic  containers  for  some  callback  that is to be invoked whenever you want to compare two tree
           iters.  When you call them, make sure to always pass $data.  For example:

             $retval = $func->($list, $a, $b, $data);

       bool = HAS_DEFAULT_SORT_FUNC ($list)
           Returns a bool indicating whether $list has a default sorting function.

SIGNALS

       sort-column-changed (Gtk2::TreeSortable)

ENUMS AND FLAGS

   enum Gtk2::SortType
       •   'ascending' / 'GTK_SORT_ASCENDING'

       •   'descending' / 'GTK_SORT_DESCENDING'

SEE ALSO

       Gtk2, Glib::Interface

COPYRIGHT

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

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

perl v5.30.0                                       2019-10-19                            Gtk2::TreeSortable(3pm)