Sophie

Sophie

distrib > Mageia > 3 > x86_64 > by-pkgid > d2855e9970bf9a8259f08fe181d69f9d > files > 693

gnome-chemistry-utils-devel-0.14.2-1.mga3.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>The Gnome Chemistry Utils: application.h Source File</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">The Gnome Chemistry Utils
   &#160;<span id="projectnumber">0.14.2</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.2 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_6719ab1f1f7655efc2fa43f7eb574fd1.html">libs</a></li><li class="navelem"><a class="el" href="dir_a58dfd42f88c935731f32d659aed32ec.html">gcu</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">gcu/application.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="gcu_2application_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// -*- C++ -*-</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
<div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> * Gnome Chemistry Utils</span></div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> * gcu/application.h</span></div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> * Copyright (C) 2005-2012 Jean Bréfort &lt;jean.brefort@normalesup.org&gt;</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> * This program is free software; you can redistribute it and/or</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"> * modify it under the terms of the GNU General Public License as</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> * published by the Free Software Foundation; either version 3 of the</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> * License, or (at your option) any later version.</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"> * along with this program; if not, write to the Free Software</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> * USA</span></div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#ifndef GCU_APPLICATION_H</span></div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GCU_APPLICATION_H</span></div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="dialog-owner_8h.html">dialog-owner.h</a>&quot;</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="gcu_2structs_8h.html">structs.h</a>&quot;</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="object_8h.html">object.h</a>&quot;</span></div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;set&gt;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="macros_8h.html">gcu/macros.h</a>&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="namespacegcu.html">   38</a></span>&#160;<span class="keyword">namespace </span>gcu {</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">class </span><a class="code" href="classgcu_1_1Document.html">Document</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="keyword">class </span><a class="code" href="classgcu_1_1Dialog.html">Dialog</a>;</div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="keyword">struct </span>option_data;</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">class </span>TypeDesc;</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;<span class="keyword">class </span><a class="code" href="classgcu_1_1CmdContext.html" title="error output channel.">CmdContext</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="keyword">class </span><a class="code" href="classgcu_1_1UIManager.html" title="base class for a user interface manager">UIManager</a>;</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="keyword">typedef</span> <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;        std::string name;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;        std::string uri;</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;} Database;</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">#define GCU_CONF_DIR &quot;gchemutils&quot;</span></div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html">   57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgcu_1_1Application.html">Application</a>: <span class="keyword">virtual</span> <span class="keyword">public</span> <a class="code" href="classgcu_1_1DialogOwner.html">DialogOwner</a></div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;{</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgcu_1_1Document.html">Document</a>;</div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgcu_1_1Dialog.html">Dialog</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;        <a class="code" href="classgcu_1_1Application.html#ad038baab7aaf39342b3c5d6650f3794f">Application</a> (std::string name, std::string datadir = DATADIR, <span class="keywordtype">char</span> <span class="keyword">const</span> *help_name = NULL, <span class="keywordtype">char</span> <span class="keyword">const</span> *icon_name = NULL, <a class="code" href="classgcu_1_1CmdContext.html" title="error output channel.">CmdContext</a> *cc = NULL);</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classgcu_1_1Application.html#ae4390c5821167149797507741abf21cf">~Application</a> ();</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;</div>
<div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a9e75345f3bbcac050ecbffe2a0e54adb">OnHelp</a> (std::string s = <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#af63f52a24c853027a7bb6854d1b2f917">HasHelp</a> ();</div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#afff7a39ad3e9b322bfc6ecd87e1a33f2">   97</a></span>&#160;        std::string <span class="keyword">const</span> &amp;<a class="code" href="classgcu_1_1Application.html#afff7a39ad3e9b322bfc6ecd87e1a33f2">GetName</a> ()<span class="keyword"> const </span>{<span class="keywordflow">return</span> Name;}</div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a94cfeb904903c664b617287293d43644">  102</a></span>&#160;        <span class="keyword">virtual</span> GtkWindow * <a class="code" href="classgcu_1_1Application.html#a94cfeb904903c664b617287293d43644">GetWindow</a> () {<span class="keywordflow">return</span> NULL;}</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;</div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ad4936e8c6ba6b972702aea28067104dd">  117</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#ad4936e8c6ba6b972702aea28067104dd">FileProcess</a> (G_GNUC_UNUSED <span class="keyword">const</span> gchar* filename, G_GNUC_UNUSED <span class="keyword">const</span> gchar* mime_type, G_GNUC_UNUSED <span class="keywordtype">bool</span> bSave, G_GNUC_UNUSED GtkWindow *window, G_GNUC_UNUSED <a class="code" href="classgcu_1_1Document.html">Document</a> *pDoc = NULL)</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;                {<span class="keywordflow">return</span> <span class="keyword">false</span>;}</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a328711708b5418ae39ef72f98712732e">  123</a></span>&#160;        <span class="keywordtype">char</span> <span class="keyword">const</span>* <a class="code" href="classgcu_1_1Application.html#a328711708b5418ae39ef72f98712732e">GetCurDir</a> () {<span class="keywordflow">return</span> CurDir.c_str ();}</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a8ea5f1ed424c387a847b8baca1e5c91d">SetCurDir</a> (<span class="keywordtype">char</span> <span class="keyword">const</span>* dir);</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a8ea5f1ed424c387a847b8baca1e5c91d">SetCurDir</a> (std::string <span class="keyword">const</span> &amp;dir);</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;</div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a4466ff140726d27a2772744f8e473605">  138</a></span>&#160;        std::map&lt;std::string, GdkPixbufFormat*&gt; &amp;<a class="code" href="classgcu_1_1Application.html#a4466ff140726d27a2772744f8e473605">GetSupportedPixbufFormats</a> () {<span class="keywordflow">return</span> <a class="code" href="classgcu_1_1Application.html#a01d7fc252bf235a517dc6d7ae5afdce7">m_SupportedPixbufFormats</a>;}</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;        <span class="keywordtype">char</span> <span class="keyword">const</span> *<a class="code" href="classgcu_1_1Application.html#a64669c8089f80219832a737b591d5e37">GetPixbufTypeName</a> (std::string&amp; filename, <span class="keywordtype">char</span> <span class="keyword">const</span> *mime_type);</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;        <a class="code" href="namespacegcu.html#a662cb06e31132a49034b70b48a5f2b8f">ContentType</a> <a class="code" href="classgcu_1_1Application.html#a46902f2b431c2fa67e4020f0834e920f">Load</a> (std::string <span class="keyword">const</span> &amp;uri, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <a class="code" href="classgcu_1_1Document.html">Document</a>* Doc, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;        <a class="code" href="namespacegcu.html#a662cb06e31132a49034b70b48a5f2b8f">ContentType</a> <a class="code" href="classgcu_1_1Application.html#a46902f2b431c2fa67e4020f0834e920f">Load</a> (GsfInput *input, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <a class="code" href="classgcu_1_1Document.html">Document</a>* Doc, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#a7bc68fcaa2f1261e16c0ef3afa6f5379">Save</a> (std::string <span class="keyword">const</span> &amp;uri, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <a class="code" href="classgcu_1_1Object.html">Object</a> <span class="keyword">const</span> *Obj, <a class="code" href="namespacegcu.html#a662cb06e31132a49034b70b48a5f2b8f">ContentType</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;</div>
<div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#a7bc68fcaa2f1261e16c0ef3afa6f5379">Save</a> (GsfOutput *output, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <a class="code" href="classgcu_1_1Object.html">Object</a> <span class="keyword">const</span> *Obj, <a class="code" href="namespacegcu.html#a662cb06e31132a49034b70b48a5f2b8f">ContentType</a> type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;</div>
<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a1fb2e62ce60effbb096f87de8656753b">  209</a></span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classgcu_1_1Document.html">Document</a> *<a class="code" href="classgcu_1_1Application.html#a1fb2e62ce60effbb096f87de8656753b">CreateNewDocument</a> () {<span class="keywordflow">return</span> NULL;}</div>
<div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;</div>
<div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;        <span class="keyword">static</span> GOConfNode *<a class="code" href="classgcu_1_1Application.html#ac1b0ea2d434414d559ed634d09ebc609">GetConfDir</a> ();</div>
<div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;</div>
<div class="line"><a name="l00221"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ad8c700b6ed5300faf9f79e56cfa53ab5">  221</a></span>&#160;        std::string <span class="keyword">const</span> &amp;<a class="code" href="classgcu_1_1Application.html#ad8c700b6ed5300faf9f79e56cfa53ab5">GetIconName</a> () {<span class="keywordflow">return</span> IconName;}</div>
<div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a90de97570dd956b2f6caa84c12ef143f">RegisterOptions</a> (GOptionEntry <span class="keyword">const</span> *entries, <span class="keywordtype">char</span> <span class="keyword">const</span> *translation_domain = GETTEXT_PACKAGE);</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a3e2b7ecc95e6989f8e434708d21f8b35">AddOptions</a> (GOptionContext *context);</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        <span class="keyword">static</span> <a class="code" href="classgcu_1_1Application.html">Application</a> *<a class="code" href="classgcu_1_1Application.html#acca3ba629ab46a89e4c936df0f89655d">GetDefaultApplication</a> ();</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;        <span class="keyword">static</span> <a class="code" href="classgcu_1_1Application.html">Application</a> *<a class="code" href="classgcu_1_1Application.html#a9a7af3e602670630f2bed62b5984253e">GetApplication</a> (<span class="keywordtype">char</span> <span class="keyword">const</span> *name);</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;        <span class="keyword">static</span> <a class="code" href="classgcu_1_1Application.html">Application</a> *<a class="code" href="classgcu_1_1Application.html#a9a7af3e602670630f2bed62b5984253e">GetApplication</a> (std::string &amp;name);</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;        <span class="comment">// Object creation related methods</span></div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;<span class="comment"></span>        <a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> <a class="code" href="classgcu_1_1Application.html#a91568fc2517bf5a02e22e45dfefc89f6">AddType</a> (std::string TypeName, <a class="code" href="classgcu_1_1Object.html">Object</a>* (*CreateFunc) (), <a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> <span class="keywordtype">id</span> = OtherType);</div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;</div>
<div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;        <a class="code" href="classgcu_1_1Object.html">Object</a>* <a class="code" href="classgcu_1_1Application.html#a4cc3a4beb3af643e369a4021bc865593">CreateObject</a> (<span class="keyword">const</span> std::string&amp; TypeName, <a class="code" href="classgcu_1_1Object.html">Object</a>* parent = NULL);</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a4f19d260b0d7414eff1f33bbfc4805e5">AddRule</a> (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type1, <a class="code" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule, <a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type2);</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a4f19d260b0d7414eff1f33bbfc4805e5">AddRule</a> (<span class="keyword">const</span> std::string&amp; type1, <a class="code" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule, <span class="keyword">const</span> std::string&amp; type2);</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;         <span class="keyword">const</span> std::set&lt;TypeId&gt;&amp; <a class="code" href="classgcu_1_1Application.html#afe97221b52b1e729e776805a33e77b0e">GetRules</a> (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> type, <a class="code" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule);</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;</div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;        <span class="keyword">const</span> std::set&lt;TypeId&gt;&amp; <a class="code" href="classgcu_1_1Application.html#afe97221b52b1e729e776805a33e77b0e">GetRules</a> (<span class="keyword">const</span> std::string&amp; type, <a class="code" href="namespacegcu.html#a19c49d12e7c0a96ae2be6c6c33c44b47">RuleId</a> rule);</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;</div>
<div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a6cdb4f8fd6a36768da6b5c790a15afcf">SetCreationLabel</a> (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id, std::string Label);</div>
<div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;        <span class="keyword">const</span> std::string&amp; <a class="code" href="classgcu_1_1Application.html#adac54fe6104d344a8215f2a66aec8f94">GetCreationLabel</a> (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id);</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;</div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#a77daef6686ed45783d38785551dee702">BuildObjectContextualMenu</a> (<a class="code" href="classgcu_1_1Object.html">Object</a> *target, <a class="code" href="classgcu_1_1UIManager.html" title="base class for a user interface manager">UIManager</a> *uim, <a class="code" href="classgcu_1_1Object.html">Object</a> *<span class="keywordtype">object</span>, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y);</div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;</div>
<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#aa32d7fff8aac324622728bd5baaaaef6">AddMenuCallback</a> (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id, <a class="code" href="namespacegcu.html#aea85ee1e0ab66342f28448b2e7a9174d">BuildMenuCb</a> cb);</div>
<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;</div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        <span class="keyword">const</span> std::string&amp; <a class="code" href="classgcu_1_1Application.html#adac54fe6104d344a8215f2a66aec8f94">GetCreationLabel</a> (<span class="keyword">const</span> std::string&amp; TypeName);</div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;</div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;        TypeDesc <span class="keyword">const</span> *GetTypeDescription (<a class="code" href="namespacegcu.html#a4a6abffbefdd6abf047dca4e63b0bac5">TypeId</a> Id);</div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <a class="code" href="classgcu_1_1CmdContext.html" title="error output channel.">CmdContext</a> *<a class="code" href="classgcu_1_1Application.html#a1917c69cc2328bcaac7e8408dc67fd09">GetCmdContext</a> ();</div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;</div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        <span class="keywordtype">char</span>* <a class="code" href="classgcu_1_1Application.html#a171fbd22b6e26ebca12e34c61d3efe12">ConvertToCML</a> (std::string <span class="keyword">const</span> &amp;uri, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;        <span class="keywordtype">char</span>* <a class="code" href="classgcu_1_1Application.html#a171fbd22b6e26ebca12e34c61d3efe12">ConvertToCML</a> (GsfInput *input, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;</div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#ace147caa238e551718517e8f4a778555">ConvertFromCML</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> *cml, std::string <span class="keyword">const</span> &amp;uri, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#ace147caa238e551718517e8f4a778555">ConvertFromCML</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> *cml, GsfOutput *output, <span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> <span class="keywordtype">char</span> *options = NULL);</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;</div>
<div class="line"><a name="l00410"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ab00f052e9aabf7a7c55153bc90035a60">  410</a></span>&#160;        std::list &lt; Database &gt; <span class="keyword">const</span> &amp;<a class="code" href="classgcu_1_1Application.html#ab00f052e9aabf7a7c55153bc90035a60">GetDatabases</a> (<span class="keywordtype">char</span> <span class="keyword">const</span> *classname) {<span class="keywordflow">return</span> m_Databases[classname];}</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#adfe318025ea67cc8df6f14c47d5e518b">RegisterBabelType</a> (<span class="keyword">const</span> <span class="keywordtype">char</span> *mime_type, <span class="keyword">const</span> <span class="keywordtype">char</span> *type);</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;</div>
<div class="line"><a name="l00426"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a7c6c67382076a03aebc47817d388c78c">  426</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#a7c6c67382076a03aebc47817d388c78c">CreateDefaultCmdContext</a> () {}</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;</div>
<div class="line"><a name="l00432"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a59ab13a0e9acd7942cffb3a3c6f6cadc">  432</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgcu_1_1Application.html#a59ab13a0e9acd7942cffb3a3c6f6cadc">LoopRunning</a> () {<span class="keywordflow">return</span> <span class="keyword">false</span>;}</div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;</div>
<div class="line"><a name="l00439"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#acdab90d019b9919895cef1906a8ebd04">  439</a></span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgcu_1_1Application.html#acdab90d019b9919895cef1906a8ebd04">NoMoreDocsEvent</a> () {}</div>
<div class="line"><a name="l00443"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a01d7fc252bf235a517dc6d7ae5afdce7">  443</a></span>&#160;        std::map&lt;std::string, GdkPixbufFormat*&gt; <a class="code" href="classgcu_1_1Application.html#a01d7fc252bf235a517dc6d7ae5afdce7">m_SupportedPixbufFormats</a>;</div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;</div>
<div class="line"><a name="l00448"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ab6939eb5bd335e6ea102090874ecf6f9">  448</a></span>&#160;        <a class="code" href="classgcu_1_1CmdContext.html" title="error output channel.">CmdContext</a> *<a class="code" href="classgcu_1_1Application.html#ab6939eb5bd335e6ea102090874ecf6f9">m_CmdContext</a>;</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;        <span class="keywordtype">void</span> AddDocument (<a class="code" href="classgcu_1_1Document.html">Document</a> *Doc) {<a class="code" href="classgcu_1_1Application.html#a717758f12d971b3ca6fbc4d84c92727a">m_Docs</a>.insert (Doc);}</div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;        <span class="keywordtype">void</span> RemoveDocument (<a class="code" href="classgcu_1_1Document.html">Document</a> *Doc);</div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;        <span class="keywordtype">int</span> OpenBabelSocket ();</div>
<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;        <span class="keywordtype">char</span> <span class="keyword">const</span> *MimeToBabelType (<span class="keywordtype">char</span> <span class="keyword">const</span> *mime_type);</div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;        std::string Name;</div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;        std::string HelpName;</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        std::string HelpBrowser;</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;        std::string HelpFilename;</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;        std::string CurDir;</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;        std::string IconName;</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;        <span class="keyword">static</span> GOConfNode *m_ConfDir;</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;        std::list &lt;option_data&gt; m_Options;</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;        std::map &lt;TypeId, TypeDesc&gt; m_Types;</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;        std::map &lt;std::string, std::string&gt; m_BabelTypes;</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;        std::map &lt; std::string, std::list &lt;Database&gt; &gt;m_Databases;</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;</div>
<div class="line"><a name="l00475"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a717758f12d971b3ca6fbc4d84c92727a">  475</a></span>&#160;<a class="code" href="macros_8h.html#ac63298328b07e40af4fe4a5e8d1b8b7c">GCU_PROT_PROP</a> (std::set &lt;Document*&gt;, Docs)</div>
<div class="line"><a name="l00479"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a67599fd5161b7ed78e4d14cf4d232d51">  479</a></span>&#160;<a class="code" href="macros_8h.html#ac63298328b07e40af4fe4a5e8d1b8b7c">GCU_PROT_PROP</a> (<span class="keywordtype">unsigned</span>, ScreenResolution)</div>
<div class="line"><a name="l00493"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ab3f4b702038b8bfc20b7f066caea7248">  493</a></span>&#160;<a class="code" href="macros_8h.html#a2e6e8322502a538f4583d41206cea297">GCU_PROP</a> (<span class="keywordtype">unsigned</span>, ImageResolution)</div>
<div class="line"><a name="l00507"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ad7904eea8f6f35f1c6d82d520994489d">  507</a></span>&#160;<a class="code" href="macros_8h.html#a2e6e8322502a538f4583d41206cea297">GCU_PROP</a> (<span class="keywordtype">unsigned</span>, ImageWidth)</div>
<div class="line"><a name="l00521"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#ade281be77ea51423ef3456af1f3835a0">  521</a></span>&#160;<a class="code" href="macros_8h.html#a2e6e8322502a538f4583d41206cea297">GCU_PROP</a> (<span class="keywordtype">unsigned</span>, ImageHeight)</div>
<div class="line"><a name="l00533"></a><span class="lineno"><a class="code" href="classgcu_1_1Application.html#a7ad287d45993f84ade510eb4a9bf0667">  533</a></span>&#160;<a class="code" href="macros_8h.html#a2e6e8322502a538f4583d41206cea297">GCU_PROP</a> (<span class="keywordtype">bool</span>, TransparentBackground)</div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;};</div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;</div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;}       <span class="comment">// namespace gcu</span></div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;</div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;<span class="preprocessor">#endif // GCU_APPLICATION_H</span></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Thu Mar 14 2013 17:34:28 for The Gnome Chemistry Utils by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.1.2
</small></address>
</body>
</html>