pangomm: Pango::AttrIter Class Reference

# Pango::AttrIter Class Reference

A Pango::AttrIter is used to represent an iterator through a Pango::AttrList. More...

Collaboration diagram for Pango::AttrIter:
[legend]

List of all members.

## Public Types
typedef std::forward_iterator_tag | iterator_category
typedef int | difference_type
## Public Member Functions
| AttrIter (PangoAttrIterator* castitem, bool take_copy=true)
| AttrIter (const AttrIter& src)
| ~AttrIter ()
AttrIter& | operator= (const AttrIter& src)
AttrIter& | operator++ ()
| Advance the iterator until the next change of style.
const AttrIter | operator++ (int)
| operator bool () const
| Check whether the iterator is valid.
bool | next ()
| The same as operator++().
void | get_range (int&start, int& end) const
| Get the range of the current segment.
Attribute | get_attribute (AttrType type) const
| Find the current attribute of a particular type at the iterator location.
FontDescription | get_font_desc () const
| Get the font description used at the current iterator position.
Language | get_language () const
| Gets the language tag used at current iterator position.
SListHandle_Attribute | get_extra_attrs () const
| Gets a list of non-font attributes at the the current iterator position.
SListHandle_Attribute | get_attrs () const
| Gets a list all attributes a the current position of the iterator.
PangoAttrIterator* | gobj ()
const PangoAttrIterator* | gobj () const
## Protected Member Functions
| AttrIter ()
## Protected Attributes
PangoAttrIterator* | gobject_
## Related Functions
(Note that these are not member functions.)
Pango::AttrIter | wrap (PangoAttrIterator* object, bool take_copy=false)

## Detailed Description

A Pango::AttrIter is used to represent an iterator through a Pango::AttrList.

A new iterator is created with Pango::AttrList::get_iter(). Once the iterator is created, it can be advanced through the style changes in the text using Pango::AttrIter::next(). At each style change, the range of the current style segment and the attributes currently in effect can be queried.

## Member Typedef Documentation

typedef int Pango::AttrIter::difference_type

typedef std::forward_iterator_tag Pango::AttrIter::iterator_category

## Constructor & Destructor Documentation

Pango::AttrIter::AttrIter | ( |  | ) | `[protected]`

Pango::AttrIter::AttrIter | ( | PangoAttrIterator * | castitem,
|  | bool | take_copy = `true` |
| ) |  |  | `[explicit]`

Pango::AttrIter::AttrIter | ( | const AttrIter& | src | ) |

Pango::AttrIter::~AttrIter | ( |  | ) |

## Member Function Documentation

Attribute Pango::AttrIter::get_attribute | ( | AttrType | type | ) | const

Find the current attribute of a particular type at the iterator location.

When multiple attributes of the same type overlap, the attribute whose range starts closest to the current location is used.

Parameters:

  | type | The type of attribute to find.

Returns:
  The current attribute of the given type, or `0` if no attribute of that type applies to the current location.

SListHandle_Attribute Pango::AttrIter::get_attrs | ( |  | ) | const

Gets a list all attributes a the current position of the iterator.

Returns:
  A list of all attributes for the current range.

SListHandle_Attribute Pango::AttrIter::get_extra_attrs | ( |  | ) | const

Gets a list of non-font attributes at the the current iterator position.

Only the highest priority value of each attribute will be added to this list.

Returns:
  The list of non-font attributes at the current iterator position.

FontDescription Pango::AttrIter::get_font_desc | ( |  | ) | const

Get the font description used at the current iterator position.

Returns:
  The font description used at the current iterator position.

Language Pango::AttrIter::get_language | ( |  | ) | const

Gets the language tag used at current iterator position.

Returns:
  The language tag or an empty Pango::Language object if non is found.

void Pango::AttrIter::get_range | ( | int & | start,
|  | int & | end |
| ) |  |  | const

Get the range of the current segment.

Note that the stored return values are signed, not unsigned like the values in Pango::Attribute. To deal with this API oversight, stored return values that wouldn't fit into a signed integer are clamped to MAXINT.

Parameters:

  | start | Location to store the start of the range.
  | end | Location to store the end of the range.

const PangoAttrIterator* Pango::AttrIter::gobj | ( |  | ) | const`[inline]`

PangoAttrIterator* Pango::AttrIter::gobj | ( |  | ) | `[inline]`

bool Pango::AttrIter::next | ( |  | ) |

The same as operator++().

Returns:
  `false` if the end of the list is reached.

Pango::AttrIter::operator bool | ( |  | ) | const

Check whether the iterator is valid.

Returns:
  `true` if the iterator is valid.

const AttrIter Pango::AttrIter::operator++ | ( | int |  | ) |

AttrIter& Pango::AttrIter::operator++ | ( |  | ) |

Advance the iterator until the next change of style.

The iterator becomes invalid if the end of the list is reached.

Returns:
  The iterator itself.

AttrIter& Pango::AttrIter::operator= | ( | const AttrIter& | src | ) |

## Friends And Related Function Documentation

Pango::AttrIter wrap | ( | PangoAttrIterator * | object,
|  | bool | take_copy = `false` |
| ) |  |  | `[related]`

## Member Data Documentation

PangoAttrIterator* Pango::AttrIter::gobject_`[protected]`

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

- pangomm/attriter.h