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
 Returns the current 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
 Returns true if descendant is a descendant of path .
bool is_descendant (const TreePath& ancestor) const
 Returns true if path is a descendant of ancestor .
void next ()
 Moves the path to point to the next node at the current depth.
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)


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 int Gtk::TreePath::difference_type
 

typedef int* Gtk::TreePath::iterator
 

typedef int& Gtk::TreePath::reference
 

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

typedef unsigned int Gtk::TreePath::size_type
 

typedef int Gtk::TreePath::value_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
 

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]
 

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

const_iterator Gtk::TreePath::begin (  )  const
 

iterator Gtk::TreePath::begin (  ) 
 

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 (  ) 
 

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

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

int Gtk::TreePath::get_depth (  )  const
 

Returns the current 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.

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

Provides access to the underlying C instance.

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
 

Returns true if descendant is a descendant of path .

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

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

Returns true if path is a descendant of ancestor .

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.

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]
 

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

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

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

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  ) 
 

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

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

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]
 


The documentation for this class was generated from the following file:
Generated for gtkmm 2.4 by Doxygen 1.4.6 © 1997-2001