Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>pangomm: Pango::LayoutLine Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-extra.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">pangomm
   &#160;<span id="projectnumber">2.40.1</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacePango.html">Pango</a></li><li class="navelem"><a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#related">Related Functions</a> &#124;
<a href="classPango_1_1LayoutLine-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Pango::LayoutLine Class Reference<span class="mlabels"><span class="mlabel">final</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>A <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">Pango::LayoutLine</a> represents one of the lines resulting from laying out a paragraph via <a class="el" href="classPango_1_1Layout.html" title="A Pango::Layout represents an entire paragraph of text. ">Pango::Layout</a>.  
 <a href="classPango_1_1LayoutLine.html#details">More...</a></p>

<p><code>#include &lt;pangomm/layoutline.h&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a51618ce64e333dc8b55f0c588a914917"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a51618ce64e333dc8b55f0c588a914917">reference</a> () const </td></tr>
<tr class="memdesc:a51618ce64e333dc8b55f0c588a914917"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increment the reference count for this object.  <a href="#a51618ce64e333dc8b55f0c588a914917">More...</a><br /></td></tr>
<tr class="separator:a51618ce64e333dc8b55f0c588a914917"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a40d1aab5b7a26a47ae2fe3ead5092a8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a40d1aab5b7a26a47ae2fe3ead5092a8b">unreference</a> () const </td></tr>
<tr class="memdesc:a40d1aab5b7a26a47ae2fe3ead5092a8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrement the reference count for this object.  <a href="#a40d1aab5b7a26a47ae2fe3ead5092a8b">More...</a><br /></td></tr>
<tr class="separator:a40d1aab5b7a26a47ae2fe3ead5092a8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ee5d864ea3ccdf8e76c464ffd684f45"><td class="memItemLeft" align="right" valign="top">PangoLayoutLine*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a5ee5d864ea3ccdf8e76c464ffd684f45">gobj</a> ()</td></tr>
<tr class="memdesc:a5ee5d864ea3ccdf8e76c464ffd684f45"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance.  <a href="#a5ee5d864ea3ccdf8e76c464ffd684f45">More...</a><br /></td></tr>
<tr class="separator:a5ee5d864ea3ccdf8e76c464ffd684f45"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afacb30f2eaf99842a592c8fc1d5a2f30"><td class="memItemLeft" align="right" valign="top">const PangoLayoutLine*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#afacb30f2eaf99842a592c8fc1d5a2f30">gobj</a> () const </td></tr>
<tr class="memdesc:afacb30f2eaf99842a592c8fc1d5a2f30"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance.  <a href="#afacb30f2eaf99842a592c8fc1d5a2f30">More...</a><br /></td></tr>
<tr class="separator:afacb30f2eaf99842a592c8fc1d5a2f30"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6833385e9b4c11d8da09e83af006943"><td class="memItemLeft" align="right" valign="top">PangoLayoutLine*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#ad6833385e9b4c11d8da09e83af006943">gobj_copy</a> () const </td></tr>
<tr class="memdesc:ad6833385e9b4c11d8da09e83af006943"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  <a href="#ad6833385e9b4c11d8da09e83af006943">More...</a><br /></td></tr>
<tr class="separator:ad6833385e9b4c11d8da09e83af006943"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bec00071cfe3d99312adecea02c598c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a0bec00071cfe3d99312adecea02c598c">LayoutLine</a> ()=delete</td></tr>
<tr class="separator:a0bec00071cfe3d99312adecea02c598c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b682c0f2c79a8cc2c64c97e117bcb00"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a7b682c0f2c79a8cc2c64c97e117bcb00">LayoutLine</a> (const <a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp;)=delete</td></tr>
<tr class="separator:a7b682c0f2c79a8cc2c64c97e117bcb00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcda02cb308ac0a0fe46526e486ff294"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#afcda02cb308ac0a0fe46526e486ff294">operator=</a> (const <a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp;)=delete</td></tr>
<tr class="separator:afcda02cb308ac0a0fe46526e486ff294"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af77f966e3d31f3ab51b9e70b394f48db"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#af77f966e3d31f3ab51b9e70b394f48db">x_to_index</a> (int x_pos, int&amp; index, int&amp; trailing) const </td></tr>
<tr class="memdesc:af77f966e3d31f3ab51b9e70b394f48db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from x offset to the byte index of the corresponding character within the text of the layout.  <a href="#af77f966e3d31f3ab51b9e70b394f48db">More...</a><br /></td></tr>
<tr class="separator:af77f966e3d31f3ab51b9e70b394f48db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1de6ad107210fe4baa8d0337829fbc5a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a1de6ad107210fe4baa8d0337829fbc5a">index_to_x</a> (int index, bool trailing) const </td></tr>
<tr class="memdesc:a1de6ad107210fe4baa8d0337829fbc5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts an index within a line to a <em>x</em> position.  <a href="#a1de6ad107210fe4baa8d0337829fbc5a">More...</a><br /></td></tr>
<tr class="separator:a1de6ad107210fe4baa8d0337829fbc5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeaae1724a7869060362dc74f09fc2a84"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1ArrayHandle.html">Glib::ArrayHandle</a>&lt; <a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00468.html">std::pair</a>&lt; int, int &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#aeaae1724a7869060362dc74f09fc2a84">get_x_ranges</a> (int start_index, int end_index) const </td></tr>
<tr class="memdesc:aeaae1724a7869060362dc74f09fc2a84"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a list of visual ranges corresponding to a given logical range.  <a href="#aeaae1724a7869060362dc74f09fc2a84">More...</a><br /></td></tr>
<tr class="separator:aeaae1724a7869060362dc74f09fc2a84"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a885841dbd749caf36743efb7522058c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a885841dbd749caf36743efb7522058c7">get_extents</a> (<a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp; ink_rect, <a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp; logical_rect) const </td></tr>
<tr class="memdesc:a885841dbd749caf36743efb7522058c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the logical and ink extents of a layout line.  <a href="#a885841dbd749caf36743efb7522058c7">More...</a><br /></td></tr>
<tr class="separator:a885841dbd749caf36743efb7522058c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4bf703ce2d452be39a3c0de24b5170e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#aa4bf703ce2d452be39a3c0de24b5170e">get_ink_extents</a> () const </td></tr>
<tr class="memdesc:aa4bf703ce2d452be39a3c0de24b5170e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the ink extents of a layout line.  <a href="#aa4bf703ce2d452be39a3c0de24b5170e">More...</a><br /></td></tr>
<tr class="separator:aa4bf703ce2d452be39a3c0de24b5170e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e717f4ff9452a20a16c7b0fda5378bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a7e717f4ff9452a20a16c7b0fda5378bb">get_logical_extents</a> () const </td></tr>
<tr class="memdesc:a7e717f4ff9452a20a16c7b0fda5378bb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the logical extents of a layout line.  <a href="#a7e717f4ff9452a20a16c7b0fda5378bb">More...</a><br /></td></tr>
<tr class="separator:a7e717f4ff9452a20a16c7b0fda5378bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d408d04af088e25da6d352fcedcfbc6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a6d408d04af088e25da6d352fcedcfbc6">get_pixel_extents</a> (<a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp; ink_rect, <a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp; logical_rect) const </td></tr>
<tr class="memdesc:a6d408d04af088e25da6d352fcedcfbc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the logical and ink extents of a layout line.  <a href="#a6d408d04af088e25da6d352fcedcfbc6">More...</a><br /></td></tr>
<tr class="separator:a6d408d04af088e25da6d352fcedcfbc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b0ddfd8ff3967e1888d3369e017748a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a3b0ddfd8ff3967e1888d3369e017748a">get_pixel_ink_extents</a> () const </td></tr>
<tr class="memdesc:a3b0ddfd8ff3967e1888d3369e017748a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the ink extents of a layout line in device units.  <a href="#a3b0ddfd8ff3967e1888d3369e017748a">More...</a><br /></td></tr>
<tr class="separator:a3b0ddfd8ff3967e1888d3369e017748a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a1af2c6e8b46e3c1b2b169afb7d68a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a5a1af2c6e8b46e3c1b2b169afb7d68a2">get_pixel_logical_extents</a> () const </td></tr>
<tr class="memdesc:a5a1af2c6e8b46e3c1b2b169afb7d68a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the logical extents of a layout line in device units.  <a href="#a5a1af2c6e8b46e3c1b2b169afb7d68a2">More...</a><br /></td></tr>
<tr class="separator:a5a1af2c6e8b46e3c1b2b169afb7d68a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52843d39eddd6f654b610309fff871a9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a52843d39eddd6f654b610309fff871a9">show_in_cairo_context</a> (const <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1RefPtr.html">Cairo::RefPtr</a>&lt; <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1Context.html">Cairo::Context</a> &gt;&amp; context)</td></tr>
<tr class="memdesc:a52843d39eddd6f654b610309fff871a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Draws this <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">LayoutLine</a> in the specified <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> context.  <a href="#a52843d39eddd6f654b610309fff871a9">More...</a><br /></td></tr>
<tr class="separator:a52843d39eddd6f654b610309fff871a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb1cb484c44661364df684d14a7e884d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#abb1cb484c44661364df684d14a7e884d">add_to_cairo_context</a> (const <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1RefPtr.html">Cairo::RefPtr</a>&lt; <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1Context.html">Cairo::Context</a> &gt;&amp; context)</td></tr>
<tr class="memdesc:abb1cb484c44661364df684d14a7e884d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Adds the text in this <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">LayoutLine</a> to the current path in the specified <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> <em>context</em>.  <a href="#abb1cb484c44661364df684d14a7e884d">More...</a><br /></td></tr>
<tr class="separator:abb1cb484c44661364df684d14a7e884d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3e8851e5e2481bf4559958338e01d1a"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classPango_1_1Layout.html">Pango::Layout</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#ae3e8851e5e2481bf4559958338e01d1a">get_layout</a> ()</td></tr>
<tr class="separator:ae3e8851e5e2481bf4559958338e01d1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82cb8f97313369fcbbaf0244d1d81f75"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; const <a class="el" href="classPango_1_1Layout.html">Pango::Layout</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a82cb8f97313369fcbbaf0244d1d81f75">get_layout</a> () const </td></tr>
<tr class="separator:a82cb8f97313369fcbbaf0244d1d81f75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50a51d9afd8cad40f16336221b810a0b"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a50a51d9afd8cad40f16336221b810a0b">get_length</a> () const </td></tr>
<tr class="separator:a50a51d9afd8cad40f16336221b810a0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72a04c99b420f18a61778ebcbdaf6998"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a72a04c99b420f18a61778ebcbdaf6998">get_start_index</a> () const </td></tr>
<tr class="separator:a72a04c99b420f18a61778ebcbdaf6998"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a65833ffd409701b3af4955748bebcbcb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a65833ffd409701b3af4955748bebcbcb">operator delete</a> (void*, std::size_t)</td></tr>
<tr class="separator:a65833ffd409701b3af4955748bebcbcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="related"></a>
Related Functions</h2></td></tr>
<tr><td class="ititle" colspan="2"><p>(Note that these are not member functions.) </p>
</td></tr>
<tr class="memitem:a1c22164b9cc710ab83b82a8833f403d6"><td class="memItemLeft" align="right" valign="top"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classPango_1_1LayoutLine.html">Pango::LayoutLine</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPango_1_1LayoutLine.html#a1c22164b9cc710ab83b82a8833f403d6">wrap</a> (PangoLayoutLine* object, bool take_copy=false)</td></tr>
<tr class="memdesc:a1c22164b9cc710ab83b82a8833f403d6"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object.  <a href="#a1c22164b9cc710ab83b82a8833f403d6">More...</a><br /></td></tr>
<tr class="separator:a1c22164b9cc710ab83b82a8833f403d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">Pango::LayoutLine</a> represents one of the lines resulting from laying out a paragraph via <a class="el" href="classPango_1_1Layout.html" title="A Pango::Layout represents an entire paragraph of text. ">Pango::Layout</a>. </p>
<p><a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">Pango::LayoutLine</a> objects are obtained by calling <a class="el" href="classPango_1_1Layout.html#a5326ffecf052eaed930287f060d7407c" title="Retrieves a particular line from a Pango::Layout. ">Pango::Layout::get_line()</a> and are only valid until the text, attributes, or settings of the parent <a class="el" href="classPango_1_1Layout.html" title="A Pango::Layout represents an entire paragraph of text. ">Pango::Layout</a> are modified. Routines for rendering <a class="el" href="classPango_1_1Layout.html" title="A Pango::Layout represents an entire paragraph of text. ">Pango::Layout</a> objects are provided in code specific to each rendering system. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0bec00071cfe3d99312adecea02c598c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Pango::LayoutLine::LayoutLine </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a7b682c0f2c79a8cc2c64c97e117bcb00"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">Pango::LayoutLine::LayoutLine </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="abb1cb484c44661364df684d14a7e884d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::add_to_cairo_context </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1RefPtr.html">Cairo::RefPtr</a>&lt; <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1Context.html">Cairo::Context</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Adds the text in this <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">LayoutLine</a> to the current path in the specified <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> <em>context</em>. </p>
<p>The origin of the glyphs (the left edge of the line) will be at the current point of the cairo context.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">context</td><td>A <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> context. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a885841dbd749caf36743efb7522058c7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::get_extents </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp;&#160;</td>
          <td class="paramname"><em>ink_rect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp;&#160;</td>
          <td class="paramname"><em>logical_rect</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the logical and ink extents of a layout line. </p>
<p>See the documentation for <a class="el" href="classPango_1_1Font.html#a7fc06adf5a1b63a1b97c6b3fe7e417c5" title="Gets the logical and ink extents of a glyph within a font. ">Pango::Font::get_glyph_extents()</a> for details about the interpretation of the rectangles.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ink_rect</td><td><a class="el" href="classPango_1_1Rectangle.html" title="A Pango::Rectangle represents a rectangle. ">Rectangle</a> used to store the extents of the glyph string as drawn. </td></tr>
    <tr><td class="paramname">logical_rect</td><td><a class="el" href="classPango_1_1Rectangle.html" title="A Pango::Rectangle represents a rectangle. ">Rectangle</a> used to store the logical extents of the glyph string. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aa4bf703ce2d452be39a3c0de24b5170e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a> Pango::LayoutLine::get_ink_extents </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the ink extents of a layout line. </p>
<dl class="section return"><dt>Returns</dt><dd>The extents of the layout line as drawn. </dd></dl>

</div>
</div>
<a class="anchor" id="ae3e8851e5e2481bf4559958338e01d1a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;<a class="el" href="classPango_1_1Layout.html">Pango::Layout</a>&gt; Pango::LayoutLine::get_layout </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a82cb8f97313369fcbbaf0244d1d81f75"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt;const <a class="el" href="classPango_1_1Layout.html">Pango::Layout</a>&gt; Pango::LayoutLine::get_layout </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a50a51d9afd8cad40f16336221b810a0b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Pango::LayoutLine::get_length </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a7e717f4ff9452a20a16c7b0fda5378bb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a> Pango::LayoutLine::get_logical_extents </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the logical extents of a layout line. </p>
<dl class="section return"><dt>Returns</dt><dd>The logical extents of the layout line. </dd></dl>

</div>
</div>
<a class="anchor" id="a6d408d04af088e25da6d352fcedcfbc6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::get_pixel_extents </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp;&#160;</td>
          <td class="paramname"><em>ink_rect</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a>&amp;&#160;</td>
          <td class="paramname"><em>logical_rect</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the logical and ink extents of a layout line. </p>
<p>See the documentation for <a class="el" href="classPango_1_1Font.html#a7fc06adf5a1b63a1b97c6b3fe7e417c5" title="Gets the logical and ink extents of a glyph within a font. ">Pango::Font::get_glyph_extents()</a> for details about the interpretation of the rectangles. The returned rectangles are in device units, as opposed to <a class="el" href="classPango_1_1LayoutLine.html#a885841dbd749caf36743efb7522058c7" title="Compute the logical and ink extents of a layout line. ">get_extents()</a>, which returns the extents in units of device unit / PANGO_SCALE.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">ink_rect</td><td><a class="el" href="classPango_1_1Rectangle.html" title="A Pango::Rectangle represents a rectangle. ">Rectangle</a> used to store the extents of the glyph string as drawn. </td></tr>
    <tr><td class="paramname">logical_rect</td><td><a class="el" href="classPango_1_1Rectangle.html" title="A Pango::Rectangle represents a rectangle. ">Rectangle</a> used to store the logical extents of the glyph string. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3b0ddfd8ff3967e1888d3369e017748a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a> Pango::LayoutLine::get_pixel_ink_extents </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the ink extents of a layout line in device units. </p>
<dl class="section return"><dt>Returns</dt><dd>The extents of the layout line as drawn. </dd></dl>

</div>
</div>
<a class="anchor" id="a5a1af2c6e8b46e3c1b2b169afb7d68a2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classPango_1_1Rectangle.html">Rectangle</a> Pango::LayoutLine::get_pixel_logical_extents </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Compute the logical extents of a layout line in device units. </p>
<dl class="section return"><dt>Returns</dt><dd>The logical extents of the layout line. </dd></dl>

</div>
</div>
<a class="anchor" id="a72a04c99b420f18a61778ebcbdaf6998"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Pango::LayoutLine::get_start_index </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="aeaae1724a7869060362dc74f09fc2a84"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1ArrayHandle.html">Glib::ArrayHandle</a>&lt;<a class="elRef" doxygen="libstdc++.tag:http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a00468.html">std::pair</a>&lt;int,int&gt; &gt; Pango::LayoutLine::get_x_ranges </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>start_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>end_index</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Get a list of visual ranges corresponding to a given logical range. </p>
<p>This list is not necessarily minimal - there may be consecutive ranges which are adjacent. The ranges will be sorted from left to right. The ranges are with respect to the left edge of the entire layout, not with respect to the line. </p><dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">start_index</td><td>The start byte index of the logical range. If the value of <em>start_index</em> is less than the start index for the line, then the first range will extend all the way to the leading edge of the layout. Otherwise it will start at the leading edge of the first character. </td></tr>
    <tr><td class="paramname">end_index</td><td>The end byte index of the logical range. If the value of <em>end_index</em> is greater than the end index for the line, then the last range will extend all the way to the trailing edge of the layout. Otherwise, it will end at the trailing edge of the last character. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>An array of ranges represented by pairs of integers marking the start and end pixel coordinates of the ranges. </dd></dl>

</div>
</div>
<a class="anchor" id="a5ee5d864ea3ccdf8e76c464ffd684f45"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PangoLayoutLine* Pango::LayoutLine::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides access to the underlying C instance. </p>

</div>
</div>
<a class="anchor" id="afacb30f2eaf99842a592c8fc1d5a2f30"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const PangoLayoutLine* Pango::LayoutLine::gobj </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides access to the underlying C instance. </p>

</div>
</div>
<a class="anchor" id="ad6833385e9b4c11d8da09e83af006943"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PangoLayoutLine* Pango::LayoutLine::gobj_copy </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs. </p>

</div>
</div>
<a class="anchor" id="a1de6ad107210fe4baa8d0337829fbc5a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int Pango::LayoutLine::index_to_x </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>trailing</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts an index within a line to a <em>x</em> position. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">index</td><td>Byte offset of a grapheme within the layout. </td></tr>
    <tr><td class="paramname">trailing</td><td>A boolean indicating the edge of the grapheme to retrieve the position of. If <code>false</code>, the trailing edge of the grapheme, if <code>true</code> the leading of the grapheme. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The x offset (in thousands of a device unit). </dd></dl>

</div>
</div>
<a class="anchor" id="a65833ffd409701b3af4955748bebcbcb"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::operator delete </td>
          <td>(</td>
          <td class="paramtype">void *&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">std::size_t&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="afcda02cb308ac0a0fe46526e486ff294"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp; Pango::LayoutLine::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classPango_1_1LayoutLine.html">LayoutLine</a>&amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">delete</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a51618ce64e333dc8b55f0c588a914917"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::reference </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Increment the reference count for this object. </p>
<p>You should never need to do this manually - use the object via a RefPtr instead. </p>

</div>
</div>
<a class="anchor" id="a52843d39eddd6f654b610309fff871a9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::show_in_cairo_context </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1RefPtr.html">Cairo::RefPtr</a>&lt; <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/classCairo_1_1Context.html">Cairo::Context</a> &gt; &amp;&#160;</td>
          <td class="paramname"><em>context</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Draws this <a class="el" href="classPango_1_1LayoutLine.html" title="A Pango::LayoutLine represents one of the lines resulting from laying out a paragraph via Pango::Layo...">LayoutLine</a> in the specified <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> context. </p>
<p>The origin of the glyphs (the left edge of the line) will be drawn at the current point of the cairo context.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">context</td><td>A <a class="elRef" doxygen="cairomm-1.0.tag:http://www.cairographics.org/documentation/cairomm/reference/" href="http://www.cairographics.org/documentation/cairomm/reference/namespaceCairo.html">Cairo</a> context. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a40d1aab5b7a26a47ae2fe3ead5092a8b"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Pango::LayoutLine::unreference </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Decrement the reference count for this object. </p>
<p>You should never need to do this manually - use the object via a RefPtr instead. </p>

</div>
</div>
<a class="anchor" id="af77f966e3d31f3ab51b9e70b394f48db"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool Pango::LayoutLine::x_to_index </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x_pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>trailing</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Converts from x offset to the byte index of the corresponding character within the text of the layout. </p>
<p>If <em>x_pos</em> is outside the line, <em>index</em> and <em>trailing</em> will point to the very first or very last position in the line. This determination is based on the resolved direction of the paragraph; for example, if the resolved direction is right-to-left, then an X position to the right of the line (after it) results in 0 being stored in <em>index</em> and <em>trailing</em>. An X position to the left of the line results in <em>index</em> pointing to the (logical) last grapheme in the line and <em>trailing</em> being set to the number of characters in that grapheme. The reverse is true for a left-to-right line.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">x_pos</td><td>The X offset (in <a class="el" href="namespacePango.html">Pango</a> units) from the left edge of the line. </td></tr>
    <tr><td class="paramname">index</td><td>Location to store calculated byte index for the grapheme in which the user clicked. </td></tr>
    <tr><td class="paramname">trailing</td><td>Location to store an integer indicating where in the grapheme the user clicked. It will either be zero, or the number of characters in the grapheme. 0 represents the leading edge of the grapheme. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><code>false</code> if <em>x_pos</em> was outside the line, <code>true</code> if inside. </dd></dl>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a class="anchor" id="a1c22164b9cc710ab83b82a8833f403d6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/classGlib_1_1RefPtr.html">Glib::RefPtr</a>&lt; <a class="el" href="classPango_1_1LayoutLine.html">Pango::LayoutLine</a> &gt; wrap </td>
          <td>(</td>
          <td class="paramtype">PangoLayoutLine *&#160;</td>
          <td class="paramname"><em>object</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>take_copy</em> = <code>false</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">related</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>A <a class="elRef" doxygen="glibmm-2.4.tag:http://library.gnome.org/devel/glibmm/unstable/" href="http://library.gnome.org/devel/glibmm/unstable/namespaceGlib.html#a671306f4a3a0cae5ab4d7a9d54886592">Glib::wrap()</a> method for this object. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramname">object</td><td>The C instance. </td></tr>
    <tr><td class="paramname">take_copy</td><td>False if the result should take ownership of the C instance. True if it should take a new copy or ref. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A C++ instance that wraps this C instance. </dd></dl>

</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Aug 19 2016 15:59:16 for pangomm by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.9.1
</small></address>
</body>
</html>