Public Member Functions | Protected Attributes | Related Functions

Pango::Item Class Reference

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

Collaboration diagram for Pango::Item:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 Item (PangoItem* castitem, bool make_a_copy=true)
 Item (const Item& src)
Itemoperator= (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:
textThe 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:
textThe 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_indexByte index of position to split item, relative to the start of the item.
split_offsetNumber 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: