<!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 name="robots" content="index,follow"/> <title>swift::SReadline Class Reference</title> <link rel="shortcut icon" href="favicon.ico"> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="stdair.css" rel="stylesheet" type="text/css"/> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> <script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-24867310-1']); _gaq.push(['_setDomainName', 'none']); _gaq.push(['_setAllowLinker', true]); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script> <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script> </head> <body> <div id="top"><!-- do not remove this div! --> <div id="titlearea"> <table width="100%"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname"><a href="http://stdair.sourceforge.net"><img height="45px" alt="StdAir Logo" src="stdair_logo.png"></a>  <span id="projectnumber">1.00.1</span> </div> <div id="projectbrief">C++ Standard Airline IT Object Library</div> </td> <!-- begin SOURCEFORGE_CUSTOM--> <td> <div id="sflogo"><a href="http://stdair.sourceforge.net"><img height="45px" alt="SourceForge Logo" src="sfx_logo.png"></a></div> </td> <!-- end SOURCEFORGE_CUSTOM--> </tr> </tbody> </table> </div> <!-- Generated by Doxygen 1.8.3.1 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <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> <li> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </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><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('a00178.html','');}); </script> <div id="doc-content"> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="a00707.html">List of all members</a> </div> <div class="headertitle"> <div class="title">swift::SReadline Class Reference</div> </div> </div><!--header--> <div class="contents"> <p>The readline library wrapper. <a href="a00178.html#details">More...</a></p> <p><code>#include <<a class="el" href="a00522_source.html">stdair/ui/cmdline/SReadline.hpp</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ae047459c29f025dff1a6234e131950af"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#ae047459c29f025dff1a6234e131950af">SReadline</a> (const size_t Limit=DefaultHistoryLimit)</td></tr> <tr class="memdesc:ae047459c29f025dff1a6234e131950af"><td class="mdescLeft"> </td><td class="mdescRight">Constructs the object, sets the completion function. <a href="#ae047459c29f025dff1a6234e131950af">More...</a><br/></td></tr> <tr class="separator:ae047459c29f025dff1a6234e131950af"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81afae70f35d55199929283c2fd5982b"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a81afae70f35d55199929283c2fd5982b">SReadline</a> (const std::string &historyFileName, const size_t Limit=DefaultHistoryLimit)</td></tr> <tr class="memdesc:a81afae70f35d55199929283c2fd5982b"><td class="mdescLeft"> </td><td class="mdescRight">Constructs the object, sets the completion function, loads history. <a href="#a81afae70f35d55199929283c2fd5982b">More...</a><br/></td></tr> <tr class="separator:a81afae70f35d55199929283c2fd5982b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af633b1fe25ae6772887009fd439bff1d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#af633b1fe25ae6772887009fd439bff1d">~SReadline</a> ()</td></tr> <tr class="memdesc:af633b1fe25ae6772887009fd439bff1d"><td class="mdescLeft"> </td><td class="mdescRight">Saves the session history (if the file name was provided) and destroys the object. <a href="#af633b1fe25ae6772887009fd439bff1d">More...</a><br/></td></tr> <tr class="separator:af633b1fe25ae6772887009fd439bff1d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad926b06b623644879e8586aa33996d80"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#ad926b06b623644879e8586aa33996d80">GetLine</a> (const std::string &Prompt)</td></tr> <tr class="memdesc:ad926b06b623644879e8586aa33996d80"><td class="mdescLeft"> </td><td class="mdescRight">Gets a single line from a user. <a href="#ad926b06b623644879e8586aa33996d80">More...</a><br/></td></tr> <tr class="separator:ad926b06b623644879e8586aa33996d80"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a360eb649447e110156dcce18f772d890"><td class="memTemplParams" colspan="2">template<typename Container > </td></tr> <tr class="memitem:a360eb649447e110156dcce18f772d890"><td class="memTemplItemLeft" align="right" valign="top">std::string </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00178.html#a360eb649447e110156dcce18f772d890">GetLine</a> (const std::string &Prompt, Container &ReadTokens)</td></tr> <tr class="memdesc:a360eb649447e110156dcce18f772d890"><td class="mdescLeft"> </td><td class="mdescRight">Gets a single line from a user. <a href="#a360eb649447e110156dcce18f772d890">More...</a><br/></td></tr> <tr class="separator:a360eb649447e110156dcce18f772d890"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afd94496bedd8c62a38e141c262f60e2f"><td class="memTemplParams" colspan="2">template<typename Container > </td></tr> <tr class="memitem:afd94496bedd8c62a38e141c262f60e2f"><td class="memTemplItemLeft" align="right" valign="top">std::string </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00178.html#afd94496bedd8c62a38e141c262f60e2f">GetLine</a> (const std::string &Prompt, Container &ReadTokens, bool &BreakOut)</td></tr> <tr class="memdesc:afd94496bedd8c62a38e141c262f60e2f"><td class="mdescLeft"> </td><td class="mdescRight">Gets a single line from a user. <a href="#afd94496bedd8c62a38e141c262f60e2f">More...</a><br/></td></tr> <tr class="separator:afd94496bedd8c62a38e141c262f60e2f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a96e147cfed94e44d8e9b9450a0232e9b"><td class="memItemLeft" align="right" valign="top">std::string </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a96e147cfed94e44d8e9b9450a0232e9b">GetLine</a> (const std::string &Prompt, bool &BreakOut)</td></tr> <tr class="memdesc:a96e147cfed94e44d8e9b9450a0232e9b"><td class="mdescLeft"> </td><td class="mdescRight">Gets a single line from a user. <a href="#a96e147cfed94e44d8e9b9450a0232e9b">More...</a><br/></td></tr> <tr class="separator:a96e147cfed94e44d8e9b9450a0232e9b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac15721b26fc85a887451b6c574a0415e"><td class="memTemplParams" colspan="2">template<typename ContainerType > </td></tr> <tr class="memitem:ac15721b26fc85a887451b6c574a0415e"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00178.html#ac15721b26fc85a887451b6c574a0415e">GetHistory</a> (ContainerType &Container)</td></tr> <tr class="memdesc:ac15721b26fc85a887451b6c574a0415e"><td class="mdescLeft"> </td><td class="mdescRight">Fills the given container with the current history list. <a href="#ac15721b26fc85a887451b6c574a0415e">More...</a><br/></td></tr> <tr class="separator:ac15721b26fc85a887451b6c574a0415e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5ca797f8804448e1bf4546f55ae5e365"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a5ca797f8804448e1bf4546f55ae5e365">SaveHistory</a> (std::ostream &OS)</td></tr> <tr class="memdesc:a5ca797f8804448e1bf4546f55ae5e365"><td class="mdescLeft"> </td><td class="mdescRight">Saves the history to the given file stream. <a href="#a5ca797f8804448e1bf4546f55ae5e365">More...</a><br/></td></tr> <tr class="separator:a5ca797f8804448e1bf4546f55ae5e365"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a33558cdb94004f85c0962028ff260c1d"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a33558cdb94004f85c0962028ff260c1d">SaveHistory</a> (const std::string &FileName)</td></tr> <tr class="memdesc:a33558cdb94004f85c0962028ff260c1d"><td class="mdescLeft"> </td><td class="mdescRight">Saves the history to the given file. <a href="#a33558cdb94004f85c0962028ff260c1d">More...</a><br/></td></tr> <tr class="separator:a33558cdb94004f85c0962028ff260c1d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aab1c29093bf3d1c4dec37b9be857c10e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#aab1c29093bf3d1c4dec37b9be857c10e">ClearHistory</a> ()</td></tr> <tr class="memdesc:aab1c29093bf3d1c4dec37b9be857c10e"><td class="mdescLeft"> </td><td class="mdescRight">Clears the history. Does not affect the file where the previous session history is saved. <a href="#aab1c29093bf3d1c4dec37b9be857c10e">More...</a><br/></td></tr> <tr class="separator:aab1c29093bf3d1c4dec37b9be857c10e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6abb1cc87f61f4c660260fdfcfa3f101"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a6abb1cc87f61f4c660260fdfcfa3f101">LoadHistory</a> (std::istream &IS)</td></tr> <tr class="memdesc:a6abb1cc87f61f4c660260fdfcfa3f101"><td class="mdescLeft"> </td><td class="mdescRight">Loads a history from a file stream. <a href="#a6abb1cc87f61f4c660260fdfcfa3f101">More...</a><br/></td></tr> <tr class="separator:a6abb1cc87f61f4c660260fdfcfa3f101"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5559f539875c140eda17eeaab9181eaf"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a5559f539875c140eda17eeaab9181eaf">LoadHistory</a> (const std::string &FileName)</td></tr> <tr class="memdesc:a5559f539875c140eda17eeaab9181eaf"><td class="mdescLeft"> </td><td class="mdescRight">Loads a history from the given file. <a href="#a5559f539875c140eda17eeaab9181eaf">More...</a><br/></td></tr> <tr class="separator:a5559f539875c140eda17eeaab9181eaf"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af0750b68c2cf17efdb4e8cca3d2f7ced"><td class="memTemplParams" colspan="2">template<typename ContainerType > </td></tr> <tr class="memitem:af0750b68c2cf17efdb4e8cca3d2f7ced"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00178.html#af0750b68c2cf17efdb4e8cca3d2f7ced">RegisterCompletions</a> (const ContainerType &Container)</td></tr> <tr class="memdesc:af0750b68c2cf17efdb4e8cca3d2f7ced"><td class="mdescLeft"> </td><td class="mdescRight">Allows to register custom completers. <a href="#af0750b68c2cf17efdb4e8cca3d2f7ced">More...</a><br/></td></tr> <tr class="separator:af0750b68c2cf17efdb4e8cca3d2f7ced"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8a3b8f1347c6a90e20b1014db7c04cec"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00178.html#a8a3b8f1347c6a90e20b1014db7c04cec">SetKeymap</a> (<a class="el" href="a00174.html">SKeymap</a> &NewKeymap)</td></tr> <tr class="memdesc:a8a3b8f1347c6a90e20b1014db7c04cec"><td class="mdescLeft"> </td><td class="mdescRight">Sets the given keymap. <a href="#a8a3b8f1347c6a90e20b1014db7c04cec">More...</a><br/></td></tr> <tr class="separator:a8a3b8f1347c6a90e20b1014db7c04cec"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>The readline library wrapper. </p> <p>Attention: It is not thread safe! Supports: editing, history, custom completers </p> <p>Definition at line <a class="el" href="a00522_source.html#l00424">424</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div><h2 class="groupheader">Constructor & Destructor Documentation</h2> <a class="anchor" id="ae047459c29f025dff1a6234e131950af"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">swift::SReadline::SReadline </td> <td>(</td> <td class="paramtype">const size_t </td> <td class="paramname"><em>Limit</em> = <code>DefaultHistoryLimit</code></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructs the object, sets the completion function. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Limit</td><td>History size </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="a00522_source.html#l00431">431</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div> </div> <a class="anchor" id="a81afae70f35d55199929283c2fd5982b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">swift::SReadline::SReadline </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>historyFileName</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const size_t </td> <td class="paramname"><em>Limit</em> = <code>DefaultHistoryLimit</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructs the object, sets the completion function, loads history. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">historyFileName</td><td>File name to load history from </td></tr> <tr><td class="paramname">Limit</td><td>History size </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="a00522_source.html#l00446">446</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00604">LoadHistory()</a>.</p> </div> </div> <a class="anchor" id="af633b1fe25ae6772887009fd439bff1d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">swift::SReadline::~SReadline </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Saves the session history (if the file name was provided) and destroys the object. </p> <p>Definition at line <a class="el" href="a00522_source.html#l00462">462</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00564">SaveHistory()</a>.</p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="ad926b06b623644879e8586aa33996d80"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string swift::SReadline::GetLine </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>Prompt</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Gets a single line from a user. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Prompt</td><td>A printed prompt </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string which was actually inputed </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00473">473</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>Referenced by <a class="el" href="a00522_source.html#l00487">GetLine()</a>.</p> </div> </div> <a class="anchor" id="a360eb649447e110156dcce18f772d890"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Container > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string swift::SReadline::GetLine </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>Prompt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Container & </td> <td class="paramname"><em>ReadTokens</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Gets a single line from a user. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Prompt</td><td>A printed prompt </td></tr> <tr><td class="paramname">ReadTokens</td><td>A user inputed string splitted into tokens. The container is cleared first </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string which was actually inputed </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00487">487</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00473">GetLine()</a>.</p> </div> </div> <a class="anchor" id="afd94496bedd8c62a38e141c262f60e2f"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename Container > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string swift::SReadline::GetLine </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>Prompt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">Container & </td> <td class="paramname"><em>ReadTokens</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool & </td> <td class="paramname"><em>BreakOut</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Gets a single line from a user. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Prompt</td><td>A printed prompt </td></tr> <tr><td class="paramname">BreakOut</td><td>it is set to true if the EOF found </td></tr> <tr><td class="paramname">ReadTokens</td><td>A user inputed string splitted into tokens. The container is cleared first </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string which was actually inputed </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00502">502</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00473">GetLine()</a>.</p> </div> </div> <a class="anchor" id="a96e147cfed94e44d8e9b9450a0232e9b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">std::string swift::SReadline::GetLine </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>Prompt</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool & </td> <td class="paramname"><em>BreakOut</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Gets a single line from a user. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Prompt</td><td>A printed prompt </td></tr> <tr><td class="paramname">BreakOut</td><td>it is set to true if the EOF found </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string which was actually inputed </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00517">517</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div> </div> <a class="anchor" id="ac15721b26fc85a887451b6c574a0415e"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename ContainerType > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void swift::SReadline::GetHistory </td> <td>(</td> <td class="paramtype">ContainerType & </td> <td class="paramname"><em>Container</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Fills the given container with the current history list. </p> <p>Does not clear the given container </p> <p>Definition at line <a class="el" href="a00522_source.html#l00552">552</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div> </div> <a class="anchor" id="a5ca797f8804448e1bf4546f55ae5e365"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool swift::SReadline::SaveHistory </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"><em>OS</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Saves the history to the given file stream. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">OS</td><td>output file stream </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if success </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00564">564</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>Referenced by <a class="el" href="a00522_source.html#l00581">SaveHistory()</a>, and <a class="el" href="a00522_source.html#l00462">~SReadline()</a>.</p> </div> </div> <a class="anchor" id="a33558cdb94004f85c0962028ff260c1d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool swift::SReadline::SaveHistory </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>FileName</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Saves the history to the given file. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">FileName</td><td>File name to save the history to </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if success </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00581">581</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00564">SaveHistory()</a>.</p> </div> </div> <a class="anchor" id="aab1c29093bf3d1c4dec37b9be857c10e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void swift::SReadline::ClearHistory </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Clears the history. Does not affect the file where the previous session history is saved. </p> <p>Definition at line <a class="el" href="a00522_source.html#l00594">594</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>Referenced by <a class="el" href="a00522_source.html#l00604">LoadHistory()</a>.</p> </div> </div> <a class="anchor" id="a6abb1cc87f61f4c660260fdfcfa3f101"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool swift::SReadline::LoadHistory </td> <td>(</td> <td class="paramtype">std::istream & </td> <td class="paramname"><em>IS</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Loads a history from a file stream. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">IS</td><td>Input file stream </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if success </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00604">604</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00594">ClearHistory()</a>.</p> <p>Referenced by <a class="el" href="a00522_source.html#l00629">LoadHistory()</a>, and <a class="el" href="a00522_source.html#l00446">SReadline()</a>.</p> </div> </div> <a class="anchor" id="a5559f539875c140eda17eeaab9181eaf"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool swift::SReadline::LoadHistory </td> <td>(</td> <td class="paramtype">const std::string & </td> <td class="paramname"><em>FileName</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Loads a history from the given file. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">FileName</td><td>File name to be load from </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>true if success </dd></dl> <p>Definition at line <a class="el" href="a00522_source.html#l00629">629</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> <p>References <a class="el" href="a00522_source.html#l00604">LoadHistory()</a>.</p> </div> </div> <a class="anchor" id="af0750b68c2cf17efdb4e8cca3d2f7ced"></a> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename ContainerType > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void swift::SReadline::RegisterCompletions </td> <td>(</td> <td class="paramtype">const ContainerType & </td> <td class="paramname"><em>Container</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Allows to register custom completers. </p> <p>Supports a special keyword: file. It means to use the standard file name completer.</p> <p>For example the given container elements could be as follows: </p> <ul> <li> command1 opt1 </li> <li> command1 opt2 file </li> <li> command2 </li> <li> command2 opt1 </li> </ul> <p>Each container element must describe a single possible command line. The container element must have a conversion to std::string operator.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">Container</td><td>A container which has all the user possible commands. </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="a00522_source.html#l00658">658</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div> </div> <a class="anchor" id="a8a3b8f1347c6a90e20b1014db7c04cec"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void swift::SReadline::SetKeymap </td> <td>(</td> <td class="paramtype"><a class="el" href="a00174.html">SKeymap</a> & </td> <td class="paramname"><em>NewKeymap</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Sets the given keymap. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">NewKeymap</td><td>The keymap that should be used from now. </td></tr> </table> </dd> </dl> <p>Definition at line <a class="el" href="a00522_source.html#l00675">675</a> of file <a class="el" href="a00522_source.html">SReadline.hpp</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>stdair/ui/cmdline/<a class="el" href="a00522_source.html">SReadline.hpp</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <li class="footer">Generated on Wed May 22 2013 10:52:03 for StdAir by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li> <li class="footer"> <a href="http://sourceforge.net/projects/stdair"><img class="footer" src="http://sflogo.sourceforge.net/sflogo.php?group_id=267760&type=12&format=.png" alt="SourceForge Logo"></a> </li> </ul> </div> </body> </html>