<!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::AdamModalDialog 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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 List</span></a></li> <li><a href="classes.html"><span>Class Index</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class 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_1AdamModalDialog.html">AdamModalDialog</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-attribs">Public Attributes</a> </div> <div class="headertitle"> <div class="title">GG::AdamModalDialog Class Reference</div> </div> </div><!--header--> <div class="contents"> <p><code>#include <<a class="el" href="AdamDlg_8h_source.html">AdamDlg.h</a>></code></p> <p><a href="classGG_1_1AdamModalDialog-members.html">List of all members.</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ae17feed2595bcd2fa70d47b5c25ae739"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1AdamModalDialog.html#ae17feed2595bcd2fa70d47b5c25ae739">AdamModalDialog</a> (const std::string &sheet_definition, const adobe::dictionary_t &input, const adobe::dictionary_t &previous_property_state, <a class="el" href="namespaceGG.html#a78b815f9f4732e1f9818ba9f0b54a168">AdamDialogDisplayOption</a> display_option, <a class="el" href="classGG_1_1Wnd.html">GG::Wnd</a> *dlg, <a class="el" href="namespaceGG.html#aac73bd34b995e761f77fb3f28e06106a">AdamDialogActionCallback</a> callback, boost::filesystem::path working_directory)</td></tr> <tr class="memitem:a9ded9b09aac71a933ffb9fbad69787f4"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1AdamModalDialog.html#a9ded9b09aac71a933ffb9fbad69787f4">NeedUI</a> () const </td></tr> <tr class="memitem:a4220b0f347f73ed1abbf0d000854b7c0"><td class="memTemplParams" colspan="2">template<class AdamValueType , class GGValueType , class ControlType > </td></tr> <tr class="memitem:a4220b0f347f73ed1abbf0d000854b7c0"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classGG_1_1AdamModalDialog.html#a4220b0f347f73ed1abbf0d000854b7c0">BindCell</a> (ControlType &control, adobe::name_t cell)</td></tr> <tr class="memitem:af24ca933b7bb88e5330b39751c4298d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structGG_1_1AdamDialogResult.html">AdamDialogResult</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1AdamModalDialog.html#af24ca933b7bb88e5330b39751c4298d4">Result</a> ()</td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a> Public Attributes</h2></td></tr> <tr class="memitem:abdff5f1cebc7d7b8c68344bdb6b5089b"><td class="memItemLeft" align="right" valign="top">boost::signal< void(adobe::name_t, <br class="typebreak"/> const adobe::any_regular_t &)> </td><td class="memItemRight" valign="bottom"><a class="el" href="classGG_1_1AdamModalDialog.html#abdff5f1cebc7d7b8c68344bdb6b5089b">DialogActionSignal</a></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><p>The class that does the heavy lifting for the Adam modal dialog system. </p> <p>Definition at line <a class="el" href="AdamDlg_8h_source.html#l00106">106</a> of file <a class="el" href="AdamDlg_8h_source.html">AdamDlg.h</a>.</p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="ae17feed2595bcd2fa70d47b5c25ae739"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GG::AdamModalDialog::AdamModalDialog </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>sheet_definition</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const adobe::dictionary_t & </td> <td class="paramname"><em>input</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const adobe::dictionary_t & </td> <td class="paramname"><em>previous_property_state</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="namespaceGG.html#a78b815f9f4732e1f9818ba9f0b54a168">AdamDialogDisplayOption</a> </td> <td class="paramname"><em>display_option</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classGG_1_1Wnd.html">GG::Wnd</a> * </td> <td class="paramname"><em>dlg</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="namespaceGG.html#aac73bd34b995e761f77fb3f28e06106a">AdamDialogActionCallback</a> </td> <td class="paramname"><em>callback</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">boost::filesystem::path </td> <td class="paramname"><em>working_directory</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Ctor. </p> <pre class="fragment"> \param sheet_definition is a stream that will be parsed as the Adam sheet definition for this dialog. Note that the only requirement on the Adam sheet is that there exist an output cell called \a result that is defined to be a dictionary of values. The value of the result cell will be handed back in the m_result_values field of the AdamDialogResult upon return from this procedure. \param input contains the input values for input cells as they are defined in the sheet. Each key in this dictionary should correspond to an input cell in the sheet to which the relevant value will be imposed. This can be a default-constructed dictionary, in which case input cells will be set to the values defined in their sheet initializers. \param previous_property_state is the previously recorded property sheet state for the dialog, to be used to execute the dialog when running from an action or to retain the previoud instance of the dialog's values for the new dialog instance. \param display_option is one of the three enumerations specified above, according to which semantic behavior you would like to get out of this routine. \param dlg is the GG::Wnd that will act as the user-interactable dialog. \param callback is the function proc that is called when a UI interaction in the modal dialog is performed by the user. \see AdamDialogActionCallback. \param working_directory is the directory from which the dialog widgets should use to fetch disk-based resources. Whether or not this is necessary is predicated on the resource requirements of the widgets used in the dialog. </pre> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a9ded9b09aac71a933ffb9fbad69787f4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool GG::AdamModalDialog::NeedUI </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </div><div class="memdoc"> <p>Returns true if the <a class="el" href="classGG_1_1Wnd.html" title="This is the basic GG window class.">GG::Wnd</a> dialog should be run, based on the <em>display_option</em>, and <em>previous_property_state</em> parameters passed to the ctor. </p> </div> </div> <a class="anchor" id="a4220b0f347f73ed1abbf0d000854b7c0"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<class AdamValueType , class GGValueType , class ControlType > </div> <table class="memname"> <tr> <td class="memname">void GG::AdamModalDialog::BindCell </td> <td>(</td> <td class="paramtype">ControlType & </td> <td class="paramname"><em>control</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">adobe::name_t </td> <td class="paramname"><em>cell</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Binds a <a class="el" href="namespaceGG.html" title="The namespace that encloses all GG classes, functions, typedefs, enums, etc.">GG</a> control to the Adam property sheet maintained by *this. </p> <p>Definition at line <a class="el" href="AdamDlg_8h_source.html#l00200">200</a> of file <a class="el" href="AdamDlg_8h_source.html">AdamDlg.h</a>.</p> </div> </div> <a class="anchor" id="af24ca933b7bb88e5330b39751c4298d4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="structGG_1_1AdamDialogResult.html">AdamDialogResult</a> GG::AdamModalDialog::Result </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the <a class="el" href="structGG_1_1AdamDialogResult.html">AdamDialogResult</a> results struct. </p> </div> </div> <hr/><h2>Member Data Documentation</h2> <a class="anchor" id="abdff5f1cebc7d7b8c68344bdb6b5089b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">boost::signal<void (adobe::name_t, const adobe::any_regular_t&)> GG::AdamModalDialog::DialogActionSignal</td> </tr> </table> </div><div class="memdoc"> <p>Connect UI interaction signals from the <a class="el" href="classGG_1_1Wnd.html" title="This is the basic GG window class.">GG::Wnd</a> to this signal to have them handled by AdamDialogActionCallback passed to the ctor. </p> <p>Definition at line <a class="el" href="AdamDlg_8h_source.html#l00171">171</a> of file <a class="el" href="AdamDlg_8h_source.html">AdamDlg.h</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="AdamDlg_8h_source.html">AdamDlg.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  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.1 </small></address> </body> </html>