Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > f37f2c0b149d5391818dc5157943cda0 > files > 56

gnome-chemistry-utils-devel-0.10.8-3mdv2010.0.i586.rpm

<!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"/>
<title>The Gnome Chemistry Utils: gcp::Fragment Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.6.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</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>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.html"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><a class="el" href="namespacegcp.html">gcp</a>::<a class="el" href="classgcp_1_1Fragment.html">Fragment</a>
  </div>
</div>
<div class="contents">
<h1>gcp::Fragment Class Reference</h1><!-- doxytag: class="gcp::Fragment" --><!-- doxytag: inherits="gcp::TextObject" -->
<p>Atoms groups.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="fragment_8h_source.html">gcp/fragment.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for gcp::Fragment:</div>
<div class="dynsection">
 <div class="center">
  <img src="classgcp_1_1Fragment.gif" usemap="#gcp::Fragment_map" alt=""/>
  <map id="gcp::Fragment_map" name="gcp::Fragment_map">
<area href="classgcp_1_1TextObject.html" alt="gcp::TextObject" shape="rect" coords="0,56,99,80"/>
<area href="classgcu_1_1Object.html" alt="gcu::Object" shape="rect" coords="0,0,99,24"/>
</map>
 </div>
</div>

<p><a href="classgcp_1_1Fragment-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ab41de8c9131f1213bc000026087c8851">Fragment</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a62321e32702d45017afa6cd2bdebb1ad">Fragment</a> (double x, double y)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a77719fdc93818580258f533f50f4677c">~Fragment</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a01f3c368ef462df5bb5f841d79f1a330">SetSelected</a> (GtkWidget *w, int state)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#af7b788ef15fe5440f1dd3a36c0bd5f90">Add</a> (GtkWidget *w) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ad395521ca9c43a82afc0e86e61b44b67">Update</a> (GtkWidget *w) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xmlNodePtr&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#affe875b4f4d8710b8c5e6b159ee0fd44">Save</a> (xmlDocPtr xml) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">xmlNodePtr&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#abce3b5098db4c5bccdf68dcd4e7143e1">SaveSelection</a> (xmlDocPtr xml) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a75cac2753415a1e754a24f25ca9e1c1a">Load</a> (xmlNodePtr node)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ae7c0cd0c4b4472096f7a046492ee3bc4">OnChanged</a> (bool save)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a214512088a0105aa2d97e4f3b366ea1e">AnalContent</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a910c8209033f945299ffaae5c6cda031">AnalContent</a> (unsigned start, unsigned &amp;end)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Object *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ab176efcc94b5a04a9c2984f9c6be5e29">GetAtomAt</a> (double x, double y, double z=0.)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#af2cda52423e1902939a18c04e6650c32">Move</a> (double x, double y, double z=0)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ab2dbc649fd1d9b1b3cc38e3cdfe07aea">Transform2D</a> (<a class="el" href="classgcu_1_1Matrix2D.html">gcu::Matrix2D</a> &amp;m, double x, double y)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a004b9c3481e7044867426f4100d6a03a">OnChangeAtom</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgcp_1_1Atom.html">Atom</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a0107ce9d4ccb3825e5c75d1a384e6fd3">GetAtom</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a929c0a156e782f8015a89f96fb9bf35e">GetElementAtPos</a> (unsigned start, unsigned &amp;end)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a92740237f8c8eb0b9cb198db7c7d09fc">GetChargePosition</a> (<a class="el" href="classgcp_1_1FragmentAtom.html">FragmentAtom</a> *pAtom, unsigned char &amp;Pos, double Angle, double &amp;x, double &amp;y)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a1fcc9b8805176a8485d1e8000ed9395b">GetAvailablePosition</a> (double &amp;x, double &amp;y)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a1ed02d9e1a02584a804215dcd33dde25">GetPosition</a> (double angle, double &amp;x, double &amp;y)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a0e4735f1350a46fd82b8310bca1769e8">Validate</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#ab0eff95c852c2ac3aee2e17efff17c4a">GetYAlign</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a5e0ae1d8b4771ea1fbe02fdc2041cf6b">SetProperty</a> (unsigned property, char const *value)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#a5dfd1584876c3eb4499c06c807f2809a">Analyze</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgcp_1_1Fragment.html#afe64f223ce6f8d761737e50517a58f8c">Update</a> ()</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Atoms groups. </p>
<p>Represents atoms groups displayed as a string. Currntly, the string is not fully parsed, so that some non sense strings might be accepted. Anyway, this will not always be the case in the future. </p>

<p>Definition at line <a class="el" href="fragment_8h_source.html#l00044">44</a> of file <a class="el" href="fragment_8h_source.html">fragment.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab41de8c9131f1213bc000026087c8851"></a><!-- doxytag: member="gcp::Fragment::Fragment" ref="ab41de8c9131f1213bc000026087c8851" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gcp::Fragment::Fragment </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The default constructor. </p>

</div>
</div>
<a class="anchor" id="a62321e32702d45017afa6cd2bdebb1ad"></a><!-- doxytag: member="gcp::Fragment::Fragment" ref="a62321e32702d45017afa6cd2bdebb1ad" args="(double x, double y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">gcp::Fragment::Fragment </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x position of the new fragment. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y position of the new fragment.</td></tr>
  </table>
  </dd>
</dl>
<p>Constructs a new fragment and position it. x and y are the position of the main atom or residue in the fragment. </p>

</div>
</div>
<a class="anchor" id="a77719fdc93818580258f533f50f4677c"></a><!-- doxytag: member="gcp::Fragment::~Fragment" ref="a77719fdc93818580258f533f50f4677c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual gcp::Fragment::~Fragment </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The destructor. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="af7b788ef15fe5440f1dd3a36c0bd5f90"></a><!-- doxytag: member="gcp::Fragment::Add" ref="af7b788ef15fe5440f1dd3a36c0bd5f90" args="(GtkWidget *w) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::Add </td>
          <td>(</td>
          <td class="paramtype">GtkWidget *&nbsp;</td>
          <td class="paramname"> <em>w</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>w</em>&nbsp;</td><td>a GtkWidget.</td></tr>
  </table>
  </dd>
</dl>
<p>Adds the representation of the fragment to the canvas widget. </p>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#afcd1e6f8bc15be563bd33429757d9d21">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a910c8209033f945299ffaae5c6cda031"></a><!-- doxytag: member="gcp::Fragment::AnalContent" ref="a910c8209033f945299ffaae5c6cda031" args="(unsigned start, unsigned &amp;end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::AnalContent </td>
          <td>(</td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned &amp;&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the start fo the substring to parse, in bytes. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>the end fo the substring to parse, in bytes.</td></tr>
  </table>
  </dd>
</dl>
<p>Analyses a substring. </p>

</div>
</div>
<a class="anchor" id="a214512088a0105aa2d97e4f3b366ea1e"></a><!-- doxytag: member="gcp::Fragment::AnalContent" ref="a214512088a0105aa2d97e4f3b366ea1e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::AnalContent </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Analyses the whole contents. </p>

</div>
</div>
<a class="anchor" id="a5dfd1584876c3eb4499c06c807f2809a"></a><!-- doxytag: member="gcp::Fragment::Analyze" ref="a5dfd1584876c3eb4499c06c807f2809a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::Analyze </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Analyses the text in the fragment. This calls <a class="el" href="classgcp_1_1Fragment.html#a214512088a0105aa2d97e4f3b366ea1e">gcp::Fragment::AnalContent()</a> and updates the attribute list. </p>

</div>
</div>
<a class="anchor" id="a0107ce9d4ccb3825e5c75d1a384e6fd3"></a><!-- doxytag: member="gcp::Fragment::GetAtom" ref="a0107ce9d4ccb3825e5c75d1a384e6fd3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classgcp_1_1Atom.html">Atom</a>* gcp::Fragment::GetAtom </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the main atom, which might have a bond. </dd></dl>

<p>Definition at line <a class="el" href="fragment_8h_source.html#l00157">157</a> of file <a class="el" href="fragment_8h_source.html">fragment.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab176efcc94b5a04a9c2984f9c6be5e29"></a><!-- doxytag: member="gcp::Fragment::GetAtomAt" ref="ab176efcc94b5a04a9c2984f9c6be5e29" args="(double x, double y, double z=0.)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Object* gcp::Fragment::GetAtomAt </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>z</em> = <code>0.</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x coordinate </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y coordinate </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>the z coordinate (unused)</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>a pointer to the <a class="el" href="classgcp_1_1Atom.html">Atom</a> correpoding to the symbol at or near the position defined by the coordinates passed as parameters, if any. </dd></dl>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#aa47c38061c6a2e51947d89c86fbae630">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a1fcc9b8805176a8485d1e8000ed9395b"></a><!-- doxytag: member="gcp::Fragment::GetAvailablePosition" ref="a1fcc9b8805176a8485d1e8000ed9395b" args="(double &amp;x, double &amp;y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gcp::Fragment::GetAvailablePosition </td>
          <td>(</td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x position. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y position.</td></tr>
  </table>
  </dd>
</dl>
<p>This method finds an available position for drawing a charge sign or electrons and returns it as a symbolic value (see POSITION_E, POSITION_N,...). The <em>x</em> and <em>y</em> are updated so that they give the absolute position. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>an available position. </dd></dl>

</div>
</div>
<a class="anchor" id="a92740237f8c8eb0b9cb198db7c7d09fc"></a><!-- doxytag: member="gcp::Fragment::GetChargePosition" ref="a92740237f8c8eb0b9cb198db7c7d09fc" args="(FragmentAtom *pAtom, unsigned char &amp;Pos, double Angle, double &amp;x, double &amp;y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gcp::Fragment::GetChargePosition </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcp_1_1FragmentAtom.html">FragmentAtom</a> *&nbsp;</td>
          <td class="paramname"> <em>pAtom</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned char &amp;&nbsp;</td>
          <td class="paramname"> <em>Pos</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>Angle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pAtom</em>&nbsp;</td><td>the main atom which will get the local charge. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Pos</em>&nbsp;</td><td>the approximate position of the charge. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Angle</em>&nbsp;</td><td>the angle from horizontal left. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x position of the charge symbol. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y position of the charge symbol.</td></tr>
  </table>
  </dd>
</dl>
<p>If <em>pAtom</em> is not the main atom of the fragment, 0 is returned and <em>Pos</em> is not updated. On input <em>Pos</em> can be one of POSITION_E, POSITION_N,... or 0xff, in which case, it will be given a default value. <em>x</em> and <em>y</em> are set to the position where the charge sign should be displayed usding the alignment code returned by this method. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>a number to set how the charge symbol should be aligned relative to its position. Possible values are:<ul>
<li>−2: center top.</li>
<li>−1: right.</li>
<li>0: center.</li>
<li>1: left.</li>
<li>2: center bottom. </li>
</ul>
</dd></dl>

</div>
</div>
<a class="anchor" id="a929c0a156e782f8015a89f96fb9bf35e"></a><!-- doxytag: member="gcp::Fragment::GetElementAtPos" ref="a929c0a156e782f8015a89f96fb9bf35e" args="(unsigned start, unsigned &amp;end)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int gcp::Fragment::GetElementAtPos </td>
          <td>(</td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned &amp;&nbsp;</td>
          <td class="paramname"> <em>end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>the start position of the atomic symbol. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>end</em>&nbsp;</td><td>the end position of the atomic symbol.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the atomic number corresponding to the symbol starting at <em>start</em>, if any, or 0. <em>end</em> is updated accordingly. </dd></dl>

</div>
</div>
<a class="anchor" id="a1ed02d9e1a02584a804215dcd33dde25"></a><!-- doxytag: member="gcp::Fragment::GetPosition" ref="a1ed02d9e1a02584a804215dcd33dde25" args="(double angle, double &amp;x, double &amp;y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::GetPosition </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>angle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double &amp;&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>angle</em>&nbsp;</td><td>the angle at which a charge sign should be displayed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x position. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y position.</td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>false and do not update the coordinates. </dd></dl>

</div>
</div>
<a class="anchor" id="ab0eff95c852c2ac3aee2e17efff17c4a"></a><!-- doxytag: member="gcp::Fragment::GetYAlign" ref="ab0eff95c852c2ac3aee2e17efff17c4a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double gcp::Fragment::GetYAlign </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the y coordinate at half height of a carbon atom symbol if any was present. </dd></dl>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#aedeec6e6b66e1a35e6d2f3ef75c94a09">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a75cac2753415a1e754a24f25ca9e1c1a"></a><!-- doxytag: member="gcp::Fragment::Load" ref="a75cac2753415a1e754a24f25ca9e1c1a" args="(xmlNodePtr node)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::Load </td>
          <td>(</td>
          <td class="paramtype">xmlNodePtr&nbsp;</td>
          <td class="paramname"> <em>node</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>node</em>&nbsp;</td><td>a pointer to the xmlNode containing the serialized fragment.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to load a frafment in memory. The <a class="el" href="classgcp_1_1Fragment.html" title="Atoms groups.">Fragment</a> must already exist. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true on succes, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classgcp_1_1TextObject.html#add97059392570701098cbff38acbf320">gcp::TextObject</a>.</p>

</div>
</div>
<a class="anchor" id="af2cda52423e1902939a18c04e6650c32"></a><!-- doxytag: member="gcp::Fragment::Move" ref="af2cda52423e1902939a18c04e6650c32" args="(double x, double y, double z=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::Move </td>
          <td>(</td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>z</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x component of the transation vector. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y component of the transation vector. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>z</em>&nbsp;</td><td>the z component of the transation vector.</td></tr>
  </table>
  </dd>
</dl>
<p>Moves the fragment. </p>

<p>Reimplemented from <a class="el" href="classgcp_1_1TextObject.html#ac16ac6e2b2274043a6fc989f0fd140c9">gcp::TextObject</a>.</p>

</div>
</div>
<a class="anchor" id="a004b9c3481e7044867426f4100d6a03a"></a><!-- doxytag: member="gcp::Fragment::OnChangeAtom" ref="a004b9c3481e7044867426f4100d6a03a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::OnChangeAtom </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Called by the framework when the user changes the nature of an atom using the element tool. </p>

</div>
</div>
<a class="anchor" id="ae7c0cd0c4b4472096f7a046492ee3bc4"></a><!-- doxytag: member="gcp::Fragment::OnChanged" ref="ae7c0cd0c4b4472096f7a046492ee3bc4" args="(bool save)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::OnChanged </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>save</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>save</em>&nbsp;</td><td>whether the text should be saved for undo/redo operations.</td></tr>
  </table>
  </dd>
</dl>
<p>Called after any change in the text. </p>

<p>Implements <a class="el" href="classgcp_1_1TextObject.html#a89324827b4be2c01bd575254b39189d5">gcp::TextObject</a>.</p>

</div>
</div>
<a class="anchor" id="affe875b4f4d8710b8c5e6b159ee0fd44"></a><!-- doxytag: member="gcp::Fragment::Save" ref="affe875b4f4d8710b8c5e6b159ee0fd44" args="(xmlDocPtr xml) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcp::Fragment::Save </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&nbsp;</td>
          <td class="paramname"> <em>xml</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xml</em>&nbsp;</td><td>the xmlDoc used to save the document.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to save the fragment to the xmlDoc. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the xmlNode containing the serialized fragment. </dd></dl>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#aad462441e79fbd93e158f8294a198d11">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="abce3b5098db4c5bccdf68dcd4e7143e1"></a><!-- doxytag: member="gcp::Fragment::SaveSelection" ref="abce3b5098db4c5bccdf68dcd4e7143e1" args="(xmlDocPtr xml) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">xmlNodePtr gcp::Fragment::SaveSelection </td>
          <td>(</td>
          <td class="paramtype">xmlDocPtr&nbsp;</td>
          <td class="paramname"> <em>xml</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>xml</em>&nbsp;</td><td>the xmlDoc used for clipboard operations.</td></tr>
  </table>
  </dd>
</dl>
<p>Saves the currently selected text inside the fragment. This method is used by the framework when editing the fragment. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the xmlNode containing the serialized selection. </dd></dl>

</div>
</div>
<a class="anchor" id="a5e0ae1d8b4771ea1fbe02fdc2041cf6b"></a><!-- doxytag: member="gcp::Fragment::SetProperty" ref="a5e0ae1d8b4771ea1fbe02fdc2041cf6b" args="(unsigned property, char const *value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::SetProperty </td>
          <td>(</td>
          <td class="paramtype">unsigned&nbsp;</td>
          <td class="paramname"> <em>property</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&nbsp;</td>
          <td class="paramname"> <em>value</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>property</em>&nbsp;</td><td>the property id as defined in <a class="el" href="objprops_8h.html">objprops.h</a> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>value</em>&nbsp;</td><td>the property value as a string</td></tr>
  </table>
  </dd>
</dl>
<p>Used when loading to set properties for the fragment. This method supports GCU_PROP_POS2D, GCU_PROP_TEXT_TEXT, GCU_PROP_FRAGMENT_ATOM_START, and GCU_PROP_FRAGMENT_ATOM_ID. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the property could be set, or if the property is not relevant, false otherwise. </dd></dl>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#a47862fe83b1c3739ee37b8af81550644">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a01f3c368ef462df5bb5f841d79f1a330"></a><!-- doxytag: member="gcp::Fragment::SetSelected" ref="a01f3c368ef462df5bb5f841d79f1a330" args="(GtkWidget *w, int state)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::SetSelected </td>
          <td>(</td>
          <td class="paramtype">GtkWidget *&nbsp;</td>
          <td class="paramname"> <em>w</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>state</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>w</em>&nbsp;</td><td>the GtkWidget inside which the fragment is displayed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>state</em>&nbsp;</td><td>the selection state of the fragment.</td></tr>
  </table>
  </dd>
</dl>
<p>Used to set the selection state of the fragment inside the widget. The values of state might be <a class="el" href="namespacegcp.html#a2873f45c769a642340cfd80eff3dde74abd6a663c786e2d2b135a74d52f0cd552">gcp::SelStateUnselected</a>, <a class="el" href="namespacegcp.html#a2873f45c769a642340cfd80eff3dde74a94b317915b52f90cbc98b15a577b25d8">gcp::SelStateSelected</a>, <a class="el" href="namespacegcp.html#a2873f45c769a642340cfd80eff3dde74adcae1871fb81a60e980331b689fe3ce0">gcp::SelStateUpdating</a>, or <a class="el" href="namespacegcp.html#a2873f45c769a642340cfd80eff3dde74a2d4e3b5f28ae0af00b9381c2548dea00">gcp::SelStateErasing</a>. </p>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#a9a751a51b887de4a4035ff1927c2aede">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="ab2dbc649fd1d9b1b3cc38e3cdfe07aea"></a><!-- doxytag: member="gcp::Fragment::Transform2D" ref="ab2dbc649fd1d9b1b3cc38e3cdfe07aea" args="(gcu::Matrix2D &amp;m, double x, double y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::Transform2D </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classgcu_1_1Matrix2D.html">gcu::Matrix2D</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>y</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>m</em>&nbsp;</td><td>the Matrix2D of the transformation. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>x</em>&nbsp;</td><td>the x component of the center of the transformation. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>y</em>&nbsp;</td><td>the y component of the center of the transformation.</td></tr>
  </table>
  </dd>
</dl>
<p>Moves and/or transform an object. </p>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#a69ad6edf7d50950b036f09d9ff86f849">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="afe64f223ce6f8d761737e50517a58f8c"></a><!-- doxytag: member="gcp::Fragment::Update" ref="afe64f223ce6f8d761737e50517a58f8c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::Update </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Changes the order of the symbols if necessary when a bond is at an extremity of the fragment. </p>

</div>
</div>
<a class="anchor" id="ad395521ca9c43a82afc0e86e61b44b67"></a><!-- doxytag: member="gcp::Fragment::Update" ref="ad395521ca9c43a82afc0e86e61b44b67" args="(GtkWidget *w) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void gcp::Fragment::Update </td>
          <td>(</td>
          <td class="paramtype">GtkWidget *&nbsp;</td>
          <td class="paramname"> <em>w</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>w</em>&nbsp;</td><td>a GtkWidget.</td></tr>
  </table>
  </dd>
</dl>
<p>Updates the representation of the fragment in the canvas widget. </p>

<p>Reimplemented from <a class="el" href="classgcu_1_1Object.html#af2fffc10644e8cb8a18da68c8e18e24c">gcu::Object</a>.</p>

</div>
</div>
<a class="anchor" id="a0e4735f1350a46fd82b8310bca1769e8"></a><!-- doxytag: member="gcp::Fragment::Validate" ref="a0e4735f1350a46fd82b8310bca1769e8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool gcp::Fragment::Validate </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Validates the contents of the fragment text, and display error messages when necessary. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="fragment_8h_source.html">fragment.h</a></li>
</ul>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated on Sun Sep 6 18:33:54 2009 for The Gnome Chemistry Utils by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.1 </small></address>
</body>
</html>