Pango::Item Class Reference

A Pango::Item stores information about a segment of text. More...

Collaboration diagram for Pango::Item:
[legend]

List of all members.

## Public Member Functions

| Item (PangoItem* castitem, bool make_a_copy=true)
| Item (const Item& src)
Item& | operator= (const Item& src)
| ~Item ()
PangoItem* | gobj_copy () const
| Provides access to the underlying C GObject. The caller is responsible for freeing it. Use when directly setting fields in structs.
Item | split (int split_index, int split_offset)
| Modifies orig to cover only the text after split_index, and returns a new item that covers the text before split_index that used to be in orig.
int | get_offset () const
| Gets the offset of the segment from the beginning of the string in bytes.
int | get_length () const
| Gets the length of the segment in bytes.
int | get_num_chars () const
| Gets the length of the segment in characters.
Analysis | get_analysis () const
| Gets the properties of the segment.
Glib::ustring | get_segment (const Glib::ustring& text) const
| Computes the segment of text that is represented by the item.
GlyphString | shape (const Glib::ustring& text) const
| Convert a segment of text into a string of glyphs.
PangoItem* | gobj ()
| Provides access to the underlying C GObject.
const PangoItem* | gobj () const
| Provides access to the underlying C GObject.

## Protected Attributes

PangoItem* | gobject_

## Related Functions

(Note that these are not member functions.)
Pango::Item | wrap (PangoItem* object, bool take_copy=true)

## Detailed Description

A Pango::Item stores information about a segment of text.

Pango::Item is used as an output type only so there is no public default constructor. You retrieve objects of this type by calling Pango::Context::itemize() with some text. The actual rendering of the segment of text that corresponds to a particular Pango::Item (or some sub-string) into a string of glyphs is done with shape(). The segment of text that corresponds to a Pango::Item can be computed from the text passed into Pango::Context::itemize() with get_segment(). Together with the Pango::Analysis data member that can be accessed with get_analysis() it is needed for further calculations in Pango::GlyphString.

## Constructor & Destructor Documentation

Pango::Item::Item | ( | PangoItem * | castitem,
|  | bool | make_a_copy = `true`
| ) |  | `[explicit]`

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

Pango::Item::~Item | ( |  | ) |

## Member Function Documentation

Analysis Pango::Item::get_analysis | ( |  | ) | const

Gets the properties of the segment.

Returns:
  The properties of the segment.

int Pango::Item::get_length | ( |  | ) | const

Gets the length of the segment in bytes.

Returns:
  The length of the segment in bytes.

int Pango::Item::get_num_chars | ( |  | ) | const

Gets the length of the segment in characters.

Returns:
  The length of the semgment in characters.

int Pango::Item::get_offset | ( |  | ) | const

Gets the offset of the segment from the beginning of the string in bytes.

Returns:
  The offset of the segment from the beginning of the string in bytes.

Glib::ustring Pango::Item::get_segment | ( | const Glib::ustring & | text | ) | const

Computes the segment of text that is represented by the item.

Parameters:

  text | The text that has been passed into Pango::Context::itemize().

Returns:
  The sub-string of text that corresponds to the item.

PangoItem* Pango::Item::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

const PangoItem* Pango::Item::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

PangoItem* Pango::Item::gobj_copy | ( |  | ) | const

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

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

GlyphString Pango::Item::shape | ( | const Glib::ustring & | text | ) | const

Convert a segment of text into a string of glyphs.

Parameters:

  text | The text to process. This must either be the whole segment of text that corresponds to the item as returned by get_segment() or a sub-string of that segment. You need to pass the same text to the member functions of Pango::GlyphString for further calculations.

Returns:
  A Pango::GlyphString object that can be measured or drawn.

Item Pango::Item::split | ( | int | split_index,
|  | int | split_offset
| ) |  |

Modifies orig to cover only the text after split_index, and returns a new item that covers the text before split_index that used to be in orig.

You can think of split_index as the length of the returned item. split_index may not be 0, and it may not be greater than or equal to the length of orig (that is, there must be at least one byte assigned to each item, you can't create a zero-length item). split_offset is the length of the first item in chars, and must be provided because the text used to generate the item isn't available, so split() can't count the char length of the split items itself.

Parameters:

  split_index | Byte index of position to split item, relative to the start of the item.
  split_offset | Number of chars between start of orig and split_index.

Returns:
  New item representing text before split_index, which should be freed with free().

## Friends And Related Function Documentation

Pango::Item wrap | ( | PangoItem * | object,
|  | bool | take_copy = `true`
| ) |  | `[related]`

## Member Data Documentation

PangoItem* Pango::Item::gobject_ `[protected]`

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

- pangomm/item.h