Sophie

Sophie

distrib > * > cooker > x86_64 > by-pkgid > 5674b83e4098065ec8ee4138eac12e58 > files > 553

lib64gigi-devel-0.8.0-8.1074.1.x86_64.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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>GG: GG::PluginInterface 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" />
</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">GG
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.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="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>
    </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="hierarchy.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="namespaceGG.html">GG</a></li><li class="navelem"><a class="el" href="classGG_1_1PluginInterface.html">PluginInterface</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a>  </div>
  <div class="headertitle">
<div class="title">GG::PluginInterface Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>&gt;</code></p>

<p><a href="classGG_1_1PluginInterface-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a9f8cb3f28a7adece3d02f6ac7ec7da9f"><td class="memItemLeft" align="right" valign="top">typedef const char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a9f8cb3f28a7adece3d02f6ac7ec7da9f">PluginNameFn</a> )()</td></tr>
<tr class="memitem:a33e0808f4e849421ca34c28aa0fbeafa"><td class="memItemLeft" align="right" valign="top">typedef const char *(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a33e0808f4e849421ca34c28aa0fbeafa">DefaultFontNameFn</a> )()</td></tr>
<tr class="memitem:a2baf484e5eaa44a29cc221a0ce58577c"><td class="memItemLeft" align="right" valign="top">typedef unsigned int(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a2baf484e5eaa44a29cc221a0ce58577c">DefaultFontSizeFn</a> )()</td></tr>
<tr class="memitem:a7c07679d573014adb41bcaa701ff7930"><td class="memItemLeft" align="right" valign="top">typedef boost::shared_ptr<br class="typebreak"/>
&lt; <a class="el" href="classGG_1_1StyleFactory.html">StyleFactory</a> &gt;(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a7c07679d573014adb41bcaa701ff7930">GetStyleFactoryFn</a> )()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Structors</h2></td></tr>
<tr class="memitem:aabc63fb7d6668a697a22f6594c170691"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabc63fb7d6668a697a22f6594c170691"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#aabc63fb7d6668a697a22f6594c170691">PluginInterface</a> ()</td></tr>
<tr class="memitem:a8ae9a15130117bc9c65114f6015226a0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a8ae9a15130117bc9c65114f6015226a0">PluginInterface</a> (const std::string &amp;lib_name)</td></tr>
<tr class="memitem:a8afb64cb2bb7273f614726541d13f328"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8afb64cb2bb7273f614726541d13f328"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a8afb64cb2bb7273f614726541d13f328">~PluginInterface</a> ()</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Accessors</h2></td></tr>
<tr class="memitem:a1cf2c3332608ffe8bc2c72ec640c47c1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a1cf2c3332608ffe8bc2c72ec640c47c1">operator int ConvertibleToBoolDummy::*</a> () const </td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="member-group"></a>
Mutators</h2></td></tr>
<tr class="memitem:a43f30d854070d90bb6103b536685e87a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43f30d854070d90bb6103b536685e87a"></a>
<a class="el" href="classGG_1_1PluginInterface.html#a9f8cb3f28a7adece3d02f6ac7ec7da9f">PluginNameFn</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a43f30d854070d90bb6103b536685e87a">PluginName</a></td></tr>
<tr class="memitem:afb396fbee969118f62383e199151a4a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb396fbee969118f62383e199151a4a7"></a>
<a class="el" href="classGG_1_1PluginInterface.html#a33e0808f4e849421ca34c28aa0fbeafa">DefaultFontNameFn</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#afb396fbee969118f62383e199151a4a7">DefaultFontName</a></td></tr>
<tr class="memitem:a3480fbb98f2914cb9622f03eea5d4716"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3480fbb98f2914cb9622f03eea5d4716"></a>
<a class="el" href="classGG_1_1PluginInterface.html#a2baf484e5eaa44a29cc221a0ce58577c">DefaultFontSizeFn</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a3480fbb98f2914cb9622f03eea5d4716">DefaultFontSize</a></td></tr>
<tr class="memitem:a57631d00ce4e0caedc387641bed8f221"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57631d00ce4e0caedc387641bed8f221"></a>
<a class="el" href="classGG_1_1PluginInterface.html#a7c07679d573014adb41bcaa701ff7930">GetStyleFactoryFn</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#a57631d00ce4e0caedc387641bed8f221">GetStyleFactory</a></td></tr>
<tr class="memitem:abbf960aa088f349faa756b0155a101cc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1PluginInterface.html#abbf960aa088f349faa756b0155a101cc">Load</a> (const std::string &amp;lib_name)</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>The interface to custom-control plugins. </p>
<p>This class is used to access derived <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> controls and dialogs that are unknown until runtime, but are available for dynamic loading in shared libraries/DLLs. The interface basically allows you to create custom controls and dialogs (anything a <a class="el" href="classGG_1_1StyleFactory.html" title="Creates new dialogs and Controls.">StyleFactory</a> can produce) from a dynamic-link library, which in turn allows you to change the styles of the controls in an application without recompiling, or even relinking. While the interface is in an unloaded state, the functions in the interface are all null, and calling any of them will crash your app. Once a plugin has been loaded, all the functions in the interface should be valid (if the plugin author did everything correctly). </p>

<p>Definition at line <a class="el" href="PluginInterface_8h_source.html#l00058">58</a> of file <a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>.</p>
</div><hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a9f8cb3f28a7adece3d02f6ac7ec7da9f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef const char*(* GG::PluginInterface::PluginNameFn)()</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The type of function that supplies the name of the plugin. </p>

<p>Definition at line <a class="el" href="PluginInterface_8h_source.html#l00065">65</a> of file <a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>.</p>

</div>
</div>
<a class="anchor" id="a33e0808f4e849421ca34c28aa0fbeafa"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef const char*(* GG::PluginInterface::DefaultFontNameFn)()</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The type of function that supplies the name of the plugin's default font. </p>

<p>Definition at line <a class="el" href="PluginInterface_8h_source.html#l00068">68</a> of file <a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2baf484e5eaa44a29cc221a0ce58577c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned int(* GG::PluginInterface::DefaultFontSizeFn)()</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The type of function that supplies the plugin's default font size. </p>

<p>Definition at line <a class="el" href="PluginInterface_8h_source.html#l00070">70</a> of file <a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7c07679d573014adb41bcaa701ff7930"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef boost::shared_ptr&lt;<a class="el" href="classGG_1_1StyleFactory.html">StyleFactory</a>&gt;(* GG::PluginInterface::GetStyleFactoryFn)()</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>The type of function that supplies the plugin's <a class="el" href="classGG_1_1StyleFactory.html" title="Creates new dialogs and Controls.">StyleFactory</a>. </p>

<p>Definition at line <a class="el" href="PluginInterface_8h_source.html#l00072">72</a> of file <a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a8ae9a15130117bc9c65114f6015226a0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GG::PluginInterface::PluginInterface </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>lib_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Ctor that loads the plugin file <em>lib_name</em>. The base filename should be provided, without the extension (i.e. "foo", not "foo.so" or "foo.dll"). </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a1cf2c3332608ffe8bc2c72ec640c47c1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">GG::PluginInterface::operator int ConvertibleToBoolDummy::* </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Returns true iff this <a class="el" href="classGG_1_1PluginInterface.html" title="The interface to custom-control plugins.">PluginInterface</a> has a loaded plugin. This is a conversion operator, allowing you to test the validity of the interface, as you would a pointer (e.g. if (my_interface) my_interface.PluginName();). </p>
<dl class="section warning"><dt>Warning:</dt><dd>If this method returns false, the functions in the interface are invalid. </dd></dl>

</div>
</div>
<a class="anchor" id="abbf960aa088f349faa756b0155a101cc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool GG::PluginInterface::Load </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>lib_name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Loads the plugin <em>lib_name</em>, unloading the currently-loaded plugin if necessary. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="PluginInterface_8h_source.html">PluginInterface.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Jun 15 2012 15:13:31 for GG by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1
</small></address>
</body>
</html>