Gtk2::TreeView(3)

NAME
Gtk2::TreeView

HIERARCHY
  Glib::Object
  +----Glib::Object::_Unregistered::GInitiallyUnowned
       +----Gtk2::Object
            +----Gtk2::Widget
                 +----Gtk2::Container
                      +----Gtk2::TreeView

INTERFACES
  Glib::Object::_Unregistered::AtkImplementorIface

METHODS

  widget = Gtk2::TreeView->new ($model=undef)

    * $model (Gtk2::TreeModel)

  widget = Gtk2::TreeView->new_with_model ($model)
    * $model (Gtk2::TreeModel)

  integer = $tree_view->append_column ($column)

    * $column (Gtk2::TreeViewColumn)

  rectangle = $tree_view->get_background_area ($path, $column)
    * $path (Gtk2::TreePath or undef)
    * $column (Gtk2::TreeViewColumn or undef)

  window = $tree_view->get_bin_window

  rectangle = $tree_view->get_cell_area ($path, $column)

    * $path (Gtk2::TreePath or undef)
    * $column (Gtk2::TreeViewColumn or undef)

  $tree_view->collapse_all

  boolean = $tree_view->collapse_row ($path)

    * $path (Gtk2::TreePath)

  $tree_view->set_column_drag_function ($func, $data=undef)
    * $func (scalar)
    * $data (scalar)

  treeviewcolumn = $tree_view->get_column ($n)

    * $n (integer)

  $tree_view->columns_autosize

  list = $tree_view->get_columns
    Retuns an array of columns.

  pixmap = $tree_view->create_row_drag_icon ($path)

    * $path (Gtk2::TreePath)

  (path, focus_column) = $tree_view->get_cursor
    Returns the Gtk2::TreePath and Gtk2::TreeViewColumn of the cell with the keyboard focus cursor. Either may be undef.

  $tree_view->set_cursor_on_cell ($path, $focus_column, $focus_cell, $start_editing)

    * $path (Gtk2::TreePath)
    * $focus_column (Gtk2::TreeViewColumn or undef)
    * $focus_cell (Gtk2::CellRenderer or undef)
    * $start_editing (boolean)

  $tree_view->set_cursor ($path, $focus_column=undef, $start_editing=FALSE)

    * $path (Gtk2::TreePath)
    * $focus_column (Gtk2::TreeViewColumn or undef)
    * $start_editing (boolean)

  (path, dropposition) = $tree_view->get_dest_row_at_pos ($drag_x, $drag_y)

    * $drag_x (integer)
    * $drag_y (integer)

  (path, dropposition) = $tree_view->get_drag_dest_row

  $tree_view->set_drag_dest_row ($path, $pos)

    * $path (Gtk2::TreePath or undef)
    * $pos (Gtk2::TreeViewDropPosition)

  $tree_view->enable_model_drag_dest ($actions, ...)

    * $actions (Gtk2::Gdk::DragAction)
    * ... (list) of Gtk2::TargetEntry's

  $tree_view->enable_model_drag_source ($start_button_mask, $actions, ...)

    * $start_button_mask (Gtk2::Gdk::ModifierType)
    * $actions (Gtk2::Gdk::DragAction)
    * ... (list) of Gtk2::TargetEntry's

  boolean = $tree_view->get_enable_search

  $tree_view->set_enable_search ($enable_search)

    * $enable_search (boolean)

  $tree_view->expand_all

  boolean = $tree_view->expand_row ($path, $open_all)
    * $path (Gtk2::TreePath)
    * $open_all (boolean)

  $tree_view->expand_to_path ($path)

    * $path (Gtk2::TreePath)

  treeviewcolumn or undef = $tree_view->get_expander_column

  $tree_view->set_expander_column ($column)
    * $column (Gtk2::TreeViewColumn or undef)

  boolean = $treeview->get_fixed_height_mode

  $treeview->set_fixed_height_mode ($enable)

    * $enable (boolean)

  adjustment or undef = $tree_view->get_hadjustment

  $tree_view->set_hadjustment ($adjustment)
    * $adjustment (Gtk2::Adjustment or undef)

  $tree_view->set_headers_clickable ($setting)

    * $setting (boolean)

  boolean = $tree_view->get_headers_visible

  $tree_view->set_headers_visible ($headers_visible)
    * $headers_visible (boolean)

  boolean = $treeview->get_hover_expand

  $treeview->set_hover_expand ($expand)

    * $expand (boolean)

  boolean = $treeview->get_hover_selection

  $treeview->set_hover_selection ($hover)
    * $hover (boolean)

  integer = $tree_view->insert_column ($column, $position)

    * $column (Gtk2::TreeViewColumn)
    * $position (integer)

  $tree_view->insert_column_with_attributes ($position, $title, $cellrenderer, $attr1, $col1, $attr2, $col2, ...)

    * $position (integer)
    * $title (string)
    * $cell (Gtk2::CellRenderer)
    * ... (list)

  integer = $tree_view->insert_column_with_data_func ($position, $title, $cell, $func, $data=undef)

    * $position (integer)
    * $title (string)
    * $cell (Gtk2::CellRenderer)
    * $func (subroutine)
    * $data (scalar)

    Insert a column that calls $func every time it needs to fetch the data for a cell. $func will get a cell renderer, the tree model, and the iter of the row in question, and should set the proper value into the cell renderer.

  $tree_view->map_expanded_rows ($func, $data=undef)

    * $func (scalar)
    * $data (scalar)

  treemodel or undef = $tree_view->get_model

  $tree_view->set_model ($model)

    * $model (Gtk2::TreeModel or undef)

  $tree_view->move_column_after ($column, $base_column)
    * $column (Gtk2::TreeViewColumn)
    * $base_column (Gtk2::TreeViewColumn or undef)

  path = $tree_view->get_path_at_pos ($x, $y)

  (path, column, cell_x, cell_y) = $tree_view->get_path_at_pos ($x, $y)

    * $x (integer)
    * $y (integer)

    Finds the path at the point ($x, $y), relative to widget coordinates. That is, $x and $y are relative to an event's coordinates. $x and $y must come from an event on the $tree_view only where "$event->window == $tree_view->get_bin_window". It is primarily for things like popup menus. In scalar context, returns the Gtk2::TreePath, in array context, adds the Gtk2::TreeViewColumn, and $x and $y translated to be relative to the cell. This function is only meaningful if $tree_view is realized.

  integer = $tree_view->remove_column ($column)

    * $column (Gtk2::TreeViewColumn)

  boolean = $tree_view->get_reorderable

  $tree_view->set_reorderable ($reorderable)
    * $reorderable (boolean)

  $tree_view->row_activated ($path, $column)

    * $path (Gtk2::TreePath)
    * $column (Gtk2::TreeViewColumn)

  boolean = $tree_view->row_expanded ($path)

    * $path (Gtk2::TreePath)

  $tree_view->set_row_separator_func ($func, $data=undef)
    * $func (scalar)
    * $data (scalar)

  boolean = $tree_view->get_rules_hint

  $tree_view->set_rules_hint ($setting)

    * $setting (boolean)

  $tree_view->scroll_to_cell ($path, $column=undef, $use_align=FALSE, $row_align=0.0, $col_align=0.0)
    * $path (Gtk2::TreePath or undef)
    * $column (Gtk2::TreeViewColumn or undef)
    * $use_align (boolean)
    * $row_align (double)
    * $col_align (double)

  $tree_view->scroll_to_point ($tree_x, $tree_y)

    * $tree_x (scalar)
    * $tree_y (scalar)

  integer = $tree_view->get_search_column

  $tree_view->set_search_column ($column)

    * $column (integer)

  $tree_view->set_search_equal_func ($func, $data=undef)
    * $func (subroutine)
    * $data (scalar)

  treeselection = $tree_view->get_selection

  (wx, wy) = $tree_view->tree_to_widget_coords ($tx, $ty)

    * $tx (integer)
    * $ty (integer)

  $tree_view->unset_rows_drag_dest

  $tree_view->unset_rows_drag_source

  adjustment or undef = $tree_view->get_vadjustment

  $tree_view->set_vadjustment ($adjustment)

    * $adjustment (Gtk2::Adjustment or undef)

  list = $tree_view->get_visible_range

  rectangle = $tree_view->get_visible_rect

  (tx, ty) = $tree_view->widget_to_tree_coords ($wx, $wy)
    * $wx (integer)
    * $wy (integer)

PROPERTIES

'enable-search' (boolean : readable / writable / private)
    View allows user to search through columns interactively

'expander-column' (Gtk2::TreeViewColumn : readable / writable / private)
    Set the column for the expander column

'fixed-height-mode' (boolean : readable / writable / private)
    Speeds up GtkTreeView by assuming that all rows have the same height

'hadjustment' (Gtk2::Adjustment : readable / writable / private)
    Horizontal Adjustment for the widget

'headers-clickable' (boolean : readable / writable / private)
    Column headers respond to click events

'headers-visible' (boolean : readable / writable / private)
    Show the column header buttons

'hover-expand' (boolean : readable / writable / private)
    Whether rows should be expanded/collapsed when the pointer moves over them

'hover-selection' (boolean : readable / writable / private)
    Whether the selection should follow the pointer

'model' (Gtk2::TreeModel : readable / writable / private)
    The model for the tree view

'reorderable' (boolean : readable / writable / private)
    View is reorderable

'rules-hint' (boolean : readable / writable / private)
    Set a hint to the theme engine to draw rows in alternating colors

'search-column' (integer : readable / writable / private)
    Model column to search through when searching through code

'vadjustment' (Gtk2::Adjustment : readable / writable / private)
    Vertical Adjustment for the widget

SIGNALS

set-scroll-adjustments (Gtk2::TreeView, Gtk2::Adjustment, Gtk2::Adjustment)
row-activated (Gtk2::TreeView, Gtk2::TreePath, Gtk2::TreeViewColumn)
boolean = test-expand-row (Gtk2::TreeView, Gtk2::TreeIter, Gtk2::TreePath)
boolean = test-collapse-row (Gtk2::TreeView, Gtk2::TreeIter, Gtk2::TreePath)
row-expanded (Gtk2::TreeView, Gtk2::TreeIter, Gtk2::TreePath)
row-collapsed (Gtk2::TreeView, Gtk2::TreeIter, Gtk2::TreePath)
columns-changed (Gtk2::TreeView)
cursor-changed (Gtk2::TreeView)
boolean = move-cursor (Gtk2::TreeView, Gtk2::MovementStep, integer)
boolean = select-all (Gtk2::TreeView)
boolean = unselect-all (Gtk2::TreeView)
boolean = select-cursor-row (Gtk2::TreeView, boolean)
boolean = toggle-cursor-row (Gtk2::TreeView)
boolean = expand-collapse-cursor-row (Gtk2::TreeView, boolean, boolean, boolean)
boolean = select-cursor-parent (Gtk2::TreeView)
boolean = start-interactive-search (Gtk2::TreeView)

ENUMS AND FLAGS

  flags Gtk2::Gdk::DragAction

* 'default' / 'GDK_ACTION_DEFAULT'
* 'copy' / 'GDK_ACTION_COPY'
* 'move' / 'GDK_ACTION_MOVE'
* 'link' / 'GDK_ACTION_LINK'
* 'private' / 'GDK_ACTION_PRIVATE'
* 'ask' / 'GDK_ACTION_ASK'

  flags Gtk2::Gdk::ModifierType

* 'shift-mask' / 'GDK_SHIFT_MASK'
* 'lock-mask' / 'GDK_LOCK_MASK'
* 'control-mask' / 'GDK_CONTROL_MASK'
* 'mod1-mask' / 'GDK_MOD1_MASK'
* 'mod2-mask' / 'GDK_MOD2_MASK'
* 'mod3-mask' / 'GDK_MOD3_MASK'
* 'mod4-mask' / 'GDK_MOD4_MASK'
* 'mod5-mask' / 'GDK_MOD5_MASK'
* 'button1-mask' / 'GDK_BUTTON1_MASK'
* 'button2-mask' / 'GDK_BUTTON2_MASK'
* 'button3-mask' / 'GDK_BUTTON3_MASK'
* 'button4-mask' / 'GDK_BUTTON4_MASK'
* 'button5-mask' / 'GDK_BUTTON5_MASK'
* 'release-mask' / 'GDK_RELEASE_MASK'
* 'modifier-mask' / 'GDK_MODIFIER_MASK'

  enum Gtk2::MovementStep

* 'logical-positions' / 'GTK_MOVEMENT_LOGICAL_POSITIONS'
* 'visual-positions' / 'GTK_MOVEMENT_VISUAL_POSITIONS'
* 'words' / 'GTK_MOVEMENT_WORDS'
* 'display-lines' / 'GTK_MOVEMENT_DISPLAY_LINES'
* 'display-line-ends' / 'GTK_MOVEMENT_DISPLAY_LINE_ENDS'
* 'paragraphs' / 'GTK_MOVEMENT_PARAGRAPHS'
* 'paragraph-ends' / 'GTK_MOVEMENT_PARAGRAPH_ENDS'
* 'pages' / 'GTK_MOVEMENT_PAGES'
* 'buffer-ends' / 'GTK_MOVEMENT_BUFFER_ENDS'
* 'horizontal-pages' / 'GTK_MOVEMENT_HORIZONTAL_PAGES'

  enum Gtk2::TreeViewDropPosition

* 'before' / 'GTK_TREE_VIEW_DROP_BEFORE'
* 'after' / 'GTK_TREE_VIEW_DROP_AFTER'
* 'into-or-before' / 'GTK_TREE_VIEW_DROP_INTO_OR_BEFORE'
* 'into-or-after' / 'GTK_TREE_VIEW_DROP_INTO_OR_AFTER'

SEE ALSO
Gtk2, Glib::Object, Glib::Object::_Unregistered::GInitiallyUnowned, Gtk2::Object, Gtk2::Widget, Gtk2::Container

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

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