logo top
Main Page   Widgets   Namespaces   Book  

Gtk::TreePath Class Reference
[TreeView Classes]

List of all members.


Detailed Description

A path is essentially a potential node.

It is a location on a model that may or may not actually correspond to a node on a specific model.

A Path can be converted into either an array of unsigned integers or a string. The string form is a list of numbers separated by a colon. Each number refers to the offset at that level. Thus, the path "0" refers to the root node and the path "2:4" refers to the fifth child of the third node.

Typedefed as Gtk::TreeModel::Path.

Public Types

typedef const int* const_iterator
typedef const int& const_reference
typedef std::reverse_iterator
<const_iterator
const_reverse_iterator
typedef int difference_type
typedef int* iterator
typedef int& reference
typedef std::reverse_iterator
<iterator
reverse_iterator
typedef unsigned int size_type
typedef int value_type

Public Member Functions

template<class In>
void append (In pbegin, In pend)
void append_index (int index)
 Appends a new index to a path.
template<class In>
void assign (In pbegin, In pend)
const_reference back () const
reference back ()
const_iterator begin () const
iterator begin ()
void clear ()
void down ()
 Moves path to point to the first child of the current path.
bool empty () const
const_iterator end () const
iterator end ()
const_reference front () const
reference front ()
int get_depth () const
 Return value: The depth of path.
Glib::ArrayHandle<int> get_indices () const
const GtkTreePath* gobj () const
 Provides access to the underlying C instance.
GtkTreePath* gobj ()
 Provides access to the underlying C instance.
GtkTreePath* gobj_copy () const
 Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.
bool is_ancestor (const TreePath& descendant) const
 Return value: true if descendant is contained inside path.
bool is_descendant (const TreePath& ancestor) const
 Return value: true if ancestor contains path somewhere below it.
void next ()
 Moves the path to point to the next node at the current depth.
 operator bool () const
 Checks that the path is not empty, by calling empty().
TreePathoperator= (const TreeModel::iterator& iter)
TreePathoperator= (const TreePath& other)
const_reference operator[] (size_type i) const
reference operator[] (size_type i)
void prepend_index (int index)
 Prepends a new index to a path.
bool prev ()
 Moves the path to point to the previous node at the current depth, if it exists.
void push_back (int index)
 Appends a new index to a path.
void push_front (int index)
 Prepends a new index to a path.
const_reverse_iterator rbegin () const
reverse_iterator rbegin ()
const_reverse_iterator rend () const
reverse_iterator rend ()
bool set_in_selection_data (SelectionData& selection_data, const Glib::RefPtr<const TreeModel>& model) const
 Sets selection data of target type "GTK_TREE_MODEL_ROW".
size_type size () const
void swap (TreePath& other)
Glib::ustring to_string () const
 Generates a string representation of the path.
template<class In>
 TreePath (In pbegin, In pend)
 TreePath (const TreeModel::iterator& iter)
 TreePath (const Glib::ustring& path)
 TreePath (size_type n, value_type value=0)
 TreePath (const TreePath& other)
 TreePath (GtkTreePath* gobject, bool make_a_copy=true)
 TreePath ()
bool up ()
 Moves the path to point to its parent node, if it has a parent.
 ~TreePath ()

Static Public Member Functions

static bool get_from_selection_data (const SelectionData& selection_data, TreePath& path)
 See description in the other overload.
static bool get_from_selection_data (const SelectionData& selection_data, Glib::RefPtr<TreeModel>& model, TreePath& path)
 Obtains a Gtk::TreeModel and Gtk::TreeModel::Path from selection data of target type "GTK_TREE_MODEL_ROW".

Protected Attributes

GtkTreePath* gobject_

Related Functions

(Note that these are not member functions.)

bool operator!= (const TreePath& lhs, const TreePath& rhs)
bool operator< (const TreePath& lhs, const TreePath& rhs)
bool operator<= (const TreePath& lhs, const TreePath& rhs)
bool operator== (const TreePath& lhs, const TreePath& rhs)
bool operator> (const TreePath& lhs, const TreePath& rhs)
bool operator>= (const TreePath& lhs, const TreePath& rhs)
void swap (TreePath& lhs, TreePath& rhs)
Gtk::TreePath wrap (GtkTreePath* object, bool take_copy=false)
 A Glib::wrap() method for this object.


Member Typedef Documentation

typedef const int* Gtk::TreePath::const_iterator

typedef const int& Gtk::TreePath::const_reference

typedef std::reverse_iterator<const_iterator> Gtk::TreePath::const_reverse_iterator

typedef std::reverse_iterator<iterator> Gtk::TreePath::reverse_iterator

typedef unsigned int Gtk::TreePath::size_type


Constructor & Destructor Documentation

Gtk::TreePath::TreePath (  ) 

Gtk::TreePath::TreePath ( GtkTreePath *  gobject,
bool  make_a_copy = true 
) [explicit]

Gtk::TreePath::TreePath ( const TreePath other  ) 

Gtk::TreePath::~TreePath (  ) 

Gtk::TreePath::TreePath ( size_type  n,
value_type  value = 0 
) [explicit]

Gtk::TreePath::TreePath ( const Glib::ustring path  )  [explicit]

Gtk::TreePath::TreePath ( const TreeModel::iterator iter  )  [explicit]

template <class In>
Gtk::TreePath::TreePath ( In  pbegin,
In  pend 
) [inline]


Member Function Documentation

template <class In>
void Gtk::TreePath::append ( In  pbegin,
In  pend 
) [inline]

void Gtk::TreePath::append_index ( int  index  ) 

Appends a new index to a path.

As a result, the depth of the path is increased.

Deprecated:
replaced by push_back()
Parameters:
index The index.

template <class In>
void Gtk::TreePath::assign ( In  pbegin,
In  pend 
) [inline]

const_reference Gtk::TreePath::back (  )  const [inline]

References rbegin().

reference Gtk::TreePath::back (  )  [inline]

References rbegin().

const_iterator Gtk::TreePath::begin (  )  const

iterator Gtk::TreePath::begin (  ) 

Referenced by front(), and rend().

void Gtk::TreePath::clear (  ) 

void Gtk::TreePath::down (  ) 

Moves path to point to the first child of the current path.

bool Gtk::TreePath::empty (  )  const

const_iterator Gtk::TreePath::end (  )  const

iterator Gtk::TreePath::end (  ) 

Referenced by rbegin().

const_reference Gtk::TreePath::front (  )  const [inline]

References begin().

reference Gtk::TreePath::front (  )  [inline]

References begin().

int Gtk::TreePath::get_depth (  )  const

Return value: The depth of path.

Deprecated:
replaced by size().
Returns:
The depth of path.

static bool Gtk::TreePath::get_from_selection_data ( const SelectionData selection_data,
TreePath path 
) [static]

See description in the other overload.

static bool Gtk::TreePath::get_from_selection_data ( const SelectionData selection_data,
Glib::RefPtr<TreeModel>&  model,
TreePath path 
) [static]

Obtains a Gtk::TreeModel and Gtk::TreeModel::Path from selection data of target type "GTK_TREE_MODEL_ROW".

Normally called from a drag_data_received handler. This function can only be used if selection_data originates from the same process that's calling this function, because a pointer to the tree model is being passed around. If you aren't in the same process, then you'll get memory corruption. In the Gtk::TreeDragDest drag_data_received signal handler, you can assume that selection data of type "GTK_TREE_MODEL_ROW" is from the current process.

Parameters:
selection_data a SelectionData
model a Gtk::TreeModel
path a row in model
Returns:
true if the selection_data had target type "GTK_TREE_MODEL_ROW" and is otherwise valid

Glib::ArrayHandle<int> Gtk::TreePath::get_indices (  )  const

Deprecated:
replaced by begin(), end(), and operator[]

const GtkTreePath* Gtk::TreePath::gobj (  )  const [inline]

Provides access to the underlying C instance.

References gobject_.

GtkTreePath* Gtk::TreePath::gobj (  )  [inline]

Provides access to the underlying C instance.

References gobject_.

GtkTreePath* Gtk::TreePath::gobj_copy (  )  const

Provides access to the underlying C instance. The caller is responsible for freeing it. Use when directly setting fields in structs.

bool Gtk::TreePath::is_ancestor ( const TreePath descendant  )  const

Return value: true if descendant is contained inside path.

Parameters:
descendant Another Gtk::TreePath.
Returns:
true if descendant is contained inside path.

bool Gtk::TreePath::is_descendant ( const TreePath ancestor  )  const

Return value: true if ancestor contains path somewhere below it.

Parameters:
ancestor Another Gtk::TreePath.
Returns:
true if ancestor contains path somewhere below it.

void Gtk::TreePath::next (  ) 

Moves the path to point to the next node at the current depth.

Gtk::TreePath::operator bool (  )  const

Checks that the path is not empty, by calling empty().

Since gtkmm 2.16:

TreePath& Gtk::TreePath::operator= ( const TreeModel::iterator iter  ) 

TreePath& Gtk::TreePath::operator= ( const TreePath other  ) 

const_reference Gtk::TreePath::operator[] ( size_type  i  )  const

reference Gtk::TreePath::operator[] ( size_type  i  ) 

void Gtk::TreePath::prepend_index ( int  index  ) 

Prepends a new index to a path.

As a result, the depth of the path is increased.

Deprecated:
replaced by push_front().
Parameters:
index The index.

bool Gtk::TreePath::prev (  ) 

Moves the path to point to the previous node at the current depth, if it exists.

Returns:
true if path has a previous node, and the move was made.

void Gtk::TreePath::push_back ( int  index  ) 

Appends a new index to a path.

As a result, the depth of the path is increased.

Parameters:
index The index.

void Gtk::TreePath::push_front ( int  index  ) 

Prepends a new index to a path.

As a result, the depth of the path is increased.

Parameters:
index The index.

const_reverse_iterator Gtk::TreePath::rbegin (  )  const [inline]

References end().

reverse_iterator Gtk::TreePath::rbegin (  )  [inline]

References end().

Referenced by back().

const_reverse_iterator Gtk::TreePath::rend (  )  const [inline]

References begin().

reverse_iterator Gtk::TreePath::rend (  )  [inline]

References begin().

bool Gtk::TreePath::set_in_selection_data ( SelectionData selection_data,
const Glib::RefPtr<const TreeModel>&  model 
) const

Sets selection data of target type "GTK_TREE_MODEL_ROW".

Normally used in a drag_data_get signal handler.

Parameters:
selection_data some SelectionData
model,: a Gtk::TreeModel
Returns:
true if the selection_data had the proper target type to allow us to set a tree row

size_type Gtk::TreePath::size (  )  const

void Gtk::TreePath::swap ( TreePath other  ) 

Referenced by swap().

Glib::ustring Gtk::TreePath::to_string (  )  const

Generates a string representation of the path.

This string is a ':' separated list of numbers. For example, "4:10:0:3" would be an acceptable return value for this string.

Returns:
The string.

bool Gtk::TreePath::up (  ) 

Moves the path to point to its parent node, if it has a parent.

Returns:
true if path has a parent, and the move was made.


Friends And Related Function Documentation

bool operator!= ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

bool operator< ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

bool operator<= ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

bool operator== ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

bool operator> ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

bool operator>= ( const TreePath lhs,
const TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side
Returns:
The result

void swap ( TreePath lhs,
TreePath rhs 
) [related]

Parameters:
lhs The left-hand side
rhs The right-hand side

References swap().

Gtk::TreePath wrap ( GtkTreePath *  object,
bool  take_copy = false 
) [related]

A Glib::wrap() method for this object.

Parameters:
object The C instance.
take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
Returns:
A C++ instance that wraps this C instance.


Member Data Documentation

GtkTreePath* Gtk::TreePath::gobject_ [protected]

Referenced by gobj().


The documentation for this class was generated from the following file:

Generated for gtkmm 2.4 by Doxygen 1.5.6 © 1997-2001