Browse Source

Updated docs.

Trying to document more of the missing parts.
Steve Thielemann 3 years ago
parent
commit
e48933ba32
100 changed files with 1858 additions and 566 deletions
  1. 1 2
      annotated.html
  2. 17 18
      ansicolor_8cpp.html
  3. 17 17
      ansicolor_8cpp__incl.map
  4. 1 1
      ansicolor_8cpp__incl.md5
  5. BIN
      ansicolor_8cpp__incl.png
  6. 2 1
      anyoption_8h_source.html
  7. 1 1
      classAnyOption.html
  8. 3 4
      classdoor_1_1Door.html
  9. 2 3
      classdoor_1_1Door__coll__graph.map
  10. 1 1
      classdoor_1_1Door__coll__graph.md5
  11. BIN
      classdoor_1_1Door__coll__graph.png
  12. 2 2
      classdoor_1_1IConv-members.html
  13. 93 4
      classdoor_1_1IConv.html
  14. 1 1
      classdoor_1_1Menu-members.html
  15. 30 4
      classdoor_1_1Menu.html
  16. 1 1
      classdoor_1_1Panel-members.html
  17. 49 2
      classdoor_1_1Panel.html
  18. 2 2
      classdoor_1_1Screen-members.html
  19. 52 3
      classdoor_1_1Screen.html
  20. 11 12
      classes.html
  21. 2 2
      door-example_8cpp-example.html
  22. 48 45
      door_8cpp.html
  23. 24 26
      door_8cpp__incl.map
  24. 1 1
      door_8cpp__incl.md5
  25. BIN
      door_8cpp__incl.png
  26. 124 109
      door_8h_source.html
  27. 6 7
      files.html
  28. 11 0
      functions.html
  29. 7 1
      functions_func.html
  30. 2 0
      functions_rela.html
  31. 62 1
      functions_vars.html
  32. 167 39
      getkey_8cpp.html
  33. 16 19
      getkey_8cpp__incl.map
  34. 1 1
      getkey_8cpp__incl.md5
  35. BIN
      getkey_8cpp__incl.png
  36. 104 0
      globals.html
  37. 77 0
      globals_defs.html
  38. 92 0
      globals_func.html
  39. 83 0
      globals_vars.html
  40. 15 16
      hierarchy.html
  41. 2 2
      index.html
  42. 1 1
      inherit_graph_0.map
  43. 1 1
      inherit_graph_0.md5
  44. BIN
      inherit_graph_0.png
  45. 1 1
      inherit_graph_1.map
  46. 1 1
      inherit_graph_1.md5
  47. BIN
      inherit_graph_1.png
  48. 1 2
      inherit_graph_10.map
  49. 1 1
      inherit_graph_10.md5
  50. BIN
      inherit_graph_10.png
  51. 1 1
      inherit_graph_11.map
  52. 1 1
      inherit_graph_11.md5
  53. BIN
      inherit_graph_11.png
  54. 1 1
      inherit_graph_2.map
  55. 1 1
      inherit_graph_2.md5
  56. BIN
      inherit_graph_2.png
  57. 1 1
      inherit_graph_3.map
  58. 1 1
      inherit_graph_3.md5
  59. BIN
      inherit_graph_3.png
  60. 3 1
      inherit_graph_4.map
  61. 1 1
      inherit_graph_4.md5
  62. BIN
      inherit_graph_4.png
  63. 1 3
      inherit_graph_5.map
  64. 1 1
      inherit_graph_5.md5
  65. BIN
      inherit_graph_5.png
  66. 1 1
      inherit_graph_6.map
  67. 1 1
      inherit_graph_6.md5
  68. BIN
      inherit_graph_6.png
  69. 1 1
      inherit_graph_7.map
  70. 1 1
      inherit_graph_7.md5
  71. BIN
      inherit_graph_7.png
  72. 1 1
      inherit_graph_8.map
  73. 1 1
      inherit_graph_8.md5
  74. BIN
      inherit_graph_8.png
  75. 2 1
      inherit_graph_9.map
  76. 1 1
      inherit_graph_9.md5
  77. BIN
      inherit_graph_9.png
  78. 13 18
      inherits.html
  79. 20 23
      lines_8cpp.html
  80. 20 23
      lines_8cpp__incl.map
  81. 1 1
      lines_8cpp__incl.md5
  82. BIN
      lines_8cpp__incl.png
  83. 4 4
      menu-example_8cpp-example.html
  84. 35 3
      menudata.js
  85. 398 34
      namespacedoor.html
  86. 83 1
      namespacemembers.html
  87. 12 0
      namespacemembers_func.html
  88. 24 0
      namespacemembers_vars.html
  89. 27 27
      panel_8cpp.html
  90. 16 19
      panel_8cpp__incl.map
  91. 1 1
      panel_8cpp__incl.md5
  92. BIN
      panel_8cpp__incl.png
  93. 2 3
      search/all_0.js
  94. 16 13
      search/all_1.js
  95. 7 5
      search/all_10.js
  96. 7 4
      search/all_11.js
  97. 1 1
      search/all_12.js
  98. 2 2
      search/all_13.js
  99. 2 2
      search/all_14.js
  100. 10 7
      search/all_2.js

+ 1 - 2
annotated.html

@@ -74,14 +74,13 @@ $(function() {
 <tr id="row_0_3_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1ColorOutput.html" target="_self">ColorOutput</a></td><td class="desc">This holds an <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> and text position + length </td></tr>
 <tr id="row_0_4_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Door.html" target="_self">Door</a></td><td class="desc"></td></tr>
 <tr id="row_0_5_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Goto.html" target="_self">Goto</a></td><td class="desc">ANSI <a class="el" href="classdoor_1_1Goto.html" title="ANSI Goto X, Y position.">Goto</a> X, Y position </td></tr>
-<tr id="row_0_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1IConv.html" target="_self">IConv</a></td><td class="desc"></td></tr>
+<tr id="row_0_6_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1IConv.html" target="_self">IConv</a></td><td class="desc">Converts from one encoding to another. Uses iconv (international conversion) API </td></tr>
 <tr id="row_0_7_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Line.html" target="_self">Line</a></td><td class="desc">Text and <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
 <tr id="row_0_8_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Menu.html" target="_self">Menu</a></td><td class="desc"></td></tr>
 <tr id="row_0_9_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1NewLine.html" target="_self">NewLine</a></td><td class="desc">CR+LF </td></tr>
 <tr id="row_0_10_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Panel.html" target="_self">Panel</a></td><td class="desc"></td></tr>
 <tr id="row_0_11_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Render.html" target="_self">Render</a></td><td class="desc">Rendering a string with <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
 <tr id="row_0_12_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Screen.html" target="_self">Screen</a></td><td class="desc"></td></tr>
-<tr id="row_1_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAnyOption.html" target="_self">AnyOption</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 17 - 18
ansicolor_8cpp.html

@@ -73,29 +73,28 @@ $(function() {
 <p>ANSIColor.  
 <a href="#details">More...</a></p>
 <div class="textblock"><code>#include &quot;door.h&quot;</code><br />
-<code>#include &lt;string&gt;</code><br />
 </div><div class="textblock"><div class="dynheader">
 Include dependency graph for ansicolor.cpp:</div>
 <div class="dyncontent">
 <div class="center"><img src="ansicolor_8cpp__incl.png" border="0" usemap="#ansicolor_8cpp" alt=""/></div>
 <map name="ansicolor_8cpp" id="ansicolor_8cpp">
-<area shape="rect" title="ANSIColor." alt="" coords="214,5,321,32"/>
-<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="511,80,573,107"/>
-<area shape="rect" title=" " alt="" coords="358,229,417,256"/>
-<area shape="rect" href="anyoption_8h_source.html" title=" " alt="" coords="898,155,997,181"/>
-<area shape="rect" title=" " alt="" coords="984,229,1057,256"/>
-<area shape="rect" title=" " alt="" coords="1082,229,1162,256"/>
-<area shape="rect" title=" " alt="" coords="31,155,98,181"/>
-<area shape="rect" title=" " alt="" coords="122,155,181,181"/>
-<area shape="rect" title=" " alt="" coords="205,155,292,181"/>
-<area shape="rect" title=" " alt="" coords="317,155,378,181"/>
-<area shape="rect" title=" " alt="" coords="402,155,479,181"/>
-<area shape="rect" title=" " alt="" coords="504,155,580,181"/>
-<area shape="rect" title=" " alt="" coords="604,155,667,181"/>
-<area shape="rect" title=" " alt="" coords="691,155,775,181"/>
-<area shape="rect" title=" " alt="" coords="799,155,874,181"/>
-<area shape="rect" title=" " alt="" coords="893,229,959,256"/>
-<area shape="rect" title=" " alt="" coords="797,229,868,256"/>
+<area shape="rect" title="ANSIColor." alt="" coords="639,5,746,32"/>
+<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="557,80,620,107"/>
+<area shape="rect" title=" " alt="" coords="5,155,79,181"/>
+<area shape="rect" title=" " alt="" coords="1093,155,1173,181"/>
+<area shape="rect" title=" " alt="" coords="695,80,762,107"/>
+<area shape="rect" title=" " alt="" coords="787,80,857,107"/>
+<area shape="rect" title=" " alt="" coords="882,80,941,107"/>
+<area shape="rect" title=" " alt="" coords="103,155,202,181"/>
+<area shape="rect" title=" " alt="" coords="226,155,293,181"/>
+<area shape="rect" title=" " alt="" coords="317,155,375,181"/>
+<area shape="rect" title=" " alt="" coords="400,155,487,181"/>
+<area shape="rect" title=" " alt="" coords="511,155,573,181"/>
+<area shape="rect" title=" " alt="" coords="597,155,674,181"/>
+<area shape="rect" title=" " alt="" coords="699,155,775,181"/>
+<area shape="rect" title=" " alt="" coords="799,155,861,181"/>
+<area shape="rect" title=" " alt="" coords="885,155,969,181"/>
+<area shape="rect" title=" " alt="" coords="994,155,1069,181"/>
 </map>
 </div>
 </div><table class="memberdecls">

+ 17 - 17
ansicolor_8cpp__incl.map

@@ -1,19 +1,19 @@
 <map id="ansicolor.cpp" name="ansicolor.cpp">
-<area shape="rect" id="node1" title="ANSIColor." alt="" coords="214,5,321,32"/>
-<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="511,80,573,107"/>
-<area shape="rect" id="node8" title=" " alt="" coords="358,229,417,256"/>
-<area shape="rect" id="node3" href="$anyoption_8h_source.html" title=" " alt="" coords="898,155,997,181"/>
-<area shape="rect" id="node5" title=" " alt="" coords="984,229,1057,256"/>
-<area shape="rect" id="node6" title=" " alt="" coords="1082,229,1162,256"/>
-<area shape="rect" id="node9" title=" " alt="" coords="31,155,98,181"/>
-<area shape="rect" id="node10" title=" " alt="" coords="122,155,181,181"/>
-<area shape="rect" id="node11" title=" " alt="" coords="205,155,292,181"/>
-<area shape="rect" id="node12" title=" " alt="" coords="317,155,378,181"/>
-<area shape="rect" id="node13" title=" " alt="" coords="402,155,479,181"/>
-<area shape="rect" id="node14" title=" " alt="" coords="504,155,580,181"/>
-<area shape="rect" id="node15" title=" " alt="" coords="604,155,667,181"/>
-<area shape="rect" id="node16" title=" " alt="" coords="691,155,775,181"/>
-<area shape="rect" id="node17" title=" " alt="" coords="799,155,874,181"/>
-<area shape="rect" id="node4" title=" " alt="" coords="893,229,959,256"/>
-<area shape="rect" id="node7" title=" " alt="" coords="797,229,868,256"/>
+<area shape="rect" id="node1" title="ANSIColor." alt="" coords="639,5,746,32"/>
+<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="557,80,620,107"/>
+<area shape="rect" id="node6" title=" " alt="" coords="5,155,79,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="1093,155,1173,181"/>
+<area shape="rect" id="node15" title=" " alt="" coords="695,80,762,107"/>
+<area shape="rect" id="node16" title=" " alt="" coords="787,80,857,107"/>
+<area shape="rect" id="node17" title=" " alt="" coords="882,80,941,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="103,155,202,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="226,155,293,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="317,155,375,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="400,155,487,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="511,155,573,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="597,155,674,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="699,155,775,181"/>
+<area shape="rect" id="node12" title=" " alt="" coords="799,155,861,181"/>
+<area shape="rect" id="node13" title=" " alt="" coords="885,155,969,181"/>
+<area shape="rect" id="node14" title=" " alt="" coords="994,155,1069,181"/>
 </map>

+ 1 - 1
ansicolor_8cpp__incl.md5

@@ -1 +1 @@
-8aaf329a4f3e6fdd54ae44e34b64294e
+f1e48e7b9d3c7a31928092bef88a7bdd

BIN
ansicolor_8cpp__incl.png


+ 2 - 1
anyoption_8h_source.html

@@ -324,7 +324,7 @@ $(function() {
 <div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  <span class="comment">/* dot file methods */</span></div>
 <div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  <span class="keywordtype">char</span> *readFile();</div>
 <div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;  <span class="keywordtype">char</span> *readFile(<span class="keyword">const</span> <span class="keywordtype">char</span> *fname);</div>
-<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  <span class="keywordtype">bool</span> consumeFile(<span class="keywordtype">char</span> *buffer);</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  <span class="keywordtype">bool</span> consumeFile(<span class="keywordtype">char</span> *<a class="code" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a>);</div>
 <div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;  <span class="keywordtype">void</span> processLine(<span class="keywordtype">char</span> *theline, <span class="keywordtype">int</span> length);</div>
 <div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;  <span class="keywordtype">char</span> *chomp(<span class="keywordtype">char</span> *str);</div>
 <div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  <span class="keywordtype">void</span> valuePairs(<span class="keywordtype">char</span> *type, <span class="keywordtype">char</span> *value);</div>
@@ -339,6 +339,7 @@ $(function() {
 <div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* ! _ANYOPTION_H */</span><span class="preprocessor"></span></div>
 </div><!-- fragment --></div><!-- contents -->
 <div class="ttc" id="aclassAnyOption_html"><div class="ttname"><a href="classAnyOption.html">AnyOption</a></div><div class="ttdef"><b>Definition:</b> anyoption.h:35</div></div>
+<div class="ttc" id="agetkey_8cpp_html_a92dfe6e9243e862063a0c3869f784557"><div class="ttname"><a href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a></div><div class="ttdeci">char buffer[10]</div><div class="ttdoc">pushback buffer to store keys we're not ready for yet.</div><div class="ttdef"><b>Definition:</b> getkey.cpp:116</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">

+ 1 - 1
classAnyOption.html

@@ -302,7 +302,7 @@ char *&#160;</td><td class="memItemRight" valign="bottom"><b>readFile</b> ()</td
 char *&#160;</td><td class="memItemRight" valign="bottom"><b>readFile</b> (const char *fname)</td></tr>
 <tr class="separator:a43a62dc7f685215043295a520347f581"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a7699f3f49875737235cb77152ec75a18"><td class="memItemLeft" align="right" valign="top"><a id="a7699f3f49875737235cb77152ec75a18"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>consumeFile</b> (char *buffer)</td></tr>
+bool&#160;</td><td class="memItemRight" valign="bottom"><b>consumeFile</b> (char *<a class="el" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a>)</td></tr>
 <tr class="separator:a7699f3f49875737235cb77152ec75a18"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a156f65ad47885a2fe15648b36ec31091"><td class="memItemLeft" align="right" valign="top"><a id="a156f65ad47885a2fe15648b36ec31091"></a>
 void&#160;</td><td class="memItemRight" valign="bottom"><b>processLine</b> (char *theline, int length)</td></tr>

+ 3 - 4
classdoor_1_1Door.html

@@ -92,11 +92,10 @@ Collaboration diagram for door::Door:</div>
 <div class="dyncontent">
 <div class="center"><img src="classdoor_1_1Door__coll__graph.png" border="0" usemap="#door_1_1Door_coll__map" alt="Collaboration graph"/></div>
 <map name="door_1_1Door_coll__map" id="door_1_1Door_coll__map">
-<area shape="rect" title=" " alt="" coords="211,95,301,121"/>
+<area shape="rect" title=" " alt="" coords="147,95,237,121"/>
 <area shape="rect" title=" " alt="" coords="5,5,109,32"/>
 <area shape="rect" title=" " alt="" coords="133,5,251,32"/>
-<area shape="rect" href="classAnyOption.html" title=" " alt="" coords="275,5,365,32"/>
-<area shape="rect" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="390,5,514,32"/>
+<area shape="rect" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="274,5,398,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
@@ -133,7 +132,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>get_input</b> (void)</
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
 Public Attributes</h2></td></tr>
 <tr class="memitem:a7e9aa4c92094271c40d67979b087d36b"><td class="memItemLeft" align="right" valign="top"><a id="a7e9aa4c92094271c40d67979b087d36b"></a>
-<a class="el" href="classAnyOption.html">AnyOption</a>&#160;</td><td class="memItemRight" valign="bottom"><b>opt</b></td></tr>
+AnyOption&#160;</td><td class="memItemRight" valign="bottom"><b>opt</b></td></tr>
 <tr class="separator:a7e9aa4c92094271c40d67979b087d36b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ae0e34a59d92ec9d70720fd90380b4223"><td class="memItemLeft" align="right" valign="top"><a id="ae0e34a59d92ec9d70720fd90380b4223"></a>
 std::string&#160;</td><td class="memItemRight" valign="bottom"><b>debug_buffer</b></td></tr>

+ 2 - 3
classdoor_1_1Door__coll__graph.map

@@ -1,7 +1,6 @@
 <map id="door::Door" name="door::Door">
-<area shape="rect" id="node1" title=" " alt="" coords="211,95,301,121"/>
+<area shape="rect" id="node1" title=" " alt="" coords="147,95,237,121"/>
 <area shape="rect" id="node2" title=" " alt="" coords="5,5,109,32"/>
 <area shape="rect" id="node3" title=" " alt="" coords="133,5,251,32"/>
-<area shape="rect" id="node4" href="$classAnyOption.html" title=" " alt="" coords="275,5,365,32"/>
-<area shape="rect" id="node5" href="$classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="390,5,514,32"/>
+<area shape="rect" id="node4" href="$classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="274,5,398,32"/>
 </map>

+ 1 - 1
classdoor_1_1Door__coll__graph.md5

@@ -1 +1 @@
-d43bf99079d77ea395716ed2397c2f2e
+c26165ff718694540f1da1899709b0c4

BIN
classdoor_1_1Door__coll__graph.png


+ 2 - 2
classdoor_1_1IConv-members.html

@@ -72,9 +72,9 @@ $(function() {
 
 <p>This is the complete list of members for <a class="el" href="classdoor_1_1IConv.html">door::IConv</a>, including all inherited members.</p>
 <table class="directory">
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>convert</b>(char *input, char *output, size_t outbufsize) (defined in <a class="el" href="classdoor_1_1IConv.html">door::IConv</a>)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc">convert</a>(char *input, char *output, size_t outbufsize)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>ic</b> (defined in <a class="el" href="classdoor_1_1IConv.html">door::IConv</a>)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>IConv</b>(const char *to, const char *from) (defined in <a class="el" href="classdoor_1_1IConv.html">door::IConv</a>)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279">IConv</a>(const char *to, const char *from)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>~IConv</b>() (defined in <a class="el" href="classdoor_1_1IConv.html">door::IConv</a>)</td><td class="entry"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td><td class="entry"></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->

+ 93 - 4
classdoor_1_1IConv.html

@@ -73,14 +73,17 @@ $(function() {
 <div class="title">door::IConv Class Reference</div>  </div>
 </div><!--header-->
 <div class="contents">
+
+<p>Converts from one encoding to another. Uses iconv (international conversion) API.  
+ <a href="classdoor_1_1IConv.html#details">More...</a></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:aa201b347d3982a6b96fc66a9edb36279"><td class="memItemLeft" align="right" valign="top"><a id="aa201b347d3982a6b96fc66a9edb36279"></a>
-&#160;</td><td class="memItemRight" valign="bottom"><b>IConv</b> (const char *to, const char *from)</td></tr>
+<tr class="memitem:aa201b347d3982a6b96fc66a9edb36279"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279">IConv</a> (const char *to, const char *from)</td></tr>
+<tr class="memdesc:aa201b347d3982a6b96fc66a9edb36279"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new <a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279" title="Construct a new IConv::IConv object.">IConv::IConv</a> object.  <a href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279">More...</a><br /></td></tr>
 <tr class="separator:aa201b347d3982a6b96fc66a9edb36279"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a65f19364b9b6a219dd88e8d8f18db8dc"><td class="memItemLeft" align="right" valign="top"><a id="a65f19364b9b6a219dd88e8d8f18db8dc"></a>
-int&#160;</td><td class="memItemRight" valign="bottom"><b>convert</b> (char *input, char *output, size_t outbufsize)</td></tr>
+<tr class="memitem:a65f19364b9b6a219dd88e8d8f18db8dc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc">convert</a> (char *input, char *output, size_t outbufsize)</td></tr>
+<tr class="memdesc:a65f19364b9b6a219dd88e8d8f18db8dc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls iconv API to do the conversion.  <a href="classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc">More...</a><br /></td></tr>
 <tr class="separator:a65f19364b9b6a219dd88e8d8f18db8dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
@@ -89,6 +92,92 @@ Private Attributes</h2></td></tr>
 iconv_t&#160;</td><td class="memItemRight" valign="bottom"><b>ic</b></td></tr>
 <tr class="separator:ab64b4dfad21ad709b1a17556c3f197be"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Converts from one encoding to another. Uses iconv (international conversion) API. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aa201b347d3982a6b96fc66a9edb36279"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa201b347d3982a6b96fc66a9edb36279">&#9670;&nbsp;</a></span>IConv()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">door::IConv::IConv </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>to</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>from</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Construct a new <a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279" title="Construct a new IConv::IConv object.">IConv::IConv</a> object. </p>
+<p>Give the encodings that you want to convert to and from. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">to</td><td></td></tr>
+    <tr><td class="paramname">from</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="a65f19364b9b6a219dd88e8d8f18db8dc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a65f19364b9b6a219dd88e8d8f18db8dc">&#9670;&nbsp;</a></span>convert()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int door::IConv::convert </td>
+          <td>(</td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>input</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">char *&#160;</td>
+          <td class="paramname"><em>output</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>outbufsize</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Calls iconv API to do the conversion. </p>
+<p>Buffers must be provided. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">input</td><td></td></tr>
+    <tr><td class="paramname">output</td><td></td></tr>
+    <tr><td class="paramname">outbufsize</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>int </dd></dl>
+
+</div>
+</div>
 <hr/>The documentation for this class was generated from the following file:<ul>
 <li><a class="el" href="door_8cpp.html">door.cpp</a></li>
 </ul>

+ 1 - 1
classdoor_1_1Menu-members.html

@@ -91,7 +91,7 @@ $(function() {
   <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1Panel.html#ae5630294b780b57aba721969762f50eb">lineSetBack</a>(ANSIColor back)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"></td></tr>
   <tr><td class="entry"><a class="el" href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">makeRender</a>(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"><span class="mlabel">static</span></td></tr>
   <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">Menu</a>(int x, int y, int width)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Menu</b>(int width) (defined in <a class="el" href="classdoor_1_1Menu.html">door::Menu</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classdoor_1_1Menu.html#a97ce6dd2340f2fa4d36647afc19619cd">Menu</a>(int width)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Menu</b>(const Menu &amp;)=delete (defined in <a class="el" href="classdoor_1_1Menu.html">door::Menu</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>Menu</b>(Menu &amp;&amp;) (defined in <a class="el" href="classdoor_1_1Menu.html">door::Menu</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Menu.html">door::Menu</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>offset</b> (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>

+ 30 - 4
classdoor_1_1Menu.html

@@ -100,8 +100,8 @@ Public Member Functions</h2></td></tr>
 <tr class="memitem:a34666d486c5a22728e70ca8b43cd644e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">Menu</a> (int x, int y, int width)</td></tr>
 <tr class="memdesc:a34666d486c5a22728e70ca8b43cd644e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new <a class="el" href="classdoor_1_1Menu.html">Menu</a> object.  <a href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">More...</a><br /></td></tr>
 <tr class="separator:a34666d486c5a22728e70ca8b43cd644e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a97ce6dd2340f2fa4d36647afc19619cd"><td class="memItemLeft" align="right" valign="top"><a id="a97ce6dd2340f2fa4d36647afc19619cd"></a>
-&#160;</td><td class="memItemRight" valign="bottom"><b>Menu</b> (int width)</td></tr>
+<tr class="memitem:a97ce6dd2340f2fa4d36647afc19619cd"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Menu.html#a97ce6dd2340f2fa4d36647afc19619cd">Menu</a> (int width)</td></tr>
+<tr class="memdesc:a97ce6dd2340f2fa4d36647afc19619cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a new <a class="el" href="classdoor_1_1Menu.html">Menu</a>:: <a class="el" href="classdoor_1_1Menu.html">Menu</a> object.  <a href="classdoor_1_1Menu.html#a97ce6dd2340f2fa4d36647afc19619cd">More...</a><br /></td></tr>
 <tr class="separator:a97ce6dd2340f2fa4d36647afc19619cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a75c22c2fad117b89d7dd12bd1b68370a"><td class="memItemLeft" align="right" valign="top"><a id="a75c22c2fad117b89d7dd12bd1b68370a"></a>
 &#160;</td><td class="memItemRight" valign="bottom"><b>Menu</b> (const <a class="el" href="classdoor_1_1Menu.html">Menu</a> &amp;)=delete</td></tr>
@@ -250,7 +250,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>offset</b></td></tr>
 </dl>
 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
 <a id="a34666d486c5a22728e70ca8b43cd644e"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#a34666d486c5a22728e70ca8b43cd644e">&#9670;&nbsp;</a></span>Menu()</h2>
+<h2 class="memtitle"><span class="permalink"><a href="#a34666d486c5a22728e70ca8b43cd644e">&#9670;&nbsp;</a></span>Menu() <span class="overload">[1/2]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -292,6 +292,32 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>offset</b></td></tr>
   </dd>
 </dl>
 
+</div>
+</div>
+<a id="a97ce6dd2340f2fa4d36647afc19619cd"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a97ce6dd2340f2fa4d36647afc19619cd">&#9670;&nbsp;</a></span>Menu() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">door::Menu::Menu </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>width</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Construct a new <a class="el" href="classdoor_1_1Menu.html">Menu</a>:: <a class="el" href="classdoor_1_1Menu.html">Menu</a> object. </p>
+<p>This creates a panel with a default width. The location needs to be changed <a class="el" href="classdoor_1_1Panel.html#aa5ad389766a5e5c22588dae37cce1d1c">Panel::set</a> </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">width</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
 </div>
 </div>
 <h2 class="groupheader">Member Function Documentation</h2>
@@ -483,7 +509,7 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>offset</b></td></tr>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19">door::ATTR::BOLD</a></div><div class="ttdeci">@ BOLD</div><div class="ttdoc">BOLD is the same as BRIGHT.</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e">door::COLOR::YELLOW</a></div><div class="ttdeci">@ YELLOW</div><div class="ttdoc">YELLOW (3)</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d">door::COLOR::WHITE</a></div><div class="ttdeci">@ WHITE</div><div class="ttdoc">WHITE (7)</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:670</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:713</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f">door::COLOR::BLUE</a></div><div class="ttdeci">@ BLUE</div><div class="ttdoc">BLUE (4)</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 1 - 1
classdoor_1_1Panel-members.html

@@ -83,7 +83,7 @@ $(function() {
   <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1Panel.html#ac7db32ec19257344af24bd80536c76d5">lines</a></td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr><td class="entry"><a class="el" href="classdoor_1_1Panel.html#ae5630294b780b57aba721969762f50eb">lineSetBack</a>(ANSIColor back)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>offset</b> (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>operator&lt;&lt;</b> (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">operator&lt;&lt;</a>(std::ostream &amp;os, const Panel &amp;p)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Panel</b>(int x, int y, int width) (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>Panel</b>(int width) (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Panel</b>(Panel &amp;)=delete (defined in <a class="el" href="classdoor_1_1Panel.html">door::Panel</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Panel.html">door::Panel</a></td><td class="entry"></td></tr>

+ 49 - 2
classdoor_1_1Panel.html

@@ -187,8 +187,8 @@ int&#160;</td><td class="memItemRight" valign="bottom"><b>offset</b></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
 Friends</h2></td></tr>
-<tr class="memitem:acc188acc0dfd6127ca4a51a6508b8c62"><td class="memItemLeft" align="right" valign="top"><a id="acc188acc0dfd6127ca4a51a6508b8c62"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;p)</td></tr>
+<tr class="memitem:acc188acc0dfd6127ca4a51a6508b8c62"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;p)</td></tr>
+<tr class="memdesc:acc188acc0dfd6127ca4a51a6508b8c62"><td class="mdescLeft">&#160;</td><td class="mdescRight">Output panel to stream.  <a href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">More...</a><br /></td></tr>
 <tr class="separator:acc188acc0dfd6127ca4a51a6508b8c62"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <h2 class="groupheader">Member Function Documentation</h2>
@@ -312,6 +312,53 @@ false </dd></dl>
 <dl class="section examples"><dt>Examples</dt><dd><a class="el" href="menu-example_8cpp-example.html#a12">menu-example.cpp</a>.</dd>
 </dl>
 
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a id="acc188acc0dfd6127ca4a51a6508b8c62"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acc188acc0dfd6127ca4a51a6508b8c62">&#9670;&nbsp;</a></span>operator&lt;&lt;</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::ostream&amp; operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;&#160;</td>
+          <td class="paramname"><em>p</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Output panel to stream. </p>
+<p>This uses the Panel.x, Panel.y to render the panel using ANSI control codes. Border style is considered, and wether or not we are using unicode. Colors of the border, and lines use their color or their renderFunction. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">os</td><td></td></tr>
+    <tr><td class="paramname">p</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>std::ostream&amp; </dd></dl>
+
 </div>
 </div>
 <h2 class="groupheader">Member Data Documentation</h2>

+ 2 - 2
classdoor_1_1Screen-members.html

@@ -73,8 +73,8 @@ $(function() {
 <p>This is the complete list of members for <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>, including all inherited members.</p>
 <table class="directory">
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>addPanel</b>(std::unique_ptr&lt; Panel &gt; p) (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>operator&lt;&lt;</b> (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>panels</b> (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">operator&lt;&lt;</a>(std::ostream &amp;os, const Screen &amp;s)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">panels</a></td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>Screen</b>(void) (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Screen</b>(Screen &amp;)=default (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>update</b>(Door &amp;d) (defined in <a class="el" href="classdoor_1_1Screen.html">door::Screen</a>)</td><td class="entry"><a class="el" href="classdoor_1_1Screen.html">door::Screen</a></td><td class="entry"></td></tr>

+ 52 - 3
classdoor_1_1Screen.html

@@ -93,15 +93,64 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>update</b> (void)</td
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
 Private Attributes</h2></td></tr>
 <tr class="memitem:a9f93b83a6c0ebab3972dd7340c88675a"><td class="memItemLeft" align="right" valign="top"><a id="a9f93b83a6c0ebab3972dd7340c88675a"></a>
-std::vector&lt; std::unique_ptr&lt; <a class="el" href="classdoor_1_1Panel.html">Panel</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>panels</b></td></tr>
+std::vector&lt; std::unique_ptr&lt; <a class="el" href="classdoor_1_1Panel.html">Panel</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">panels</a></td></tr>
+<tr class="memdesc:a9f93b83a6c0ebab3972dd7340c88675a"><td class="mdescLeft">&#160;</td><td class="mdescRight">vector of panels. <br /></td></tr>
 <tr class="separator:a9f93b83a6c0ebab3972dd7340c88675a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
 Friends</h2></td></tr>
-<tr class="memitem:aa33539627ee3d8a5c4b09ee9401711e0"><td class="memItemLeft" align="right" valign="top"><a id="aa33539627ee3d8a5c4b09ee9401711e0"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;s)</td></tr>
+<tr class="memitem:aa33539627ee3d8a5c4b09ee9401711e0"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;s)</td></tr>
+<tr class="memdesc:aa33539627ee3d8a5c4b09ee9401711e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs screen to stream.  <a href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">More...</a><br /></td></tr>
 <tr class="separator:aa33539627ee3d8a5c4b09ee9401711e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a id="aa33539627ee3d8a5c4b09ee9401711e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aa33539627ee3d8a5c4b09ee9401711e0">&#9670;&nbsp;</a></span>operator&lt;&lt;</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::ostream&amp; operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Outputs screen to stream. </p>
+<p>This iterates over the panels, and renders them. See <a class="el" href="classdoor_1_1Panel.html">door::Panel</a></p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">os</td><td></td></tr>
+    <tr><td class="paramname">s</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>std::ostream&amp; </dd></dl>
+
+</div>
+</div>
 <hr/>The documentation for this class was generated from the following files:<ul>
 <li><a class="el" href="door_8h_source.html">door.h</a></li>
 <li><a class="el" href="panel_8cpp.html">panel.cpp</a></li>

+ 11 - 12
classes.html

@@ -82,38 +82,37 @@ $(function() {
 <td valign="top"><a class="el" href="classdoor_1_1Line.html">Line</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td valign="top"><a class="el" href="classdoor_1_1Panel.html">Panel</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td></td></tr>
-<tr><td valign="top"><a class="el" href="classAnyOption.html">AnyOption</a>&#160;&#160;&#160;</td>
+<tr><td rowspan="2" valign="bottom"><a name="letter_b"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;b&#160;&#160;</div></td></tr></table>
+</td>
 <td valign="top"><a class="el" href="classdoor_1_1Door.html">Door</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td rowspan="2" valign="bottom"><a name="letter_m"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;m&#160;&#160;</div></td></tr></table>
 </td>
 <td rowspan="2" valign="bottom"><a name="letter_r"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;r&#160;&#160;</div></td></tr></table>
 </td>
 <td></td></tr>
-<tr><td rowspan="2" valign="bottom"><a name="letter_b"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;b&#160;&#160;</div></td></tr></table>
-</td>
-<td rowspan="2" valign="bottom"><a name="letter_g"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;g&#160;&#160;</div></td></tr></table>
+<tr><td rowspan="2" valign="bottom"><a name="letter_g"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;g&#160;&#160;</div></td></tr></table>
 </td>
 <td></td></tr>
-<tr><td valign="top"><a class="el" href="classdoor_1_1Menu.html">Menu</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<tr><td valign="top"><a class="el" href="structdoor_1_1box__styles.html">box_styles</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classdoor_1_1Menu.html">Menu</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td valign="top"><a class="el" href="classdoor_1_1Render.html">Render</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td></td></tr>
-<tr><td valign="top"><a class="el" href="structdoor_1_1box__styles.html">box_styles</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<tr><td rowspan="2" valign="bottom"><a name="letter_c"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;c&#160;&#160;</div></td></tr></table>
+</td>
 <td valign="top"><a class="el" href="classdoor_1_1Goto.html">Goto</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td rowspan="2" valign="bottom"><a name="letter_n"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;n&#160;&#160;</div></td></tr></table>
 </td>
 <td rowspan="2" valign="bottom"><a name="letter_s"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;s&#160;&#160;</div></td></tr></table>
 </td>
 <td></td></tr>
-<tr><td rowspan="2" valign="bottom"><a name="letter_c"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;c&#160;&#160;</div></td></tr></table>
-</td>
-<td rowspan="2" valign="bottom"><a name="letter_i"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;i&#160;&#160;</div></td></tr></table>
+<tr><td rowspan="2" valign="bottom"><a name="letter_i"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;i&#160;&#160;</div></td></tr></table>
 </td>
 <td></td></tr>
-<tr><td valign="top"><a class="el" href="classdoor_1_1NewLine.html">NewLine</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<tr><td valign="top"><a class="el" href="classdoor_1_1Clrscr.html">Clrscr</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<td valign="top"><a class="el" href="classdoor_1_1NewLine.html">NewLine</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td valign="top"><a class="el" href="classdoor_1_1Screen.html">Screen</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td></td></tr>
-<tr><td valign="top"><a class="el" href="classdoor_1_1Clrscr.html">Clrscr</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
-<td valign="top"><a class="el" href="classdoor_1_1IConv.html">IConv</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
+<tr><td></td><td valign="top"><a class="el" href="classdoor_1_1IConv.html">IConv</a> (<a class="el" href="namespacedoor.html">door</a>)&#160;&#160;&#160;</td>
 <td></td><td></td><td></td></tr>
 <tr><td></td><td></td><td></td><td></td><td></td></tr>
 </table>

+ 2 - 2
door-example_8cpp-example.html

@@ -88,8 +88,8 @@ $(function() {
 <div class="ttc" id="aclassdoor_1_1Door_html"><div class="ttname"><a href="classdoor_1_1Door.html">door::Door</a></div><div class="ttdef"><b>Definition:</b> door.h:193</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19">door::ATTR::BOLD</a></div><div class="ttdeci">@ BOLD</div><div class="ttdoc">BOLD is the same as BRIGHT.</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html"><div class="ttname"><a href="classdoor_1_1ANSIColor.html">door::ANSIColor</a></div><div class="ttdoc">Foreground, Background and Attributes.</div><div class="ttdef"><b>Definition:</b> door.h:131</div></div>
-<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1142</div></div>
-<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1170</div></div>
+<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1221</div></div>
+<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1249</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e">door::COLOR::YELLOW</a></div><div class="ttdeci">@ YELLOW</div><div class="ttdoc">YELLOW (3)</div></div>
 <div class="ttc" id="anamespacedoor_html_ae3a70989c43f6cb3522308af748b4481"><div class="ttname"><a href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">door::reset</a></div><div class="ttdeci">ANSIColor reset(ATTR::RESET)</div><div class="ttdoc">reset colors to normal</div><div class="ttdef"><b>Definition:</b> door.h:400</div></div>
 <div class="ttc" id="anamespacedoor_html"><div class="ttname"><a href="namespacedoor.html">door</a></div><div class="ttdoc">The BBS door project. This is an attempt at writing a C++ BBS door toolkit.</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:9</div></div>

+ 48 - 45
door_8cpp.html

@@ -92,38 +92,37 @@ Include dependency graph for door.cpp:</div>
 <div class="dyncontent">
 <div class="center"><img src="door_8cpp__incl.png" border="0" usemap="#door_8cpp" alt=""/></div>
 <map name="door_8cpp" id="door_8cpp">
-<area shape="rect" title="Door." alt="" coords="1336,5,1413,32"/>
-<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="602,80,665,107"/>
-<area shape="rect" title=" " alt="" coords="965,229,1045,256"/>
-<area shape="rect" title=" " alt="" coords="5,229,64,256"/>
-<area shape="rect" title=" " alt="" coords="51,155,109,181"/>
-<area shape="rect" title=" " alt="" coords="1043,155,1117,181"/>
-<area shape="rect" title=" " alt="" coords="1185,80,1271,107"/>
-<area shape="rect" title=" " alt="" coords="1295,80,1361,107"/>
-<area shape="rect" title=" " alt="" coords="1386,80,1457,107"/>
-<area shape="rect" title=" " alt="" coords="1481,80,1551,107"/>
-<area shape="rect" title=" " alt="" coords="1576,80,1640,107"/>
-<area shape="rect" title=" " alt="" coords="1664,80,1739,107"/>
-<area shape="rect" title=" " alt="" coords="1763,80,1837,107"/>
-<area shape="rect" title=" " alt="" coords="1862,80,1935,107"/>
-<area shape="rect" title=" " alt="" coords="1959,80,2027,107"/>
-<area shape="rect" href="anyoption_8h_source.html" title=" " alt="" coords="184,155,283,181"/>
-<area shape="rect" title=" " alt="" coords="105,229,178,256"/>
-<area shape="rect" title=" " alt="" coords="307,155,373,181"/>
-<area shape="rect" title=" " alt="" coords="398,155,485,181"/>
-<area shape="rect" title=" " alt="" coords="509,155,571,181"/>
-<area shape="rect" title=" " alt="" coords="595,155,672,181"/>
-<area shape="rect" title=" " alt="" coords="697,155,773,181"/>
-<area shape="rect" title=" " alt="" coords="797,155,859,181"/>
-<area shape="rect" title=" " alt="" coords="883,155,967,181"/>
-<area shape="rect" title=" " alt="" coords="297,229,364,256"/>
-<area shape="rect" title=" " alt="" coords="202,229,273,256"/>
+<area shape="rect" title="Door." alt="" coords="1200,5,1277,32"/>
+<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="603,80,666,107"/>
+<area shape="rect" title=" " alt="" coords="5,155,64,181"/>
+<area shape="rect" title=" " alt="" coords="993,155,1073,181"/>
+<area shape="rect" title=" " alt="" coords="1097,155,1172,181"/>
+<area shape="rect" title=" " alt="" coords="956,80,1041,107"/>
+<area shape="rect" title=" " alt="" coords="1065,80,1132,107"/>
+<area shape="rect" title=" " alt="" coords="1157,80,1227,107"/>
+<area shape="rect" title=" " alt="" coords="1251,80,1322,107"/>
+<area shape="rect" title=" " alt="" coords="1347,80,1405,107"/>
+<area shape="rect" title=" " alt="" coords="1429,80,1493,107"/>
+<area shape="rect" title=" " alt="" coords="1517,80,1592,107"/>
+<area shape="rect" title=" " alt="" coords="1616,80,1691,107"/>
+<area shape="rect" title=" " alt="" coords="1715,80,1789,107"/>
+<area shape="rect" title=" " alt="" coords="1813,80,1881,107"/>
+<area shape="rect" title=" " alt="" coords="88,155,187,181"/>
+<area shape="rect" title=" " alt="" coords="211,155,277,181"/>
+<area shape="rect" title=" " alt="" coords="302,155,375,181"/>
+<area shape="rect" title=" " alt="" coords="399,155,486,181"/>
+<area shape="rect" title=" " alt="" coords="511,155,572,181"/>
+<area shape="rect" title=" " alt="" coords="596,155,673,181"/>
+<area shape="rect" title=" " alt="" coords="698,155,774,181"/>
+<area shape="rect" title=" " alt="" coords="798,155,861,181"/>
+<area shape="rect" title=" " alt="" coords="885,155,969,181"/>
 </map>
 </div>
 </div><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
 Classes</h2></td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1IConv.html">door::IConv</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from one encoding to another. Uses iconv (international conversion) API.  <a href="classdoor_1_1IConv.html#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
@@ -134,23 +133,23 @@ Namespaces</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
 Functions</h2></td></tr>
-<tr class="memitem:afa94e91868d469077e4d3b400dedfd6c"><td class="memItemLeft" align="right" valign="top"><a id="afa94e91868d469077e4d3b400dedfd6c"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>door::to_lower</b> (std::string &amp;text)</td></tr>
+<tr class="memitem:afa94e91868d469077e4d3b400dedfd6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">door::to_lower</a> (std::string &amp;text)</td></tr>
+<tr class="memdesc:afa94e91868d469077e4d3b400dedfd6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">convert string to lowercase  <a href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">More...</a><br /></td></tr>
 <tr class="separator:afa94e91868d469077e4d3b400dedfd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memItemLeft" align="right" valign="top"><a id="acba445fc4d33e1b0c1ff2b648cc2899d"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>door::replace</b> (std::string &amp;str, const std::string &amp;from, const std::string &amp;to)</td></tr>
+<tr class="memitem:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">door::replace</a> (std::string &amp;str, const std::string &amp;from, const std::string &amp;to)</td></tr>
+<tr class="memdesc:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replace all instances of from with to.  <a href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">More...</a><br /></td></tr>
 <tr class="separator:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memItemLeft" align="right" valign="top"><a id="a5cc0209e9203231d1bdb1e6b7f0876c3"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>door::replace</b> (std::string &amp;str, const char *from, const char *to)</td></tr>
+<tr class="memitem:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5cc0209e9203231d1bdb1e6b7f0876c3">door::replace</a> (std::string &amp;str, const char *from, const char *to)</td></tr>
+<tr class="memdesc:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replace all instances of from with to.  <a href="namespacedoor.html#a5cc0209e9203231d1bdb1e6b7f0876c3">More...</a><br /></td></tr>
 <tr class="separator:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memItemLeft" align="right" valign="top"><a id="a4fc2f3f7f1b3908cb71bd1d275594fe9"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>door::sig_handler</b> (int signal)</td></tr>
+<tr class="memitem:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">door::sig_handler</a> (int signal)</td></tr>
+<tr class="memdesc:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signal handler for detecting hangup/broken pipe.  <a href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">More...</a><br /></td></tr>
 <tr class="separator:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memItemLeft" align="right" valign="top"><a id="a5efa4fb96eacd6b90e5cbb0bd985f3fc"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>door::cp437toUnicode</b> (std::string input, std::string &amp;out)</td></tr>
+<tr class="memitem:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">door::cp437toUnicode</a> (std::string input, std::string &amp;out)</td></tr>
+<tr class="memdesc:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from CP437 to unicode.  <a href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">More...</a><br /></td></tr>
 <tr class="separator:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memItemLeft" align="right" valign="top"><a id="a7e94df0d0af14da619835aa90cfa8f2a"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>door::cp437toUnicode</b> (const char *input, std::string &amp;out)</td></tr>
+<tr class="memitem:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a7e94df0d0af14da619835aa90cfa8f2a">door::cp437toUnicode</a> (const char *input, std::string &amp;out)</td></tr>
+<tr class="memdesc:a7e94df0d0af14da619835aa90cfa8f2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from CP437 to unicode.  <a href="namespacedoor.html#a7e94df0d0af14da619835aa90cfa8f2a">More...</a><br /></td></tr>
 <tr class="separator:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad5d6277de5e8274cec970a4633d713b1"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ad5d6277de5e8274cec970a4633d713b1">door::operator&lt;&lt;</a> (std::ostream &amp;os, const Clrscr &amp;clr)</td></tr>
 <tr class="separator:ad5d6277de5e8274cec970a4633d713b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -162,23 +161,27 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>door::cp437toUnicode<
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
 Variables</h2></td></tr>
 <tr class="memitem:a1626abff63f7a1b9dc696969c860283b"><td class="memItemLeft" align="right" valign="top"><a id="a1626abff63f7a1b9dc696969c860283b"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>door::unicode</b> = false</td></tr>
+bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">door::unicode</a> = false</td></tr>
+<tr class="memdesc:a1626abff63f7a1b9dc696969c860283b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Was unicode detected? <br /></td></tr>
 <tr class="separator:a1626abff63f7a1b9dc696969c860283b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aeade8b521c7f95755fdb166727c2b87c"><td class="memItemLeft" align="right" valign="top"><a id="aeade8b521c7f95755fdb166727c2b87c"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>door::full_cp437</b> = false</td></tr>
+<tr class="memitem:aeade8b521c7f95755fdb166727c2b87c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">door::full_cp437</a> = false</td></tr>
+<tr class="memdesc:aeade8b521c7f95755fdb166727c2b87c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Was full CP437 detected?  <a href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">More...</a><br /></td></tr>
 <tr class="separator:aeade8b521c7f95755fdb166727c2b87c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac39a1dfdb8dec210d28133625f860bc1"><td class="memItemLeft" align="right" valign="top"><a id="ac39a1dfdb8dec210d28133625f860bc1"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>door::debug_capture</b> = false</td></tr>
+<tr class="memitem:ac39a1dfdb8dec210d28133625f860bc1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">door::debug_capture</a> = false</td></tr>
+<tr class="memdesc:ac39a1dfdb8dec210d28133625f860bc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Capture the output for debugging. <br  />
+  <a href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">More...</a><br /></td></tr>
 <tr class="separator:ac39a1dfdb8dec210d28133625f860bc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ac70193caf66e4b9aed1529593727a6eb"><td class="memItemLeft" align="right" valign="top">Clrscr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></td></tr>
 <tr class="separator:ac70193caf66e4b9aed1529593727a6eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a36352ded72aee66b10e1bda6d3d8efb8"><td class="memItemLeft" align="right" valign="top">NewLine&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></td></tr>
 <tr class="separator:a36352ded72aee66b10e1bda6d3d8efb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aa6a7c86274470fd22e45676ba6eebb36"><td class="memItemLeft" align="right" valign="top"><a id="aa6a7c86274470fd22e45676ba6eebb36"></a>
-const char&#160;</td><td class="memItemRight" valign="bottom"><b>door::SaveCursor</b> [] = &quot;\x1b[s&quot;</td></tr>
+const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">door::SaveCursor</a> [] = &quot;\x1b[s&quot;</td></tr>
+<tr class="memdesc:aa6a7c86274470fd22e45676ba6eebb36"><td class="mdescLeft">&#160;</td><td class="mdescRight">ANSI Save Cursor position command. <br /></td></tr>
 <tr class="separator:aa6a7c86274470fd22e45676ba6eebb36"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a1ae3caab423b38b35e887d79b5ac1811"><td class="memItemLeft" align="right" valign="top"><a id="a1ae3caab423b38b35e887d79b5ac1811"></a>
-const char&#160;</td><td class="memItemRight" valign="bottom"><b>door::RestoreCursor</b> [] = &quot;\x1b[u&quot;</td></tr>
+const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">door::RestoreCursor</a> [] = &quot;\x1b[u&quot;</td></tr>
+<tr class="memdesc:a1ae3caab423b38b35e887d79b5ac1811"><td class="mdescLeft">&#160;</td><td class="mdescRight">ANSI Restore Cursor position command. <br /></td></tr>
 <tr class="separator:a1ae3caab423b38b35e887d79b5ac1811"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a3274dff22ddb19a3e429a703ee6f3e57"><td class="memItemLeft" align="right" valign="top">renderFunction&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">door::rBlueYellow</a></td></tr>
 <tr class="memdesc:a3274dff22ddb19a3e429a703ee6f3e57"><td class="mdescLeft">&#160;</td><td class="mdescRight">BlueYellow <a class="el" href="classdoor_1_1Render.html" title="Rendering a string with ANSIColor.">Render</a> example function.  <a href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">More...</a><br /></td></tr>

+ 24 - 26
door_8cpp__incl.map

@@ -1,28 +1,26 @@
 <map id="door.cpp" name="door.cpp">
-<area shape="rect" id="node1" title="Door." alt="" coords="1336,5,1413,32"/>
-<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="602,80,665,107"/>
-<area shape="rect" id="node6" title=" " alt="" coords="965,229,1045,256"/>
-<area shape="rect" id="node8" title=" " alt="" coords="5,229,64,256"/>
-<area shape="rect" id="node10" title=" " alt="" coords="51,155,109,181"/>
-<area shape="rect" id="node17" title=" " alt="" coords="1043,155,1117,181"/>
-<area shape="rect" id="node18" title=" " alt="" coords="1185,80,1271,107"/>
-<area shape="rect" id="node19" title=" " alt="" coords="1295,80,1361,107"/>
-<area shape="rect" id="node20" title=" " alt="" coords="1386,80,1457,107"/>
-<area shape="rect" id="node21" title=" " alt="" coords="1481,80,1551,107"/>
-<area shape="rect" id="node22" title=" " alt="" coords="1576,80,1640,107"/>
-<area shape="rect" id="node23" title=" " alt="" coords="1664,80,1739,107"/>
-<area shape="rect" id="node24" title=" " alt="" coords="1763,80,1837,107"/>
-<area shape="rect" id="node25" title=" " alt="" coords="1862,80,1935,107"/>
-<area shape="rect" id="node26" title=" " alt="" coords="1959,80,2027,107"/>
-<area shape="rect" id="node3" href="$anyoption_8h_source.html" title=" " alt="" coords="184,155,283,181"/>
-<area shape="rect" id="node5" title=" " alt="" coords="105,229,178,256"/>
-<area shape="rect" id="node9" title=" " alt="" coords="307,155,373,181"/>
-<area shape="rect" id="node11" title=" " alt="" coords="398,155,485,181"/>
-<area shape="rect" id="node12" title=" " alt="" coords="509,155,571,181"/>
-<area shape="rect" id="node13" title=" " alt="" coords="595,155,672,181"/>
-<area shape="rect" id="node14" title=" " alt="" coords="697,155,773,181"/>
-<area shape="rect" id="node15" title=" " alt="" coords="797,155,859,181"/>
-<area shape="rect" id="node16" title=" " alt="" coords="883,155,967,181"/>
-<area shape="rect" id="node4" title=" " alt="" coords="297,229,364,256"/>
-<area shape="rect" id="node7" title=" " alt="" coords="202,229,273,256"/>
+<area shape="rect" id="node1" title="Door." alt="" coords="1200,5,1277,32"/>
+<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="603,80,666,107"/>
+<area shape="rect" id="node5" title=" " alt="" coords="5,155,64,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="993,155,1073,181"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1097,155,1172,181"/>
+<area shape="rect" id="node15" title=" " alt="" coords="956,80,1041,107"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1065,80,1132,107"/>
+<area shape="rect" id="node17" title=" " alt="" coords="1157,80,1227,107"/>
+<area shape="rect" id="node18" title=" " alt="" coords="1251,80,1322,107"/>
+<area shape="rect" id="node19" title=" " alt="" coords="1347,80,1405,107"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1429,80,1493,107"/>
+<area shape="rect" id="node21" title=" " alt="" coords="1517,80,1592,107"/>
+<area shape="rect" id="node22" title=" " alt="" coords="1616,80,1691,107"/>
+<area shape="rect" id="node23" title=" " alt="" coords="1715,80,1789,107"/>
+<area shape="rect" id="node24" title=" " alt="" coords="1813,80,1881,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="88,155,187,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="211,155,277,181"/>
+<area shape="rect" id="node6" title=" " alt="" coords="302,155,375,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="399,155,486,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="511,155,572,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="596,155,673,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="698,155,774,181"/>
+<area shape="rect" id="node12" title=" " alt="" coords="798,155,861,181"/>
+<area shape="rect" id="node13" title=" " alt="" coords="885,155,969,181"/>
 </map>

+ 1 - 1
door_8cpp__incl.md5

@@ -1 +1 @@
-20859ca820ad93079cf8ac8590ef7dc7
+8eca1d70302467f01dc77a47569531cb

BIN
door_8cpp__incl.png


+ 124 - 109
door_8h_source.html

@@ -117,9 +117,9 @@ $(function() {
 <div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
 <div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacedoor.html">door</a> {</div>
 <div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160; </div>
-<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> unicode;</div>
-<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> full_cp437;</div>
-<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> debug_capture;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">unicode</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">full_cp437</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="keyword">extern</span> <span class="keywordtype">bool</span> <a class="code" href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">debug_capture</a>;</div>
 <div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160; </div>
 <div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">/*</span></div>
 <div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;<span class="comment">Translate CP437 strings to unicode for output.</span></div>
@@ -129,8 +129,8 @@ $(function() {
 <div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;<span class="comment">}</span></div>
 <div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;<span class="comment"></span> </div>
 <div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keywordtype">void</span> cp437toUnicode(std::string input, std::string &amp;out);</div>
-<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keywordtype">void</span> cp437toUnicode(<span class="keyword">const</span> <span class="keywordtype">char</span> *input, std::string &amp;out);</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">cp437toUnicode</a>(std::string input, std::string &amp;out);</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">cp437toUnicode</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *input, std::string &amp;out);</div>
 <div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160; </div>
 <div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;<span class="comment">/*</span></div>
 <div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;<span class="comment">door 2.0</span></div>
@@ -203,13 +203,13 @@ $(function() {
 <div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;  <span class="keywordtype">void</span> parse_dropfile(<span class="keyword">const</span> <span class="keywordtype">char</span> *filepath);</div>
 <div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;  <span class="keywordtype">void</span> init(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;  std::time_t startup;</div>
-<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  <span class="keyword">struct </span>termios tio_default;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;  <span class="keyword">struct </span>termios <a class="code" href="getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec">tio_default</a>;</div>
 <div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;  <span class="comment">// getkey functions</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <span class="keywordtype">signed</span> <span class="keywordtype">int</span> getch(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;  <span class="keywordtype">void</span> unget(<span class="keywordtype">char</span> c);</div>
-<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  <span class="keywordtype">char</span> get(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keywordtype">char</span> buffer[5];</div>
-<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> bpos;</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  <span class="keywordtype">signed</span> <span class="keywordtype">int</span> <a class="code" href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">getch</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">unget</a>(<span class="keywordtype">char</span> c);</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;  <span class="keywordtype">char</span> <a class="code" href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">get</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;  <span class="keywordtype">char</span> <a class="code" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a>[5];</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;  <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47">bpos</a>;</div>
 <div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;  <span class="keywordtype">bool</span> has_dropfile;</div>
 <div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;  <span class="keywordtype">bool</span> debugging;</div>
 <div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;  std::string dropfilename;</div>
@@ -232,7 +232,7 @@ $(function() {
 <div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;  <span class="keyword">virtual</span> ~<a class="code" href="classdoor_1_1Door.html">Door</a>();</div>
 <div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;  ofstream &amp;<a class="code" href="classdoor_1_1Door.html#a15d3f18b7165f348479344b897b6ed96">log</a>(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;  <span class="comment">// void log(std::string output);</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <a class="code" href="classAnyOption.html">AnyOption</a> opt;</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  AnyOption opt;</div>
 <div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  std::string debug_buffer;</div>
 <div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; </div>
 <div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="classdoor_1_1Door.html#adf76d445797eb513020a60f786f65767">  244</a></span>&#160;  <a class="code" href="classdoor_1_1ANSIColor.html">ANSIColor</a> <a class="code" href="classdoor_1_1Door.html#adf76d445797eb513020a60f786f65767">previous</a>;</div>
@@ -251,7 +251,7 @@ $(function() {
 <div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  atomic&lt;int&gt; time_left;</div>
 <div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  atomic&lt;int&gt; time_used;</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="keywordtype">signed</span> <span class="keywordtype">int</span> getkey(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;  <span class="keywordtype">signed</span> <span class="keywordtype">int</span> <a class="code" href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">getkey</a>(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;  <span class="keywordtype">bool</span> haskey(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;  <span class="keywordtype">int</span> get_input(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;  <span class="keywordtype">signed</span> <span class="keywordtype">int</span> <a class="code" href="classdoor_1_1Door.html#a092b281d63bb6ee0a3bee2ba77d78a47">sleep_key</a>(<span class="keywordtype">int</span> secs);</div>
@@ -322,8 +322,8 @@ $(function() {
 <div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;  <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classdoor_1_1Goto.html#a21a0915b21cc762dc148f7ba6797229b">operator&lt;&lt;</a>(std::ostream &amp;os, <span class="keyword">const</span> <a class="code" href="classdoor_1_1Goto.html">Goto</a> &amp;g);</div>
 <div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;};</div>
 <div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160; </div>
-<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> SaveCursor[];</div>
-<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> RestoreCursor[];</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> <a class="code" href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">SaveCursor</a>[];</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;<span class="keyword">extern</span> <span class="keyword">const</span> <span class="keywordtype">char</span> <a class="code" href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">RestoreCursor</a>[];</div>
 <div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160; </div>
 <div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;<span class="preprocessor">#ifdef EXPERIMENTAL</span></div>
 <div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160; </div>
@@ -485,7 +485,7 @@ $(function() {
 <div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;  <a class="code" href="classdoor_1_1Goto.html">door::Goto</a> gotoEnd(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;  std::unique_ptr&lt;Line&gt; <a class="code" href="classdoor_1_1Panel.html#a69a98249e3f33fd20300aa62120b8561">spacer_line</a>(<span class="keywordtype">bool</span> single);</div>
 <div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classdoor_1_1Panel.html#ae5630294b780b57aba721969762f50eb">lineSetBack</a>(ANSIColor back);</div>
-<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;  <span class="keyword">friend</span> std::ostream &amp;operator&lt;&lt;(std::ostream &amp;os, <span class="keyword">const</span> Panel &amp;p);</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;  <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">operator&lt;&lt;</a>(std::ostream &amp;os, <span class="keyword">const</span> Panel &amp;p);</div>
 <div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160;};</div>
 <div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160; </div>
 <div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;<span class="comment">/*</span></div>
@@ -542,74 +542,74 @@ $(function() {
 <div class="line"><a name="l00709"></a><span class="lineno"><a class="line" href="classdoor_1_1Screen.html">  709</a></span>&#160;<span class="keyword">class </span><a class="code" href="classdoor_1_1Screen.html">Screen</a> {</div>
 <div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;<span class="keyword">private</span>:</div>
 <div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;  <span class="comment">// bool hidden;</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;  std::vector&lt;std::unique_ptr&lt;Panel&gt;&gt; panels;</div>
-<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160; </div>
-<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;<span class="keyword">public</span>:</div>
-<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;  <a class="code" href="classdoor_1_1Screen.html">Screen</a>(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;  <a class="code" href="classdoor_1_1Screen.html">Screen</a>(<a class="code" href="classdoor_1_1Screen.html">Screen</a> &amp;) = <span class="keywordflow">default</span>;</div>
-<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;  <span class="keywordtype">void</span> addPanel(std::unique_ptr&lt;Panel&gt; p);</div>
-<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;  <span class="comment">/*</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;<span class="comment">bool delPanel(std::shared_ptr&lt;Panel&gt; p);</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;<span class="comment">void hide(void);</span></div>
-<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="comment">void show(void);</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;<span class="comment">*/</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;  <span class="keywordtype">bool</span> update(<a class="code" href="classdoor_1_1Door.html">Door</a> &amp;d);</div>
-<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;  <span class="keywordtype">void</span> update(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160; </div>
-<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;  <span class="keyword">friend</span> std::ostream &amp;operator&lt;&lt;(std::ostream &amp;os, <span class="keyword">const</span> <a class="code" href="classdoor_1_1Screen.html">Screen</a> &amp;s);</div>
-<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;};</div>
+<div class="line"><a name="l00715"></a><span class="lineno"><a class="line" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">  715</a></span>&#160;<span class="comment"></span>  std::vector&lt;std::unique_ptr&lt;Panel&gt;&gt; <a class="code" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">panels</a>;</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160; </div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;<span class="keyword">public</span>:</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;  <a class="code" href="classdoor_1_1Screen.html">Screen</a>(<span class="keywordtype">void</span>);</div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;  <a class="code" href="classdoor_1_1Screen.html">Screen</a>(<a class="code" href="classdoor_1_1Screen.html">Screen</a> &amp;) = <span class="keywordflow">default</span>;</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;  <span class="keywordtype">void</span> addPanel(std::unique_ptr&lt;Panel&gt; p);</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;  <span class="comment">/*</span></div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;<span class="comment">bool delPanel(std::shared_ptr&lt;Panel&gt; p);</span></div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;<span class="comment">void hide(void);</span></div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;<span class="comment">void show(void);</span></div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;<span class="comment">*/</span></div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;  <span class="keywordtype">bool</span> update(<a class="code" href="classdoor_1_1Door.html">Door</a> &amp;d);</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;  <span class="keywordtype">void</span> update(<span class="keywordtype">void</span>);</div>
 <div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160; </div>
-<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;<span class="comment">/*</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;<span class="comment">screen - contains panels.</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;<span class="comment">  - default to 1,1 X 80,24</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;<span class="comment">  - refresh(style) could redraw panels by order they were added,</span></div>
-<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;<span class="comment">  or could redraw panels from top to bottom, left to right.</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="comment">crazy ideas:</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;<span class="comment">  hide panels / z-order</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="comment">  how to handle panel on top of other panels?</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;<span class="comment">  Can I have you win + show animated final score calculations?</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;<span class="comment">panel - has X,Y and width, optional length.  contains lines.</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;<span class="comment">  length could be simply number of &quot;lines&quot;.</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;<span class="comment">  - has optional border.  double/single/Ds/Sd  TOPbottom</span></div>
-<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="comment">  - has optional title.</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="comment">  - has optional footer.</span></div>
-<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;<span class="comment">  addLine()</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;<span class="comment">  append() - Appends another line to current line.</span></div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;  <span class="keyword">friend</span> std::ostream &amp;<a class="code" href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">operator&lt;&lt;</a>(std::ostream &amp;os, <span class="keyword">const</span> <a class="code" href="classdoor_1_1Screen.html">Screen</a> &amp;s);</div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;};</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160; </div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;<span class="comment">screen - contains panels.</span></div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;<span class="comment">  - default to 1,1 X 80,24</span></div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;<span class="comment">  - refresh(style) could redraw panels by order they were added,</span></div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;<span class="comment">  or could redraw panels from top to bottom, left to right.</span></div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;<span class="comment">crazy ideas:</span></div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;<span class="comment">  hide panels / z-order</span></div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;<span class="comment">  how to handle panel on top of other panels?</span></div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;<span class="comment">  Can I have you win + show animated final score calculations?</span></div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="comment">panel - has X,Y and width, optional length.  contains lines.</span></div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="comment">  length could be simply number of &quot;lines&quot;.</span></div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;<span class="comment">  - has optional border.  double/single/Ds/Sd  TOPbottom</span></div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;<span class="comment">  - has optional title.</span></div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;<span class="comment">  - has optional footer.</span></div>
 <div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;<span class="comment">  set(X,Y) - set a &quot;line&quot; at a given X,Y position.</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="comment">menu - another type of panel, contains menu options/lines.</span></div>
-<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<span class="comment">lightmenu - like above, but allows arrow keys to select menu options.</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;<span class="comment">line - contains text.</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;<span class="comment">  (Maybe a &quot;dirty&quot; flag is needed here?)</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;<span class="comment">  - has optional (width)</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;<span class="comment">  - has optional (justify - L, R, Center)</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;<span class="comment">  - has optional padding (# of blank chars)</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;<span class="comment">  - has color (of text)</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="comment">  - has formatter/coloring function (to colorize the text)</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="comment">  Example would be one that sets capital letters to one color, lower to another.</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="comment">  Another example would be one that displays Score: XXX, where Score is one</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;<span class="comment">  color, : is another, and XXX is yet another.  Properly padded, of course.</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;<span class="comment">  - has &quot;lambda&quot; function to update the value? (Maybe?)</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;<span class="comment">  Idea would be that I could update the score, and panel.update().  It would</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;<span class="comment">  call all the line.update() functions and only update anything that has</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="comment">  changed.</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="comment">  Crazy ideas:</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="comment">  Can I delete a line, and have it automatically removed from a panel?</span></div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;<span class="comment">  addLine()</span></div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;<span class="comment">  append() - Appends another line to current line.</span></div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;<span class="comment">  set(X,Y) - set a &quot;line&quot; at a given X,Y position.</span></div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;<span class="comment">menu - another type of panel, contains menu options/lines.</span></div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;<span class="comment">lightmenu - like above, but allows arrow keys to select menu options.</span></div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;<span class="comment">line - contains text.</span></div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;<span class="comment">  (Maybe a &quot;dirty&quot; flag is needed here?)</span></div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;<span class="comment">  - has optional (width)</span></div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="comment">  - has optional (justify - L, R, Center)</span></div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="comment">  - has optional padding (# of blank chars)</span></div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="comment">  - has color (of text)</span></div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;<span class="comment">  - has formatter/coloring function (to colorize the text)</span></div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;<span class="comment">  Example would be one that sets capital letters to one color, lower to another.</span></div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;<span class="comment">  Another example would be one that displays Score: XXX, where Score is one</span></div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;<span class="comment">  color, : is another, and XXX is yet another.  Properly padded, of course.</span></div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="comment">  - has &quot;lambda&quot; function to update the value? (Maybe?)</span></div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="comment">  Idea would be that I could update the score, and panel.update().  It would</span></div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;<span class="comment">  call all the line.update() functions and only update anything that has</span></div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;<span class="comment">  changed.</span></div>
 <div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;<span class="comment">lightline - text, changes format/coloring if focus/nofocus is set?</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;<span class="comment"></span> </div>
-<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="comment"> */</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160; </div>
-<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;} <span class="comment">// namespace door</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;<span class="comment">  Crazy ideas:</span></div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;<span class="comment">  Can I delete a line, and have it automatically removed from a panel?</span></div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;<span class="comment">lightline - text, changes format/coloring if focus/nofocus is set?</span></div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;<span class="comment"></span> </div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160; </div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;} <span class="comment">// namespace door</span></div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;<span class="preprocessor">#endif</span></div>
 </div><!-- fragment --></div><!-- contents -->
 <div class="ttc" id="aclassdoor_1_1Goto_html"><div class="ttname"><a href="classdoor_1_1Goto.html">door::Goto</a></div><div class="ttdoc">ANSI Goto X, Y position.</div><div class="ttdef"><b>Definition:</b> door.h:411</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_ae2f71d1340a75f4b9955e100a9022994"><div class="ttname"><a href="classdoor_1_1Line.html#ae2f71d1340a75f4b9955e100a9022994">door::Line::length</a></div><div class="ttdeci">int length(void)</div><div class="ttdef"><b>Definition:</b> lines.cpp:203</div></div>
@@ -618,40 +618,45 @@ $(function() {
 <div class="ttc" id="aclassdoor_1_1NewLine_html"><div class="ttname"><a href="classdoor_1_1NewLine.html">door::NewLine</a></div><div class="ttdoc">CR+LF.</div><div class="ttdef"><b>Definition:</b> door.h:384</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a493cacf6f6a2ae4798b319b8b9ba9488"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a493cacf6f6a2ae4798b319b8b9ba9488">door::COLOR::BROWN</a></div><div class="ttdeci">@ BROWN</div><div class="ttdoc">BROWN (3)</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a5b5d31a50cce6b5aa9b9e15647bfeddc"><div class="ttname"><a href="classdoor_1_1Line.html#a5b5d31a50cce6b5aa9b9e15647bfeddc">door::Line::paddingColor</a></div><div class="ttdeci">ANSIColor paddingColor</div><div class="ttdoc">Padding color.</div><div class="ttdef"><b>Definition:</b> door.h:500</div></div>
-<div class="ttc" id="aclassdoor_1_1Render_html_ae83a23641dde4dff29b5214ea1921f3b"><div class="ttname"><a href="classdoor_1_1Render.html#ae83a23641dde4dff29b5214ea1921f3b">door::Render::output</a></div><div class="ttdeci">void output(std::ostream &amp;os)</div><div class="ttdef"><b>Definition:</b> door.cpp:1071</div></div>
-<div class="ttc" id="aclassdoor_1_1ColorOutput_html_a96cbbca21d2df9181925b121b57bef6b"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b">door::ColorOutput::ColorOutput</a></div><div class="ttdeci">ColorOutput()</div><div class="ttdef"><b>Definition:</b> door.cpp:1039</div></div>
+<div class="ttc" id="aclassdoor_1_1Render_html_ae83a23641dde4dff29b5214ea1921f3b"><div class="ttname"><a href="classdoor_1_1Render.html#ae83a23641dde4dff29b5214ea1921f3b">door::Render::output</a></div><div class="ttdeci">void output(std::ostream &amp;os)</div><div class="ttdef"><b>Definition:</b> door.cpp:1150</div></div>
+<div class="ttc" id="aclassdoor_1_1ColorOutput_html_a96cbbca21d2df9181925b121b57bef6b"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b">door::ColorOutput::ColorOutput</a></div><div class="ttdeci">ColorOutput()</div><div class="ttdef"><b>Definition:</b> door.cpp:1118</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_a9bc92fe3929de0d16f44ba4fb1837dd7"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#a9bc92fe3929de0d16f44ba4fb1837dd7">door::ANSIColor::Attr</a></div><div class="ttdeci">ANSIColor &amp; Attr(ATTR a)</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:111</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_afe9688b3f58080fe437c0efaf7ab2949"><div class="ttname"><a href="classdoor_1_1Line.html#afe9688b3f58080fe437c0efaf7ab2949">door::Line::updater</a></div><div class="ttdeci">updateFunction updater</div><div class="ttdoc">updateFunction to use when updating.</div><div class="ttdef"><b>Definition:</b> door.h:505</div></div>
+<div class="ttc" id="agetkey_8cpp_html_a5a392181fdf6b261a23c6996b6f65765"><div class="ttname"><a href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">get</a></div><div class="ttdeci">char get(void)</div><div class="ttdoc">get a key from the pushback buffer.</div><div class="ttdef"><b>Definition:</b> getkey.cpp:141</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52ad810ed8e97088a3c987f179dfb88cefc"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52ad810ed8e97088a3c987f179dfb88cefc">door::ATTR::BLINK</a></div><div class="ttdeci">@ BLINK</div><div class="ttdoc">SLOW BLINK.</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19">door::ATTR::BOLD</a></div><div class="ttdeci">@ BOLD</div><div class="ttdoc">BOLD is the same as BRIGHT.</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_a15d3f18b7165f348479344b897b6ed96"><div class="ttname"><a href="classdoor_1_1Door.html#a15d3f18b7165f348479344b897b6ed96">door::Door::log</a></div><div class="ttdeci">ofstream &amp; log(void)</div><div class="ttdoc">Give ofstream handle for logging.</div><div class="ttdef"><b>Definition:</b> door.cpp:507</div></div>
-<div class="ttc" id="aclassdoor_1_1Clrscr_html_a0611278ef387fce25ce1a7771b65096a"><div class="ttname"><a href="classdoor_1_1Clrscr.html#a0611278ef387fce25ce1a7771b65096a">door::Clrscr::Clrscr</a></div><div class="ttdeci">Clrscr(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1114</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_a15d3f18b7165f348479344b897b6ed96"><div class="ttname"><a href="classdoor_1_1Door.html#a15d3f18b7165f348479344b897b6ed96">door::Door::log</a></div><div class="ttdeci">ofstream &amp; log(void)</div><div class="ttdoc">Give ofstream handle for logging.</div><div class="ttdef"><b>Definition:</b> door.cpp:586</div></div>
+<div class="ttc" id="aclassdoor_1_1Clrscr_html_a0611278ef387fce25ce1a7771b65096a"><div class="ttname"><a href="classdoor_1_1Clrscr.html#a0611278ef387fce25ce1a7771b65096a">door::Clrscr::Clrscr</a></div><div class="ttdeci">Clrscr(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1193</div></div>
 <div class="ttc" id="aclassdoor_1_1ColorOutput_html_ab53af885b8b1a296d197866bd4844fb0"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#ab53af885b8b1a296d197866bd4844fb0">door::ColorOutput::c</a></div><div class="ttdeci">ANSIColor c</div><div class="ttdoc">Color to use for this fragment.</div><div class="ttdef"><b>Definition:</b> door.h:285</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_a8f7dcac2dafd0e11d42ab227b7d1a2ba"><div class="ttname"><a href="classdoor_1_1Door.html#a8f7dcac2dafd0e11d42ab227b7d1a2ba">door::Door::Door</a></div><div class="ttdeci">Door(std::string dname, int argc, char *argv[])</div><div class="ttdef"><b>Definition:</b> door.cpp:139</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_a8f7dcac2dafd0e11d42ab227b7d1a2ba"><div class="ttname"><a href="classdoor_1_1Door.html#a8f7dcac2dafd0e11d42ab227b7d1a2ba">door::Door::Door</a></div><div class="ttdeci">Door(std::string dname, int argc, char *argv[])</div><div class="ttdef"><b>Definition:</b> door.cpp:218</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_aa198707d0103967b7a4bc4f502a0ba87"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#aa198707d0103967b7a4bc4f502a0ba87">door::ANSIColor::operator==</a></div><div class="ttdeci">bool operator==(const ANSIColor &amp;c) const</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:137</div></div>
 <div class="ttc" id="aclassdoor_1_1Goto_html_ad7ec5ef329c85fd0be0110f628a9106a"><div class="ttname"><a href="classdoor_1_1Goto.html#ad7ec5ef329c85fd0be0110f628a9106a">door::Goto::x</a></div><div class="ttdeci">int x</div><div class="ttdoc">X-Position.</div><div class="ttdef"><b>Definition:</b> door.h:413</div></div>
-<div class="ttc" id="aclassdoor_1_1Render_html_a9c32f938c06d5d6b87d238ba6072324e"><div class="ttname"><a href="classdoor_1_1Render.html#a9c32f938c06d5d6b87d238ba6072324e">door::Render::append</a></div><div class="ttdeci">void append(ANSIColor color, int len=1)</div><div class="ttdef"><b>Definition:</b> door.cpp:1086</div></div>
+<div class="ttc" id="aclassdoor_1_1Render_html_a9c32f938c06d5d6b87d238ba6072324e"><div class="ttname"><a href="classdoor_1_1Render.html#a9c32f938c06d5d6b87d238ba6072324e">door::Render::append</a></div><div class="ttdeci">void append(ANSIColor color, int len=1)</div><div class="ttdef"><b>Definition:</b> door.cpp:1165</div></div>
 <div class="ttc" id="aclassdoor_1_1Door_html_adf76d445797eb513020a60f786f65767"><div class="ttname"><a href="classdoor_1_1Door.html#adf76d445797eb513020a60f786f65767">door::Door::previous</a></div><div class="ttdeci">ANSIColor previous</div><div class="ttdef"><b>Definition:</b> door.h:244</div></div>
+<div class="ttc" id="anamespacedoor_html_aeade8b521c7f95755fdb166727c2b87c"><div class="ttname"><a href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">door::full_cp437</a></div><div class="ttdeci">bool full_cp437</div><div class="ttdoc">Was full CP437 detected?</div><div class="ttdef"><b>Definition:</b> door.cpp:204</div></div>
+<div class="ttc" id="aclassdoor_1_1Panel_html_acc188acc0dfd6127ca4a51a6508b8c62"><div class="ttname"><a href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">door::Panel::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Panel &amp;p)</div><div class="ttdoc">Output panel to stream.</div><div class="ttdef"><b>Definition:</b> panel.cpp:391</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a344dd8cd533280795b9db82ef0c92749"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a344dd8cd533280795b9db82ef0c92749">door::COLOR::CYAN</a></div><div class="ttdeci">@ CYAN</div><div class="ttdoc">CYAN (6)</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52a1955bdc302911f376074eb9b02e56639"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a1955bdc302911f376074eb9b02e56639">door::ATTR::INVERSE</a></div><div class="ttdeci">@ INVERSE</div><div class="ttdoc">INVERSE is Background on Foreground.</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_aa11de87d84c864dcb1ee26042a28e519"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#aa11de87d84c864dcb1ee26042a28e519">door::ANSIColor::fg</a></div><div class="ttdeci">COLOR fg</div><div class="ttdoc">Foreground color.</div><div class="ttdef"><b>Definition:</b> door.h:133</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_a092b281d63bb6ee0a3bee2ba77d78a47"><div class="ttname"><a href="classdoor_1_1Door.html#a092b281d63bb6ee0a3bee2ba77d78a47">door::Door::sleep_key</a></div><div class="ttdeci">signed int sleep_key(int secs)</div><div class="ttdoc">Waits secs seconds for a keypress.</div><div class="ttdef"><b>Definition:</b> door.cpp:864</div></div>
+<div class="ttc" id="anamespacedoor_html_a5efa4fb96eacd6b90e5cbb0bd985f3fc"><div class="ttname"><a href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">door::cp437toUnicode</a></div><div class="ttdeci">void cp437toUnicode(std::string input, std::string &amp;out)</div><div class="ttdoc">Convert from CP437 to unicode.</div><div class="ttdef"><b>Definition:</b> door.cpp:169</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_a092b281d63bb6ee0a3bee2ba77d78a47"><div class="ttname"><a href="classdoor_1_1Door.html#a092b281d63bb6ee0a3bee2ba77d78a47">door::Door::sleep_key</a></div><div class="ttdeci">signed int sleep_key(int secs)</div><div class="ttdoc">Waits secs seconds for a keypress.</div><div class="ttdef"><b>Definition:</b> door.cpp:943</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_a9413c8c99a7ff96f1374e886946791a5"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#a9413c8c99a7ff96f1374e886946791a5">door::ANSIColor::inverse</a></div><div class="ttdeci">unsigned int inverse</div><div class="ttdoc">inverse</div><div class="ttdef"><b>Definition:</b> door.h:144</div></div>
 <div class="ttc" id="aclassdoor_1_1Render_html_a887fd73649a7e63257cc695e2756bc66"><div class="ttname"><a href="classdoor_1_1Render.html#a887fd73649a7e63257cc695e2756bc66">door::Render::outputs</a></div><div class="ttdeci">std::vector&lt; ColorOutput &gt; outputs</div><div class="ttdoc">Vector of ColorOutput object.</div><div class="ttdef"><b>Definition:</b> door.h:313</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52aca78b38b9fe41e51b331abe6999a1040"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52aca78b38b9fe41e51b331abe6999a1040">door::ATTR::BRIGHT</a></div><div class="ttdeci">@ BRIGHT</div><div class="ttdoc">BRIGHT is the same as BOLD.</div></div>
+<div class="ttc" id="agetkey_8cpp_html_ac317ff25d1fad1066feec2dd66179eec"><div class="ttname"><a href="getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec">tio_default</a></div><div class="ttdeci">struct termios tio_default</div><div class="ttdoc">Original terminal termios defaults.</div><div class="ttdef"><b>Definition:</b> getkey.cpp:30</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a8beaf1f9a1b84524d131a817ad8019ae"><div class="ttname"><a href="classdoor_1_1Line.html#a8beaf1f9a1b84524d131a817ad8019ae">door::Line::setColor</a></div><div class="ttdeci">void setColor(ANSIColor c)</div><div class="ttdef"><b>Definition:</b> lines.cpp:277</div></div>
+<div class="ttc" id="agetkey_8cpp_html_a48210bb765c651a12818ca2551ace8e2"><div class="ttname"><a href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">getkey</a></div><div class="ttdeci">signed int getkey(void)</div><div class="ttdoc">high level getkey</div><div class="ttdef"><b>Definition:</b> getkey.cpp:159</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_ad7f8494e6382aaacfa46d6da77309481"><div class="ttname"><a href="classdoor_1_1Line.html#ad7f8494e6382aaacfa46d6da77309481">door::Line::Line</a></div><div class="ttdeci">Line(const std::string &amp;txt, int width=0)</div><div class="ttdef"><b>Definition:</b> lines.cpp:121</div></div>
-<div class="ttc" id="aclassdoor_1_1NewLine_html_ae6439f66a0444e185cc06dfff1a0f74a"><div class="ttname"><a href="classdoor_1_1NewLine.html#ae6439f66a0444e185cc06dfff1a0f74a">door::NewLine::NewLine</a></div><div class="ttdeci">NewLine(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1148</div></div>
+<div class="ttc" id="aclassdoor_1_1NewLine_html_ae6439f66a0444e185cc06dfff1a0f74a"><div class="ttname"><a href="classdoor_1_1NewLine.html#ae6439f66a0444e185cc06dfff1a0f74a">door::NewLine::NewLine</a></div><div class="ttdeci">NewLine(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1227</div></div>
 <div class="ttc" id="anamespacedoor_html_ae6c40e2e917f64a9c42d977a88fe18fa"><div class="ttname"><a href="namespacedoor.html#ae6c40e2e917f64a9c42d977a88fe18fa">door::operator&lt;&lt;</a></div><div class="ttdeci">std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const ANSIColor &amp;c)</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:339</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_a5d2d818d1922bcb8b73ccdaf639ca2cd"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#a5d2d818d1922bcb8b73ccdaf639ca2cd">door::ANSIColor::operator!=</a></div><div class="ttdeci">bool operator!=(const ANSIColor &amp;c) const</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:150</div></div>
 <div class="ttc" id="aclassdoor_1_1ColorOutput_html_ae696879b2a42db7a21d698fad19fc918"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#ae696879b2a42db7a21d698fad19fc918">door::ColorOutput::pos</a></div><div class="ttdeci">int pos</div><div class="ttdoc">Starting position of Render.text.</div><div class="ttdef"><b>Definition:</b> door.h:287</div></div>
-<div class="ttc" id="aclassdoor_1_1Goto_html_a21a0915b21cc762dc148f7ba6797229b"><div class="ttname"><a href="classdoor_1_1Goto.html#a21a0915b21cc762dc148f7ba6797229b">door::Goto::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Goto &amp;g)</div><div class="ttdef"><b>Definition:</b> door.cpp:1199</div></div>
+<div class="ttc" id="aclassdoor_1_1Goto_html_a21a0915b21cc762dc148f7ba6797229b"><div class="ttname"><a href="classdoor_1_1Goto.html#a21a0915b21cc762dc148f7ba6797229b">door::Goto::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Goto &amp;g)</div><div class="ttdef"><b>Definition:</b> door.cpp:1278</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366">door::COLOR</a></div><div class="ttdeci">COLOR</div><div class="ttdoc">The colors available under ANSI-BBS.</div><div class="ttdef"><b>Definition:</b> door.h:84</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html"><div class="ttname"><a href="classdoor_1_1ANSIColor.html">door::ANSIColor</a></div><div class="ttdoc">Foreground, Background and Attributes.</div><div class="ttdef"><b>Definition:</b> door.h:131</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_a93bbb3d1bfcec623e46ef47e6ba6b470"><div class="ttname"><a href="classdoor_1_1Door.html#a93bbb3d1bfcec623e46ef47e6ba6b470">door::Door::input_string</a></div><div class="ttdeci">std::string input_string(int max)</div><div class="ttdoc">Input a string of requested max length.</div><div class="ttdef"><b>Definition:</b> door.cpp:913</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_aa807fbcea8d7e92f591d9f459f392232"><div class="ttname"><a href="classdoor_1_1Door.html#aa807fbcea8d7e92f591d9f459f392232">door::Door::get_one_of</a></div><div class="ttdeci">int get_one_of(const char *keys)</div><div class="ttdoc">Get one of these keys.</div><div class="ttdef"><b>Definition:</b> door.cpp:964</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_a93bbb3d1bfcec623e46ef47e6ba6b470"><div class="ttname"><a href="classdoor_1_1Door.html#a93bbb3d1bfcec623e46ef47e6ba6b470">door::Door::input_string</a></div><div class="ttdeci">std::string input_string(int max)</div><div class="ttdoc">Input a string of requested max length.</div><div class="ttdef"><b>Definition:</b> door.cpp:992</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_aa807fbcea8d7e92f591d9f459f392232"><div class="ttname"><a href="classdoor_1_1Door.html#aa807fbcea8d7e92f591d9f459f392232">door::Door::get_one_of</a></div><div class="ttdeci">int get_one_of(const char *keys)</div><div class="ttdoc">Get one of these keys.</div><div class="ttdef"><b>Definition:</b> door.cpp:1043</div></div>
 <div class="ttc" id="aclassdoor_1_1Menu_html"><div class="ttname"><a href="classdoor_1_1Menu.html">door::Menu</a></div><div class="ttdef"><b>Definition:</b> door.h:672</div></div>
-<div class="ttc" id="aclassAnyOption_html"><div class="ttname"><a href="classAnyOption.html">AnyOption</a></div><div class="ttdef"><b>Definition:</b> anyoption.h:35</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a6d12dbae8f1d7f70a32aa1b463bd9f6f"><div class="ttname"><a href="classdoor_1_1Line.html#a6d12dbae8f1d7f70a32aa1b463bd9f6f">door::Line::render</a></div><div class="ttdeci">renderFunction render</div><div class="ttdoc">renderFunction to use when rendering Line.</div><div class="ttdef"><b>Definition:</b> door.h:503</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a9de0e5dd94e861317e74964bed179fa0"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a9de0e5dd94e861317e74964bed179fa0">door::COLOR::GREEN</a></div><div class="ttdeci">@ GREEN</div><div class="ttdoc">GREEN (2)</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366ac634ffea7195608364671ac52ee59a61"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ac634ffea7195608364671ac52ee59a61">door::COLOR::MAGENTA</a></div><div class="ttdeci">@ MAGENTA</div><div class="ttdoc">MAGENTA (5)</div></div>
@@ -659,62 +664,72 @@ $(function() {
 <div class="ttc" id="anamespacedoor_html_ad9c2405adaa0b5168bc53059b3a978c1"><div class="ttname"><a href="namespacedoor.html#ad9c2405adaa0b5168bc53059b3a978c1">door::renderFunction</a></div><div class="ttdeci">std::function&lt; Render(const std::string &amp;)&gt; renderFunction</div><div class="ttdoc">Render output function.</div><div class="ttdef"><b>Definition:</b> door.h:341</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91acc939b66711e314a026eba1532bec367"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91acc939b66711e314a026eba1532bec367">door::BorderStyle::DOUBLE_SINGLE</a></div><div class="ttdeci">@ DOUBLE_SINGLE</div><div class="ttdoc">DOUBLE top SINGLE side (4)</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a3896c3006cac3435613732c29afc60ed"><div class="ttname"><a href="classdoor_1_1Line.html#a3896c3006cac3435613732c29afc60ed">door::Line::color</a></div><div class="ttdeci">ANSIColor color</div><div class="ttdoc">Line color.</div><div class="ttdef"><b>Definition:</b> door.h:496</div></div>
-<div class="ttc" id="aclassdoor_1_1Render_html_a6540ecf2f2f4a3e9eaeb47cc9c7daa00"><div class="ttname"><a href="classdoor_1_1Render.html#a6540ecf2f2f4a3e9eaeb47cc9c7daa00">door::Render::Render</a></div><div class="ttdeci">Render(const std::string txt)</div><div class="ttdef"><b>Definition:</b> door.cpp:1060</div></div>
-<div class="ttc" id="aclassdoor_1_1Panel_html_a69a98249e3f33fd20300aa62120b8561"><div class="ttname"><a href="classdoor_1_1Panel.html#a69a98249e3f33fd20300aa62120b8561">door::Panel::spacer_line</a></div><div class="ttdeci">std::unique_ptr&lt; Line &gt; spacer_line(bool single)</div><div class="ttdoc">Create a spacer line using block drawing characters.</div><div class="ttdef"><b>Definition:</b> panel.cpp:332</div></div>
+<div class="ttc" id="aclassdoor_1_1Render_html_a6540ecf2f2f4a3e9eaeb47cc9c7daa00"><div class="ttname"><a href="classdoor_1_1Render.html#a6540ecf2f2f4a3e9eaeb47cc9c7daa00">door::Render::Render</a></div><div class="ttdeci">Render(const std::string txt)</div><div class="ttdef"><b>Definition:</b> door.cpp:1139</div></div>
+<div class="ttc" id="aclassdoor_1_1Panel_html_a69a98249e3f33fd20300aa62120b8561"><div class="ttname"><a href="classdoor_1_1Panel.html#a69a98249e3f33fd20300aa62120b8561">door::Panel::spacer_line</a></div><div class="ttdeci">std::unique_ptr&lt; Line &gt; spacer_line(bool single)</div><div class="ttdoc">Create a spacer line using block drawing characters.</div><div class="ttdef"><b>Definition:</b> panel.cpp:358</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91ab50339a10e1de285ac99d4c3990b8693"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91ab50339a10e1de285ac99d4c3990b8693">door::BorderStyle::NONE</a></div><div class="ttdeci">@ NONE</div><div class="ttdoc">NONE (0)</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_af0c0998c248520613f87638f02ef48d8"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#af0c0998c248520613f87638f02ef48d8">door::ANSIColor::blink</a></div><div class="ttdeci">unsigned int blink</div><div class="ttdoc">blink slow blinking text</div><div class="ttdef"><b>Definition:</b> door.h:142</div></div>
-<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1142</div></div>
+<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1221</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a9487858a23dc53c987e6504e501957e6"><div class="ttname"><a href="classdoor_1_1Line.html#a9487858a23dc53c987e6504e501957e6">door::Line::setPadding</a></div><div class="ttdeci">void setPadding(std::string &amp;padstring, ANSIColor padColor)</div><div class="ttdef"><b>Definition:</b> lines.cpp:256</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_aae86353583a08ca1d9fa4f7bb366a805"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#aae86353583a08ca1d9fa4f7bb366a805">door::ANSIColor::reset</a></div><div class="ttdeci">unsigned int reset</div><div class="ttdoc">reset flag / always send color and attributes</div><div class="ttdef"><b>Definition:</b> door.h:138</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html"><div class="ttname"><a href="classdoor_1_1Line.html">door::Line</a></div><div class="ttdoc">Text and ANSIColor.</div><div class="ttdef"><b>Definition:</b> door.h:488</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a702464834d9546f67f1952a62e4038f2"><div class="ttname"><a href="classdoor_1_1Line.html#a702464834d9546f67f1952a62e4038f2">door::Line::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Line &amp;l)</div><div class="ttdef"><b>Definition:</b> lines.cpp:354</div></div>
 <div class="ttc" id="aclassdoor_1_1Render_html_ada0caea3ba255104474a2f0bfa94d6d2"><div class="ttname"><a href="classdoor_1_1Render.html#ada0caea3ba255104474a2f0bfa94d6d2">door::Render::text</a></div><div class="ttdeci">const std::string text</div><div class="ttdoc">Complete text to be rendered.</div><div class="ttdef"><b>Definition:</b> door.h:311</div></div>
-<div class="ttc" id="aclassdoor_1_1Clrscr_html_a1cc056058e52bb52343b17636e6fa5e0"><div class="ttname"><a href="classdoor_1_1Clrscr.html#a1cc056058e52bb52343b17636e6fa5e0">door::Clrscr::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Clrscr &amp;clr)</div><div class="ttdef"><b>Definition:</b> door.cpp:1126</div></div>
+<div class="ttc" id="aclassdoor_1_1Clrscr_html_a1cc056058e52bb52343b17636e6fa5e0"><div class="ttname"><a href="classdoor_1_1Clrscr.html#a1cc056058e52bb52343b17636e6fa5e0">door::Clrscr::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Clrscr &amp;clr)</div><div class="ttdef"><b>Definition:</b> door.cpp:1205</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366aa2d9547b5d3dd9f05984475f7c926da0"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366aa2d9547b5d3dd9f05984475f7c926da0">door::COLOR::RED</a></div><div class="ttdeci">@ RED</div><div class="ttdoc">RED (1)</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_a34666d486c5a22728e70ca8b43cd644e"><div class="ttname"><a href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">door::Menu::Menu</a></div><div class="ttdeci">Menu(int x, int y, int width)</div><div class="ttdoc">Construct a new Menu object.</div><div class="ttdef"><b>Definition:</b> panel.cpp:544</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_a34666d486c5a22728e70ca8b43cd644e"><div class="ttname"><a href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">door::Menu::Menu</a></div><div class="ttdeci">Menu(int x, int y, int width)</div><div class="ttdoc">Construct a new Menu object.</div><div class="ttdef"><b>Definition:</b> panel.cpp:580</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52ab5859d8721cfdc0312b2838b9c985bc1"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52ab5859d8721cfdc0312b2838b9c985bc1">door::ATTR::RESET</a></div><div class="ttdeci">@ RESET</div><div class="ttdoc">RESET forces all attributes (and Colors) to be sent.</div></div>
+<div class="ttc" id="aclassdoor_1_1Screen_html_aa33539627ee3d8a5c4b09ee9401711e0"><div class="ttname"><a href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">door::Screen::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const Screen &amp;s)</div><div class="ttdoc">Outputs screen to stream.</div><div class="ttdef"><b>Definition:</b> panel.cpp:926</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91afd3e4ece78a7d422280d5ed379482229"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91afd3e4ece78a7d422280d5ed379482229">door::BorderStyle::DOUBLE</a></div><div class="ttdeci">@ DOUBLE</div><div class="ttdoc">DOUBLE (2)</div></div>
+<div class="ttc" id="agetkey_8cpp_html_abbfe4f963938c288581211cdee6cb818"><div class="ttname"><a href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">getch</a></div><div class="ttdeci">signed int getch(void)</div><div class="ttdoc">low level getch key read</div><div class="ttdef"><b>Definition:</b> getkey.cpp:79</div></div>
 <div class="ttc" id="aclassdoor_1_1Panel_html_ac7db32ec19257344af24bd80536c76d5"><div class="ttname"><a href="classdoor_1_1Panel.html#ac7db32ec19257344af24bd80536c76d5">door::Panel::lines</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Line &gt; &gt; lines</div><div class="ttdef"><b>Definition:</b> door.h:598</div></div>
 <div class="ttc" id="anamespacedoor_html_adb2697f83f8ce701366e05ed72c97d6e"><div class="ttname"><a href="namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e">door::updateFunction</a></div><div class="ttdeci">std::function&lt; std::string(void)&gt; updateFunction</div><div class="ttdef"><b>Definition:</b> door.h:360</div></div>
-<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1170</div></div>
-<div class="ttc" id="aclassdoor_1_1Panel_html_a57234d5f1d891ed8f9ea9c8c9be7aed4"><div class="ttname"><a href="classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4">door::Panel::update</a></div><div class="ttdeci">bool update(Door &amp;d)</div><div class="ttdoc">Updates a panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:248</div></div>
+<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1249</div></div>
+<div class="ttc" id="aclassdoor_1_1Panel_html_a57234d5f1d891ed8f9ea9c8c9be7aed4"><div class="ttname"><a href="classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4">door::Panel::update</a></div><div class="ttdeci">bool update(Door &amp;d)</div><div class="ttdoc">Updates a panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:274</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91a6dfbebc428d74ec8a1552722ceccda3a"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91a6dfbebc428d74ec8a1552722ceccda3a">door::BorderStyle::SINGLE_DOUBLE</a></div><div class="ttdeci">@ SINGLE_DOUBLE</div><div class="ttdoc">SINGLE top DOUBLE side (3)</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a548cd373dbd7ad89eab9acce79d324a2"><div class="ttname"><a href="classdoor_1_1Line.html#a548cd373dbd7ad89eab9acce79d324a2">door::Line::hasRender</a></div><div class="ttdeci">bool hasRender(void)</div><div class="ttdef"><b>Definition:</b> lines.cpp:188</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_a24c97bd59b2a17cca37512dea5d21505"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#a24c97bd59b2a17cca37512dea5d21505">door::ANSIColor::output</a></div><div class="ttdeci">std::string output(void) const</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:180</div></div>
-<div class="ttc" id="anamespacedoor_html_a3274dff22ddb19a3e429a703ee6f3e57"><div class="ttname"><a href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">door::rBlueYellow</a></div><div class="ttdeci">renderFunction rBlueYellow</div><div class="ttdoc">BlueYellow Render example function.</div><div class="ttdef"><b>Definition:</b> door.cpp:1227</div></div>
+<div class="ttc" id="anamespacedoor_html_a3274dff22ddb19a3e429a703ee6f3e57"><div class="ttname"><a href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">door::rBlueYellow</a></div><div class="ttdeci">renderFunction rBlueYellow</div><div class="ttdoc">BlueYellow Render example function.</div><div class="ttdef"><b>Definition:</b> door.cpp:1312</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a2008c67026c41f33bc2c8cb5f9787f3b"><div class="ttname"><a href="classdoor_1_1Line.html#a2008c67026c41f33bc2c8cb5f9787f3b">door::Line::text</a></div><div class="ttdeci">std::string text</div><div class="ttdoc">Text of the line.</div><div class="ttdef"><b>Definition:</b> door.h:491</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e">door::COLOR::YELLOW</a></div><div class="ttdeci">@ YELLOW</div><div class="ttdoc">YELLOW (3)</div></div>
+<div class="ttc" id="agetkey_8cpp_html_a92dfe6e9243e862063a0c3869f784557"><div class="ttname"><a href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a></div><div class="ttdeci">char buffer[10]</div><div class="ttdoc">pushback buffer to store keys we're not ready for yet.</div><div class="ttdef"><b>Definition:</b> getkey.cpp:116</div></div>
+<div class="ttc" id="agetkey_8cpp_html_aaa0e5be04b9ee83acfdd443145061f47"><div class="ttname"><a href="getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47">bpos</a></div><div class="ttdeci">int bpos</div><div class="ttdoc">pushback buffer position</div><div class="ttdef"><b>Definition:</b> getkey.cpp:120</div></div>
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52">door::ATTR</a></div><div class="ttdeci">ATTR</div><div class="ttdoc">ANSI-BBS text attributes.</div><div class="ttdef"><b>Definition:</b> door.h:108</div></div>
 <div class="ttc" id="aclassdoor_1_1Panel_html_aa5ad389766a5e5c22588dae37cce1d1c"><div class="ttname"><a href="classdoor_1_1Panel.html#aa5ad389766a5e5c22588dae37cce1d1c">door::Panel::set</a></div><div class="ttdeci">void set(int x, int y)</div><div class="ttdoc">Set the panels X and Y screen position.</div><div class="ttdef"><b>Definition:</b> panel.cpp:80</div></div>
 <div class="ttc" id="anamespacedoor_html_ae3a70989c43f6cb3522308af748b4481"><div class="ttname"><a href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">door::reset</a></div><div class="ttdeci">ANSIColor reset(ATTR::RESET)</div><div class="ttdoc">reset colors to normal</div><div class="ttdef"><b>Definition:</b> door.h:400</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_abfa527e4328dc5168256da2ba21f5a50"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#abfa527e4328dc5168256da2ba21f5a50">door::ANSIColor::ANSIColor</a></div><div class="ttdeci">ANSIColor()</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:16</div></div>
+<div class="ttc" id="agetkey_8cpp_html_a37118b1ee911d1447a495aa49f2926a5"><div class="ttname"><a href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">unget</a></div><div class="ttdeci">void unget(char c)</div><div class="ttdoc">ungets (pushes key back)</div><div class="ttdef"><b>Definition:</b> getkey.cpp:129</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d">door::COLOR::WHITE</a></div><div class="ttdeci">@ WHITE</div><div class="ttdoc">WHITE (7)</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a00ec1edb246d442c4dc7ac2dc5876624"><div class="ttname"><a href="classdoor_1_1Line.html#a00ec1edb246d442c4dc7ac2dc5876624">door::Line::update</a></div><div class="ttdeci">bool update(void)</div><div class="ttdef"><b>Definition:</b> lines.cpp:319</div></div>
-<div class="ttc" id="aclassdoor_1_1Panel_html_ae5630294b780b57aba721969762f50eb"><div class="ttname"><a href="classdoor_1_1Panel.html#ae5630294b780b57aba721969762f50eb">door::Panel::lineSetBack</a></div><div class="ttdeci">void lineSetBack(ANSIColor back)</div><div class="ttdoc">Set background of all lines in the panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:319</div></div>
+<div class="ttc" id="aclassdoor_1_1Panel_html_ae5630294b780b57aba721969762f50eb"><div class="ttname"><a href="classdoor_1_1Panel.html#ae5630294b780b57aba721969762f50eb">door::Panel::lineSetBack</a></div><div class="ttdeci">void lineSetBack(ANSIColor back)</div><div class="ttdoc">Set background of all lines in the panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:345</div></div>
+<div class="ttc" id="aclassdoor_1_1Screen_html_a9f93b83a6c0ebab3972dd7340c88675a"><div class="ttname"><a href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">door::Screen::panels</a></div><div class="ttdeci">std::vector&lt; std::unique_ptr&lt; Panel &gt; &gt; panels</div><div class="ttdoc">vector of panels.</div><div class="ttdef"><b>Definition:</b> door.h:715</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a3fab9317af5f86949eb0d6faf1f04653"><div class="ttname"><a href="classdoor_1_1Line.html#a3fab9317af5f86949eb0d6faf1f04653">door::Line::padding</a></div><div class="ttdeci">std::string padding</div><div class="ttdoc">Padding characters.</div><div class="ttdef"><b>Definition:</b> door.h:498</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91a0679273e201afd0bf57af3961f8a23b8"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91a0679273e201afd0bf57af3961f8a23b8">door::BorderStyle::SINGLE</a></div><div class="ttdeci">@ SINGLE</div><div class="ttdoc">SINGLE (1)</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_aad67bdb165987c4e3133a0f12f2b2b33"><div class="ttname"><a href="classdoor_1_1Door.html#aad67bdb165987c4e3133a0f12f2b2b33">door::Door::xsputn</a></div><div class="ttdeci">std::streamsize xsputn(const char *s, std::streamsize n) override</div><div class="ttdef"><b>Definition:</b> door.cpp:992</div></div>
+<div class="ttc" id="anamespacedoor_html_aa6a7c86274470fd22e45676ba6eebb36"><div class="ttname"><a href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">door::SaveCursor</a></div><div class="ttdeci">const char SaveCursor[]</div><div class="ttdoc">ANSI Save Cursor position command.</div><div class="ttdef"><b>Definition:</b> door.cpp:1303</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_aad67bdb165987c4e3133a0f12f2b2b33"><div class="ttname"><a href="classdoor_1_1Door.html#aad67bdb165987c4e3133a0f12f2b2b33">door::Door::xsputn</a></div><div class="ttdeci">std::streamsize xsputn(const char *s, std::streamsize n) override</div><div class="ttdef"><b>Definition:</b> door.cpp:1071</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91">door::BorderStyle</a></div><div class="ttdeci">BorderStyle</div><div class="ttdef"><b>Definition:</b> door.h:570</div></div>
+<div class="ttc" id="anamespacedoor_html_a1626abff63f7a1b9dc696969c860283b"><div class="ttname"><a href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">door::unicode</a></div><div class="ttdeci">bool unicode</div><div class="ttdoc">Was unicode detected?</div><div class="ttdef"><b>Definition:</b> door.cpp:196</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_ad658a59d371bc8582411ada281c50822"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#ad658a59d371bc8582411ada281c50822">door::ANSIColor::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const ANSIColor &amp;c)</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:339</div></div>
 <div class="ttc" id="anamespacedoor_html"><div class="ttname"><a href="namespacedoor.html">door</a></div><div class="ttdoc">The BBS door project. This is an attempt at writing a C++ BBS door toolkit.</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:9</div></div>
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91a56f031dd03707d695f76c63ddbf40bd7"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91a56f031dd03707d695f76c63ddbf40bd7">door::BorderStyle::BLANK</a></div><div class="ttdeci">@ BLANK</div><div class="ttdoc">BLANK (5)</div></div>
-<div class="ttc" id="aclassdoor_1_1Door_html_a264d9e4eb0d6eb0e03f60520bcb11dd4"><div class="ttname"><a href="classdoor_1_1Door.html#a264d9e4eb0d6eb0e03f60520bcb11dd4">door::Door::overflow</a></div><div class="ttdeci">int overflow(int c) override</div><div class="ttdef"><b>Definition:</b> door.cpp:1019</div></div>
+<div class="ttc" id="aclassdoor_1_1Door_html_a264d9e4eb0d6eb0e03f60520bcb11dd4"><div class="ttname"><a href="classdoor_1_1Door.html#a264d9e4eb0d6eb0e03f60520bcb11dd4">door::Door::overflow</a></div><div class="ttdeci">int overflow(int c) override</div><div class="ttdef"><b>Definition:</b> door.cpp:1098</div></div>
 <div class="ttc" id="aclassdoor_1_1ColorOutput_html_ab82c8458bcfa264fbfd7b7b6f367864d"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#ab82c8458bcfa264fbfd7b7b6f367864d">door::ColorOutput::len</a></div><div class="ttdeci">int len</div><div class="ttdoc">Length.</div><div class="ttdef"><b>Definition:</b> door.h:289</div></div>
 <div class="ttc" id="anamespacedoor_html_af025775fb0b68d66dc42ee3299444fb7"><div class="ttname"><a href="namespacedoor.html#af025775fb0b68d66dc42ee3299444fb7">door::Justify</a></div><div class="ttdeci">Justify</div><div class="ttdef"><b>Definition:</b> door.h:403</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_a06da9157cc5984510153a6b93bf2e71e"><div class="ttname"><a href="classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e">door::Menu::choose</a></div><div class="ttdeci">int choose(Door &amp;door)</div><div class="ttdef"><b>Definition:</b> panel.cpp:715</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:670</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_a06da9157cc5984510153a6b93bf2e71e"><div class="ttname"><a href="classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e">door::Menu::choose</a></div><div class="ttdeci">int choose(Door &amp;door)</div><div class="ttdef"><b>Definition:</b> panel.cpp:758</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:713</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f">door::COLOR::BLUE</a></div><div class="ttdeci">@ BLUE</div><div class="ttdoc">BLUE (4)</div></div>
 <div class="ttc" id="aclassdoor_1_1Clrscr_html"><div class="ttname"><a href="classdoor_1_1Clrscr.html">door::Clrscr</a></div><div class="ttdoc">Clear the screen.</div><div class="ttdef"><b>Definition:</b> door.h:367</div></div>
-<div class="ttc" id="aclassdoor_1_1ColorOutput_html_a37a1ffba5df591c2e68d4a491c471499"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#a37a1ffba5df591c2e68d4a491c471499">door::ColorOutput::reset</a></div><div class="ttdeci">void reset(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1047</div></div>
+<div class="ttc" id="anamespacedoor_html_ac39a1dfdb8dec210d28133625f860bc1"><div class="ttname"><a href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">door::debug_capture</a></div><div class="ttdeci">bool debug_capture</div><div class="ttdoc">Capture the output for debugging.</div><div class="ttdef"><b>Definition:</b> door.cpp:210</div></div>
+<div class="ttc" id="aclassdoor_1_1ColorOutput_html_a37a1ffba5df591c2e68d4a491c471499"><div class="ttname"><a href="classdoor_1_1ColorOutput.html#a37a1ffba5df591c2e68d4a491c471499">door::ColorOutput::reset</a></div><div class="ttdeci">void reset(void)</div><div class="ttdef"><b>Definition:</b> door.cpp:1126</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_ade7213fff53121cefba77d4f8a187a64"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#ade7213fff53121cefba77d4f8a187a64">door::ANSIColor::bg</a></div><div class="ttdeci">COLOR bg</div><div class="ttdoc">Background color.</div><div class="ttdef"><b>Definition:</b> door.h:135</div></div>
 <div class="ttc" id="aclassdoor_1_1Screen_html"><div class="ttname"><a href="classdoor_1_1Screen.html">door::Screen</a></div><div class="ttdef"><b>Definition:</b> door.h:709</div></div>
-<div class="ttc" id="aclassdoor_1_1Goto_html_a099828631625d5b66bb8789510d849d7"><div class="ttname"><a href="classdoor_1_1Goto.html#a099828631625d5b66bb8789510d849d7">door::Goto::Goto</a></div><div class="ttdeci">Goto(int xpos, int ypos)</div><div class="ttdef"><b>Definition:</b> door.cpp:1178</div></div>
+<div class="ttc" id="aclassdoor_1_1Goto_html_a099828631625d5b66bb8789510d849d7"><div class="ttname"><a href="classdoor_1_1Goto.html#a099828631625d5b66bb8789510d849d7">door::Goto::Goto</a></div><div class="ttdeci">Goto(int xpos, int ypos)</div><div class="ttdef"><b>Definition:</b> door.cpp:1257</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a3e7ab2ba2c01dcb323dcfefbdad71784"><div class="ttname"><a href="classdoor_1_1Line.html#a3e7ab2ba2c01dcb323dcfefbdad71784">door::Line::setText</a></div><div class="ttdeci">void setText(std::string &amp;txt)</div><div class="ttdef"><b>Definition:</b> lines.cpp:243</div></div>
+<div class="ttc" id="anamespacedoor_html_a1ae3caab423b38b35e887d79b5ac1811"><div class="ttname"><a href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">door::RestoreCursor</a></div><div class="ttdeci">const char RestoreCursor[]</div><div class="ttdoc">ANSI Restore Cursor position command.</div><div class="ttdef"><b>Definition:</b> door.cpp:1307</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a08d0012388564e95c3b4a7407cf04965"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a08d0012388564e95c3b4a7407cf04965">door::COLOR::BLACK</a></div><div class="ttdeci">@ BLACK</div><div class="ttdoc">BLACK (0)</div></div>
 <div class="ttc" id="aclassdoor_1_1Render_html"><div class="ttname"><a href="classdoor_1_1Render.html">door::Render</a></div><div class="ttdoc">Rendering a string with ANSIColor.</div><div class="ttdef"><b>Definition:</b> door.h:307</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_ab9603154e50c33245f30dbc5c60bd5c8"><div class="ttname"><a href="classdoor_1_1Line.html#ab9603154e50c33245f30dbc5c60bd5c8">door::Line::hasColor</a></div><div class="ttdeci">bool hasColor</div><div class="ttdoc">Do we have color?</div><div class="ttdef"><b>Definition:</b> door.h:494</div></div>
 <div class="ttc" id="aclassdoor_1_1Panel_html"><div class="ttname"><a href="classdoor_1_1Panel.html">door::Panel</a></div><div class="ttdef"><b>Definition:</b> door.h:585</div></div>
-<div class="ttc" id="aclassdoor_1_1NewLine_html_afe2e2b066c6b919f9beb22fa6b9f362f"><div class="ttname"><a href="classdoor_1_1NewLine.html#afe2e2b066c6b919f9beb22fa6b9f362f">door::NewLine::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const NewLine &amp;nl)</div><div class="ttdef"><b>Definition:</b> door.cpp:1156</div></div>
+<div class="ttc" id="aclassdoor_1_1NewLine_html_afe2e2b066c6b919f9beb22fa6b9f362f"><div class="ttname"><a href="classdoor_1_1NewLine.html#afe2e2b066c6b919f9beb22fa6b9f362f">door::NewLine::operator&lt;&lt;</a></div><div class="ttdeci">friend std::ostream &amp; operator&lt;&lt;(std::ostream &amp;os, const NewLine &amp;nl)</div><div class="ttdef"><b>Definition:</b> door.cpp:1235</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html_a68f6b1bfdaab2ed72f2a13810b166049"><div class="ttname"><a href="classdoor_1_1Line.html#a68f6b1bfdaab2ed72f2a13810b166049">door::Line::setUpdater</a></div><div class="ttdeci">void setUpdater(updateFunction uf)</div><div class="ttdef"><b>Definition:</b> lines.cpp:298</div></div>
 <div class="ttc" id="aclassdoor_1_1ColorOutput_html"><div class="ttname"><a href="classdoor_1_1ColorOutput.html">door::ColorOutput</a></div><div class="ttdoc">This holds an ANSIColor and text position + length.</div><div class="ttdef"><b>Definition:</b> door.h:279</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html_a0d990141b78cb8264de9cab06dc1e8cf"><div class="ttname"><a href="classdoor_1_1ANSIColor.html#a0d990141b78cb8264de9cab06dc1e8cf">door::ANSIColor::bold</a></div><div class="ttdeci">unsigned int bold</div><div class="ttdoc">bold / bright flag</div><div class="ttdef"><b>Definition:</b> door.h:140</div></div>

+ 6 - 7
files.html

@@ -68,13 +68,12 @@ $(function() {
 <div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
 <table class="directory">
 <tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="ansicolor_8cpp.html" target="_self">ansicolor.cpp</a></td><td class="desc">ANSIColor </td></tr>
-<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="anyoption_8h_source.html"><span class="icondoc"></span></a><b>anyoption.h</b></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="door_8cpp.html" target="_self">door.cpp</a></td><td class="desc">Door </td></tr>
-<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="door_8h_source.html"><span class="icondoc"></span></a><b>door.h</b></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="getkey_8cpp.html" target="_self">getkey.cpp</a></td><td class="desc">Key and door input routines </td></tr>
-<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="lines_8cpp.html" target="_self">lines.cpp</a></td><td class="desc">Line </td></tr>
-<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="panel_8cpp.html" target="_self">panel.cpp</a></td><td class="desc">Panels and Menus </td></tr>
-<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="utf8_8h_source.html"><span class="icondoc"></span></a><b>utf8.h</b></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="door_8cpp.html" target="_self">door.cpp</a></td><td class="desc">Door </td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="door_8h_source.html"><span class="icondoc"></span></a><b>door.h</b></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="getkey_8cpp.html" target="_self">getkey.cpp</a></td><td class="desc">Key and door input routines </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="lines_8cpp.html" target="_self">lines.cpp</a></td><td class="desc">Line </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icondoc"></span><a class="el" href="panel_8cpp.html" target="_self">panel.cpp</a></td><td class="desc">Panels and Menus </td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><a href="utf8_8h_source.html"><span class="icondoc"></span></a><b>utf8.h</b></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 11 - 0
functions.html

@@ -114,6 +114,9 @@ $(function() {
 <li>ColorOutput()
 : <a class="el" href="classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b">door::ColorOutput</a>
 </li>
+<li>convert()
+: <a class="el" href="classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc">door::IConv</a>
+</li>
 </ul>
 
 
@@ -155,6 +158,9 @@ $(function() {
 
 
 <h3><a id="index_i"></a>- i -</h3><ul>
+<li>IConv()
+: <a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279">door::IConv</a>
+</li>
 <li>input_string()
 : <a class="el" href="classdoor_1_1Door.html#a93bbb3d1bfcec623e46ef47e6ba6b470">door::Door</a>
 </li>
@@ -219,6 +225,8 @@ $(function() {
 , <a class="el" href="classdoor_1_1Goto.html#a21a0915b21cc762dc148f7ba6797229b">door::Goto</a>
 , <a class="el" href="classdoor_1_1Line.html#a702464834d9546f67f1952a62e4038f2">door::Line</a>
 , <a class="el" href="classdoor_1_1NewLine.html#afe2e2b066c6b919f9beb22fa6b9f362f">door::NewLine</a>
+, <a class="el" href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">door::Panel</a>
+, <a class="el" href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">door::Screen</a>
 </li>
 <li>operator==()
 : <a class="el" href="classdoor_1_1ANSIColor.html#aa198707d0103967b7a4bc4f502a0ba87">door::ANSIColor</a>
@@ -243,6 +251,9 @@ $(function() {
 <li>paddingColor
 : <a class="el" href="classdoor_1_1Line.html#a5b5d31a50cce6b5aa9b9e15647bfeddc">door::Line</a>
 </li>
+<li>panels
+: <a class="el" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">door::Screen</a>
+</li>
 <li>pos
 : <a class="el" href="classdoor_1_1ColorOutput.html#ae696879b2a42db7a21d698fad19fc918">door::ColorOutput</a>
 </li>

+ 7 - 1
functions_func.html

@@ -89,6 +89,9 @@ $(function() {
 <li>ColorOutput()
 : <a class="el" href="classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b">door::ColorOutput</a>
 </li>
+<li>convert()
+: <a class="el" href="classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc">door::IConv</a>
+</li>
 </ul>
 
 
@@ -124,6 +127,9 @@ $(function() {
 
 
 <h3><a id="index_i"></a>- i -</h3><ul>
+<li>IConv()
+: <a class="el" href="classdoor_1_1IConv.html#aa201b347d3982a6b96fc66a9edb36279">door::IConv</a>
+</li>
 <li>input_string()
 : <a class="el" href="classdoor_1_1Door.html#a93bbb3d1bfcec623e46ef47e6ba6b470">door::Door</a>
 </li>
@@ -151,7 +157,7 @@ $(function() {
 : <a class="el" href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu</a>
 </li>
 <li>Menu()
-: <a class="el" href="classdoor_1_1Menu.html#a34666d486c5a22728e70ca8b43cd644e">door::Menu</a>
+: <a class="el" href="classdoor_1_1Menu.html#a97ce6dd2340f2fa4d36647afc19619cd">door::Menu</a>
 </li>
 </ul>
 

+ 2 - 0
functions_rela.html

@@ -68,6 +68,8 @@ $(function() {
 , <a class="el" href="classdoor_1_1Goto.html#a21a0915b21cc762dc148f7ba6797229b">door::Goto</a>
 , <a class="el" href="classdoor_1_1Line.html#a702464834d9546f67f1952a62e4038f2">door::Line</a>
 , <a class="el" href="classdoor_1_1NewLine.html#afe2e2b066c6b919f9beb22fa6b9f362f">door::NewLine</a>
+, <a class="el" href="classdoor_1_1Panel.html#acc188acc0dfd6127ca4a51a6508b8c62">door::Panel</a>
+, <a class="el" href="classdoor_1_1Screen.html#aa33539627ee3d8a5c4b09ee9401711e0">door::Screen</a>
 </li>
 </ul>
 </div><!-- contents -->

+ 62 - 1
functions_vars.html

@@ -61,7 +61,9 @@ $(function() {
 </div>
 
 <div class="contents">
-&#160;<ul>
+&#160;
+
+<h3><a id="index_b"></a>- b -</h3><ul>
 <li>bg
 : <a class="el" href="classdoor_1_1ANSIColor.html#ade7213fff53121cefba77d4f8a187a64">door::ANSIColor</a>
 </li>
@@ -77,57 +79,104 @@ $(function() {
 <li>br
 : <a class="el" href="structdoor_1_1box__styles.html#a1ac4103c69f98b408b295533afecd320">door::box_styles</a>
 </li>
+</ul>
+
+
+<h3><a id="index_c"></a>- c -</h3><ul>
 <li>c
 : <a class="el" href="classdoor_1_1ColorOutput.html#ab53af885b8b1a296d197866bd4844fb0">door::ColorOutput</a>
 </li>
 <li>color
 : <a class="el" href="classdoor_1_1Line.html#a3896c3006cac3435613732c29afc60ed">door::Line</a>
 </li>
+</ul>
+
+
+<h3><a id="index_f"></a>- f -</h3><ul>
 <li>fg
 : <a class="el" href="classdoor_1_1ANSIColor.html#aa11de87d84c864dcb1ee26042a28e519">door::ANSIColor</a>
 </li>
+</ul>
+
+
+<h3><a id="index_h"></a>- h -</h3><ul>
 <li>hasColor
 : <a class="el" href="classdoor_1_1Line.html#ab9603154e50c33245f30dbc5c60bd5c8">door::Line</a>
 </li>
+</ul>
+
+
+<h3><a id="index_i"></a>- i -</h3><ul>
 <li>inverse
 : <a class="el" href="classdoor_1_1ANSIColor.html#a9413c8c99a7ff96f1374e886946791a5">door::ANSIColor</a>
 </li>
+</ul>
+
+
+<h3><a id="index_l"></a>- l -</h3><ul>
 <li>len
 : <a class="el" href="classdoor_1_1ColorOutput.html#ab82c8458bcfa264fbfd7b7b6f367864d">door::ColorOutput</a>
 </li>
 <li>lines
 : <a class="el" href="classdoor_1_1Panel.html#ac7db32ec19257344af24bd80536c76d5">door::Panel</a>
 </li>
+</ul>
+
+
+<h3><a id="index_m"></a>- m -</h3><ul>
 <li>ml
 : <a class="el" href="structdoor_1_1box__styles.html#acc2aadc7972404de7d5fe1e12684f17a">door::box_styles</a>
 </li>
 <li>mr
 : <a class="el" href="structdoor_1_1box__styles.html#a94ca06e14f6297e62fbc24664f9576ee">door::box_styles</a>
 </li>
+</ul>
+
+
+<h3><a id="index_o"></a>- o -</h3><ul>
 <li>outputs
 : <a class="el" href="classdoor_1_1Render.html#a887fd73649a7e63257cc695e2756bc66">door::Render</a>
 </li>
+</ul>
+
+
+<h3><a id="index_p"></a>- p -</h3><ul>
 <li>padding
 : <a class="el" href="classdoor_1_1Line.html#a3fab9317af5f86949eb0d6faf1f04653">door::Line</a>
 </li>
 <li>paddingColor
 : <a class="el" href="classdoor_1_1Line.html#a5b5d31a50cce6b5aa9b9e15647bfeddc">door::Line</a>
 </li>
+<li>panels
+: <a class="el" href="classdoor_1_1Screen.html#a9f93b83a6c0ebab3972dd7340c88675a">door::Screen</a>
+</li>
 <li>pos
 : <a class="el" href="classdoor_1_1ColorOutput.html#ae696879b2a42db7a21d698fad19fc918">door::ColorOutput</a>
 </li>
 <li>previous
 : <a class="el" href="classdoor_1_1Door.html#adf76d445797eb513020a60f786f65767">door::Door</a>
 </li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
 <li>render
 : <a class="el" href="classdoor_1_1Line.html#a6d12dbae8f1d7f70a32aa1b463bd9f6f">door::Line</a>
 </li>
 <li>reset
 : <a class="el" href="classdoor_1_1ANSIColor.html#aae86353583a08ca1d9fa4f7bb366a805">door::ANSIColor</a>
 </li>
+</ul>
+
+
+<h3><a id="index_s"></a>- s -</h3><ul>
 <li>side
 : <a class="el" href="structdoor_1_1box__styles.html#a6460a57a2a209669517babb4ab2f641f">door::box_styles</a>
 </li>
+</ul>
+
+
+<h3><a id="index_t"></a>- t -</h3><ul>
 <li>text
 : <a class="el" href="classdoor_1_1Line.html#a2008c67026c41f33bc2c8cb5f9787f3b">door::Line</a>
 , <a class="el" href="classdoor_1_1Render.html#ada0caea3ba255104474a2f0bfa94d6d2">door::Render</a>
@@ -141,12 +190,24 @@ $(function() {
 <li>tr
 : <a class="el" href="structdoor_1_1box__styles.html#af444f493abe3213724e3ee839871266f">door::box_styles</a>
 </li>
+</ul>
+
+
+<h3><a id="index_u"></a>- u -</h3><ul>
 <li>updater
 : <a class="el" href="classdoor_1_1Line.html#afe9688b3f58080fe437c0efaf7ab2949">door::Line</a>
 </li>
+</ul>
+
+
+<h3><a id="index_x"></a>- x -</h3><ul>
 <li>x
 : <a class="el" href="classdoor_1_1Goto.html#ad7ec5ef329c85fd0be0110f628a9106a">door::Goto</a>
 </li>
+</ul>
+
+
+<h3><a id="index_y"></a>- y -</h3><ul>
 <li>y
 : <a class="el" href="classdoor_1_1Goto.html#a2ef887a839d1542dc2b7bbcbc4cd0477">door::Goto</a>
 </li>

+ 167 - 39
getkey_8cpp.html

@@ -83,73 +83,201 @@ Include dependency graph for getkey.cpp:</div>
 <div class="dyncontent">
 <div class="center"><img src="getkey_8cpp__incl.png" border="0" usemap="#getkey_8cpp" alt=""/></div>
 <map name="getkey_8cpp" id="getkey_8cpp">
-<area shape="rect" title="Key and door input routines." alt="" coords="795,5,886,32"/>
-<area shape="rect" title=" " alt="" coords="1019,229,1099,256"/>
-<area shape="rect" title=" " alt="" coords="5,155,89,181"/>
-<area shape="rect" title=" " alt="" coords="114,155,189,181"/>
-<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="540,80,603,107"/>
-<area shape="rect" title=" " alt="" coords="1148,80,1221,107"/>
-<area shape="rect" title=" " alt="" coords="1245,80,1316,107"/>
-<area shape="rect" href="anyoption_8h_source.html" title=" " alt="" coords="737,155,835,181"/>
-<area shape="rect" title=" " alt="" coords="475,229,548,256"/>
-<area shape="rect" title=" " alt="" coords="451,155,518,181"/>
-<area shape="rect" title=" " alt="" coords="542,155,601,181"/>
-<area shape="rect" title=" " alt="" coords="625,155,712,181"/>
-<area shape="rect" title=" " alt="" coords="859,155,921,181"/>
-<area shape="rect" title=" " alt="" coords="945,155,1022,181"/>
-<area shape="rect" title=" " alt="" coords="213,155,289,181"/>
-<area shape="rect" title=" " alt="" coords="313,155,376,181"/>
-<area shape="rect" title=" " alt="" coords="753,229,819,256"/>
-<area shape="rect" title=" " alt="" coords="844,229,915,256"/>
-<area shape="rect" title=" " alt="" coords="670,229,729,256"/>
+<area shape="rect" title="Key and door input routines." alt="" coords="373,5,464,32"/>
+<area shape="rect" title=" " alt="" coords="5,155,85,181"/>
+<area shape="rect" title=" " alt="" coords="110,155,194,181"/>
+<area shape="rect" title=" " alt="" coords="219,155,293,181"/>
+<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="442,80,505,107"/>
+<area shape="rect" title=" " alt="" coords="529,80,602,107"/>
+<area shape="rect" title=" " alt="" coords="626,80,697,107"/>
+<area shape="rect" title=" " alt="" coords="317,155,416,181"/>
+<area shape="rect" title=" " alt="" coords="440,155,507,181"/>
+<area shape="rect" title=" " alt="" coords="531,155,589,181"/>
+<area shape="rect" title=" " alt="" coords="614,155,687,181"/>
+<area shape="rect" title=" " alt="" coords="711,155,798,181"/>
+<area shape="rect" title=" " alt="" coords="823,155,884,181"/>
+<area shape="rect" title=" " alt="" coords="908,155,985,181"/>
+<area shape="rect" title=" " alt="" coords="1010,155,1086,181"/>
+<area shape="rect" title=" " alt="" coords="1110,155,1173,181"/>
 </map>
 </div>
 </div><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
 Macros</h2></td></tr>
-<tr class="memitem:a05e8779289398e4e8028b7f94f6b8009"><td class="memItemLeft" align="right" valign="top"><a id="a05e8779289398e4e8028b7f94f6b8009"></a>
-#define&#160;</td><td class="memItemRight" valign="bottom"><b>CRNL</b>&#160;&#160;&#160;&quot;\r\n&quot;</td></tr>
+<tr class="memitem:a05e8779289398e4e8028b7f94f6b8009"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a05e8779289398e4e8028b7f94f6b8009">CRNL</a>&#160;&#160;&#160;&quot;\r\n&quot;</td></tr>
+<tr class="memdesc:a05e8779289398e4e8028b7f94f6b8009"><td class="mdescLeft">&#160;</td><td class="mdescRight">used by output routines.  <a href="getkey_8cpp.html#a05e8779289398e4e8028b7f94f6b8009">More...</a><br /></td></tr>
 <tr class="separator:a05e8779289398e4e8028b7f94f6b8009"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
 Functions</h2></td></tr>
-<tr class="memitem:a4d48ebd87df182fa824e7e5765cd4f53"><td class="memItemLeft" align="right" valign="top"><a id="a4d48ebd87df182fa824e7e5765cd4f53"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>done</b> (int signal)</td></tr>
-<tr class="separator:a4d48ebd87df182fa824e7e5765cd4f53"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4d28072fff7bfaa3de3d1a6357fba261"><td class="memItemLeft" align="right" valign="top"><a id="a4d28072fff7bfaa3de3d1a6357fba261"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>raw</b> (void)</td></tr>
+<tr class="memitem:a4d28072fff7bfaa3de3d1a6357fba261"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a4d28072fff7bfaa3de3d1a6357fba261">raw</a> (void)</td></tr>
+<tr class="memdesc:a4d28072fff7bfaa3de3d1a6357fba261"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable terminal raw mode.  <a href="getkey_8cpp.html#a4d28072fff7bfaa3de3d1a6357fba261">More...</a><br /></td></tr>
 <tr class="separator:a4d28072fff7bfaa3de3d1a6357fba261"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a3aea9deb2a0bfea9ff05a898f4822e31"><td class="memItemLeft" align="right" valign="top"><a id="a3aea9deb2a0bfea9ff05a898f4822e31"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>reset</b> (void)</td></tr>
+void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a3aea9deb2a0bfea9ff05a898f4822e31">reset</a> (void)</td></tr>
+<tr class="memdesc:a3aea9deb2a0bfea9ff05a898f4822e31"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the terminal termios to the original values. <br /></td></tr>
 <tr class="separator:a3aea9deb2a0bfea9ff05a898f4822e31"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:abbfe4f963938c288581211cdee6cb818"><td class="memItemLeft" align="right" valign="top"><a id="abbfe4f963938c288581211cdee6cb818"></a>
-signed int&#160;</td><td class="memItemRight" valign="bottom"><b>getch</b> (void)</td></tr>
+<tr class="memitem:abbfe4f963938c288581211cdee6cb818"><td class="memItemLeft" align="right" valign="top">signed int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">getch</a> (void)</td></tr>
+<tr class="memdesc:abbfe4f963938c288581211cdee6cb818"><td class="mdescLeft">&#160;</td><td class="mdescRight">low level getch key read  <a href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">More...</a><br /></td></tr>
 <tr class="separator:abbfe4f963938c288581211cdee6cb818"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a37118b1ee911d1447a495aa49f2926a5"><td class="memItemLeft" align="right" valign="top"><a id="a37118b1ee911d1447a495aa49f2926a5"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>unget</b> (char c)</td></tr>
+<tr class="memitem:a37118b1ee911d1447a495aa49f2926a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">unget</a> (char c)</td></tr>
+<tr class="memdesc:a37118b1ee911d1447a495aa49f2926a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">ungets (pushes key back)  <a href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">More...</a><br /></td></tr>
 <tr class="separator:a37118b1ee911d1447a495aa49f2926a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5a392181fdf6b261a23c6996b6f65765"><td class="memItemLeft" align="right" valign="top"><a id="a5a392181fdf6b261a23c6996b6f65765"></a>
-char&#160;</td><td class="memItemRight" valign="bottom"><b>get</b> (void)</td></tr>
+<tr class="memitem:a5a392181fdf6b261a23c6996b6f65765"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">get</a> (void)</td></tr>
+<tr class="memdesc:a5a392181fdf6b261a23c6996b6f65765"><td class="mdescLeft">&#160;</td><td class="mdescRight">get a key from the pushback buffer.  <a href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">More...</a><br /></td></tr>
 <tr class="separator:a5a392181fdf6b261a23c6996b6f65765"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a48210bb765c651a12818ca2551ace8e2"><td class="memItemLeft" align="right" valign="top"><a id="a48210bb765c651a12818ca2551ace8e2"></a>
-signed int&#160;</td><td class="memItemRight" valign="bottom"><b>getkey</b> (void)</td></tr>
+<tr class="memitem:a48210bb765c651a12818ca2551ace8e2"><td class="memItemLeft" align="right" valign="top">signed int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">getkey</a> (void)</td></tr>
+<tr class="memdesc:a48210bb765c651a12818ca2551ace8e2"><td class="mdescLeft">&#160;</td><td class="mdescRight">high level getkey  <a href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">More...</a><br /></td></tr>
 <tr class="separator:a48210bb765c651a12818ca2551ace8e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
 Variables</h2></td></tr>
 <tr class="memitem:ac317ff25d1fad1066feec2dd66179eec"><td class="memItemLeft" align="right" valign="top"><a id="ac317ff25d1fad1066feec2dd66179eec"></a>
-struct termios&#160;</td><td class="memItemRight" valign="bottom"><b>tio_default</b></td></tr>
+struct termios&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec">tio_default</a></td></tr>
+<tr class="memdesc:ac317ff25d1fad1066feec2dd66179eec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Original terminal termios defaults. <br /></td></tr>
 <tr class="separator:ac317ff25d1fad1066feec2dd66179eec"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a92dfe6e9243e862063a0c3869f784557"><td class="memItemLeft" align="right" valign="top"><a id="a92dfe6e9243e862063a0c3869f784557"></a>
-char&#160;</td><td class="memItemRight" valign="bottom"><b>buffer</b> [10]</td></tr>
+char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">buffer</a> [10]</td></tr>
+<tr class="memdesc:a92dfe6e9243e862063a0c3869f784557"><td class="mdescLeft">&#160;</td><td class="mdescRight">pushback buffer to store keys we're not ready for yet. <br /></td></tr>
 <tr class="separator:a92dfe6e9243e862063a0c3869f784557"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aaa0e5be04b9ee83acfdd443145061f47"><td class="memItemLeft" align="right" valign="top"><a id="aaa0e5be04b9ee83acfdd443145061f47"></a>
-int&#160;</td><td class="memItemRight" valign="bottom"><b>bpos</b> = 0</td></tr>
+int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47">bpos</a> = 0</td></tr>
+<tr class="memdesc:aaa0e5be04b9ee83acfdd443145061f47"><td class="mdescLeft">&#160;</td><td class="mdescRight">pushback buffer position <br /></td></tr>
 <tr class="separator:aaa0e5be04b9ee83acfdd443145061f47"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <div class="textblock"><p>Key and door input routines. </p>
-</div></div><!-- contents -->
+</div><h2 class="groupheader">Macro Definition Documentation</h2>
+<a id="a05e8779289398e4e8028b7f94f6b8009"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05e8779289398e4e8028b7f94f6b8009">&#9670;&nbsp;</a></span>CRNL</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">#define CRNL&#160;&#160;&#160;&quot;\r\n&quot;</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>used by output routines. </p>
+<p>Sending "\n" isn't enough. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a id="a5a392181fdf6b261a23c6996b6f65765"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5a392181fdf6b261a23c6996b6f65765">&#9670;&nbsp;</a></span>get()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">char get </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>get a key from the pushback buffer. </p>
+<dl class="section return"><dt>Returns</dt><dd>char </dd></dl>
+
+</div>
+</div>
+<a id="abbfe4f963938c288581211cdee6cb818"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#abbfe4f963938c288581211cdee6cb818">&#9670;&nbsp;</a></span>getch()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">signed int getch </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>low level getch key read </p>
+<p>This reads a key with a defined timeout value. This is called by other routines to handle arrow keys, F-keys. returns -1 on timeout (no key), -2 on error (connection closed) </p><dl class="section return"><dt>Returns</dt><dd>signed int </dd></dl>
+
+</div>
+</div>
+<a id="a48210bb765c651a12818ca2551ace8e2"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a48210bb765c651a12818ca2551ace8e2">&#9670;&nbsp;</a></span>getkey()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">signed int getkey </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>high level getkey </p>
+<p>This returns function keys, arrow keys, see XKEY_* defines. returns -1 (no key avaiable) or -2 (hangup) or XKEY_UNKNOWN (don't know what it is)</p>
+<dl class="section return"><dt>Returns</dt><dd>signed int </dd></dl>
+
+</div>
+</div>
+<a id="a4d28072fff7bfaa3de3d1a6357fba261"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4d28072fff7bfaa3de3d1a6357fba261">&#9670;&nbsp;</a></span>raw()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void raw </td>
+          <td>(</td>
+          <td class="paramtype">void&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Enable terminal raw mode. </p>
+<p>This sets up the linux console so the door library will work correctly in local mode. </p>
+
+</div>
+</div>
+<a id="a37118b1ee911d1447a495aa49f2926a5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a37118b1ee911d1447a495aa49f2926a5">&#9670;&nbsp;</a></span>unget()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void unget </td>
+          <td>(</td>
+          <td class="paramtype">char&#160;</td>
+          <td class="paramname"><em>c</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>ungets (pushes key back) </p>
+<p>If we read ahead, and we can't use it, we push it back into the buffer for next time. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">c</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+</div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>
 Generated by &#160;<a href="http://www.doxygen.org/index.html">

+ 16 - 19
getkey_8cpp__incl.map

@@ -1,21 +1,18 @@
 <map id="getkey.cpp" name="getkey.cpp">
-<area shape="rect" id="node1" title="Key and door input routines." alt="" coords="795,5,886,32"/>
-<area shape="rect" id="node2" title=" " alt="" coords="1019,229,1099,256"/>
-<area shape="rect" id="node3" title=" " alt="" coords="5,155,89,181"/>
-<area shape="rect" id="node4" title=" " alt="" coords="114,155,189,181"/>
-<area shape="rect" id="node5" href="$door_8h_source.html" title=" " alt="" coords="540,80,603,107"/>
-<area shape="rect" id="node18" title=" " alt="" coords="1148,80,1221,107"/>
-<area shape="rect" id="node19" title=" " alt="" coords="1245,80,1316,107"/>
-<area shape="rect" id="node6" href="$anyoption_8h_source.html" title=" " alt="" coords="737,155,835,181"/>
-<area shape="rect" id="node8" title=" " alt="" coords="475,229,548,256"/>
-<area shape="rect" id="node11" title=" " alt="" coords="451,155,518,181"/>
-<area shape="rect" id="node12" title=" " alt="" coords="542,155,601,181"/>
-<area shape="rect" id="node13" title=" " alt="" coords="625,155,712,181"/>
-<area shape="rect" id="node14" title=" " alt="" coords="859,155,921,181"/>
-<area shape="rect" id="node15" title=" " alt="" coords="945,155,1022,181"/>
-<area shape="rect" id="node16" title=" " alt="" coords="213,155,289,181"/>
-<area shape="rect" id="node17" title=" " alt="" coords="313,155,376,181"/>
-<area shape="rect" id="node7" title=" " alt="" coords="753,229,819,256"/>
-<area shape="rect" id="node9" title=" " alt="" coords="844,229,915,256"/>
-<area shape="rect" id="node10" title=" " alt="" coords="670,229,729,256"/>
+<area shape="rect" id="node1" title="Key and door input routines." alt="" coords="373,5,464,32"/>
+<area shape="rect" id="node2" title=" " alt="" coords="5,155,85,181"/>
+<area shape="rect" id="node3" title=" " alt="" coords="110,155,194,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="219,155,293,181"/>
+<area shape="rect" id="node5" href="$door_8h_source.html" title=" " alt="" coords="442,80,505,107"/>
+<area shape="rect" id="node15" title=" " alt="" coords="529,80,602,107"/>
+<area shape="rect" id="node16" title=" " alt="" coords="626,80,697,107"/>
+<area shape="rect" id="node6" title=" " alt="" coords="317,155,416,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="440,155,507,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="531,155,589,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="614,155,687,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="711,155,798,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="823,155,884,181"/>
+<area shape="rect" id="node12" title=" " alt="" coords="908,155,985,181"/>
+<area shape="rect" id="node13" title=" " alt="" coords="1010,155,1086,181"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1110,155,1173,181"/>
 </map>

+ 1 - 1
getkey_8cpp__incl.md5

@@ -1 +1 @@
-202ffa9fb46a7f76c1ef32f87872a1f7
+e1e2f0e47de802b1ab09805658b6e461

BIN
getkey_8cpp__incl.png


+ 104 - 0
globals.html

@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
+<meta name="generator" content="Doxygen 1.8.17"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Bugz Door Project: File Members</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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Bugz Door Project
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</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="contents">
+<div class="textblock">Here is a list of all documented file members with links to the documentation:</div><ul>
+<li>bpos
+: <a class="el" href="getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47">getkey.cpp</a>
+</li>
+<li>buffer
+: <a class="el" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">getkey.cpp</a>
+</li>
+<li>CRNL
+: <a class="el" href="getkey_8cpp.html#a05e8779289398e4e8028b7f94f6b8009">getkey.cpp</a>
+</li>
+<li>get()
+: <a class="el" href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">getkey.cpp</a>
+</li>
+<li>getch()
+: <a class="el" href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">getkey.cpp</a>
+</li>
+<li>getkey()
+: <a class="el" href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">getkey.cpp</a>
+</li>
+<li>raw()
+: <a class="el" href="getkey_8cpp.html#a4d28072fff7bfaa3de3d1a6357fba261">getkey.cpp</a>
+</li>
+<li>reset()
+: <a class="el" href="getkey_8cpp.html#a3aea9deb2a0bfea9ff05a898f4822e31">getkey.cpp</a>
+</li>
+<li>tio_default
+: <a class="el" href="getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec">getkey.cpp</a>
+</li>
+<li>unget()
+: <a class="el" href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">getkey.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.17
+</small></address>
+</body>
+</html>

+ 77 - 0
globals_defs.html

@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
+<meta name="generator" content="Doxygen 1.8.17"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Bugz Door Project: File Members</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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Bugz Door Project
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</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="contents">
+&#160;<ul>
+<li>CRNL
+: <a class="el" href="getkey_8cpp.html#a05e8779289398e4e8028b7f94f6b8009">getkey.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.17
+</small></address>
+</body>
+</html>

+ 92 - 0
globals_func.html

@@ -0,0 +1,92 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
+<meta name="generator" content="Doxygen 1.8.17"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Bugz Door Project: File Members</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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Bugz Door Project
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</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="contents">
+&#160;<ul>
+<li>get()
+: <a class="el" href="getkey_8cpp.html#a5a392181fdf6b261a23c6996b6f65765">getkey.cpp</a>
+</li>
+<li>getch()
+: <a class="el" href="getkey_8cpp.html#abbfe4f963938c288581211cdee6cb818">getkey.cpp</a>
+</li>
+<li>getkey()
+: <a class="el" href="getkey_8cpp.html#a48210bb765c651a12818ca2551ace8e2">getkey.cpp</a>
+</li>
+<li>raw()
+: <a class="el" href="getkey_8cpp.html#a4d28072fff7bfaa3de3d1a6357fba261">getkey.cpp</a>
+</li>
+<li>reset()
+: <a class="el" href="getkey_8cpp.html#a3aea9deb2a0bfea9ff05a898f4822e31">getkey.cpp</a>
+</li>
+<li>unget()
+: <a class="el" href="getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5">getkey.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.17
+</small></address>
+</body>
+</html>

+ 83 - 0
globals_vars.html

@@ -0,0 +1,83 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
+<meta name="generator" content="Doxygen 1.8.17"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Bugz Door Project: File Members</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="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/searchdata.js"></script>
+<script type="text/javascript" src="search/search.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 id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Bugz Door Project
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.17 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @license-end */
+</script>
+<script type="text/javascript" src="menudata.js"></script>
+<script type="text/javascript" src="menu.js"></script>
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(function() {
+  initMenu('',true,false,'search.php','Search');
+  $(document).ready(function() { init_search(); });
+});
+/* @license-end */</script>
+<div id="main-nav"></div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+</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="contents">
+&#160;<ul>
+<li>bpos
+: <a class="el" href="getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47">getkey.cpp</a>
+</li>
+<li>buffer
+: <a class="el" href="getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557">getkey.cpp</a>
+</li>
+<li>tio_default
+: <a class="el" href="getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec">getkey.cpp</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.17
+</small></address>
+</body>
+</html>

+ 15 - 16
hierarchy.html

@@ -70,22 +70,21 @@ $(function() {
 This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
 <div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span>]</div><table class="directory">
 <tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1ANSIColor.html" target="_self">door::ANSIColor</a></td><td class="desc">Foreground, Background and Attributes </td></tr>
-<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classAnyOption.html" target="_self">AnyOption</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structdoor_1_1box__styles.html" target="_self">door::box_styles</a></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Clrscr.html" target="_self">door::Clrscr</a></td><td class="desc">Clear the screen </td></tr>
-<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1ColorOutput.html" target="_self">door::ColorOutput</a></td><td class="desc">This holds an <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> and text position + length </td></tr>
-<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Goto.html" target="_self">door::Goto</a></td><td class="desc">ANSI <a class="el" href="classdoor_1_1Goto.html" title="ANSI Goto X, Y position.">Goto</a> X, Y position </td></tr>
-<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1IConv.html" target="_self">door::IConv</a></td><td class="desc"></td></tr>
-<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Line.html" target="_self">door::Line</a></td><td class="desc">Text and <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
-<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1NewLine.html" target="_self">door::NewLine</a></td><td class="desc">CR+LF </td></tr>
-<tr id="row_9_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>ostream</b></td><td class="desc"></td></tr>
-<tr id="row_9_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Door.html" target="_self">door::Door</a></td><td class="desc"></td></tr>
-<tr id="row_10_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_10_" class="arrow" onclick="toggleFolder('10_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Panel.html" target="_self">door::Panel</a></td><td class="desc"></td></tr>
-<tr id="row_10_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Menu.html" target="_self">door::Menu</a></td><td class="desc"></td></tr>
-<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Render.html" target="_self">door::Render</a></td><td class="desc">Rendering a string with <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
-<tr id="row_12_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Screen.html" target="_self">door::Screen</a></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_13_" class="arrow" onclick="toggleFolder('13_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>streambuf</b></td><td class="desc"></td></tr>
-<tr id="row_13_0_" class="even"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Door.html" target="_self">door::Door</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="structdoor_1_1box__styles.html" target="_self">door::box_styles</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Clrscr.html" target="_self">door::Clrscr</a></td><td class="desc">Clear the screen </td></tr>
+<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1ColorOutput.html" target="_self">door::ColorOutput</a></td><td class="desc">This holds an <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> and text position + length </td></tr>
+<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Goto.html" target="_self">door::Goto</a></td><td class="desc">ANSI <a class="el" href="classdoor_1_1Goto.html" title="ANSI Goto X, Y position.">Goto</a> X, Y position </td></tr>
+<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1IConv.html" target="_self">door::IConv</a></td><td class="desc">Converts from one encoding to another. Uses iconv (international conversion) API </td></tr>
+<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Line.html" target="_self">door::Line</a></td><td class="desc">Text and <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
+<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1NewLine.html" target="_self">door::NewLine</a></td><td class="desc">CR+LF </td></tr>
+<tr id="row_8_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_8_" class="arrow" onclick="toggleFolder('8_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>ostream</b></td><td class="desc"></td></tr>
+<tr id="row_8_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Door.html" target="_self">door::Door</a></td><td class="desc"></td></tr>
+<tr id="row_9_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_9_" class="arrow" onclick="toggleFolder('9_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Panel.html" target="_self">door::Panel</a></td><td class="desc"></td></tr>
+<tr id="row_9_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Menu.html" target="_self">door::Menu</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Render.html" target="_self">door::Render</a></td><td class="desc">Rendering a string with <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a> </td></tr>
+<tr id="row_11_"><td class="entry"><span style="width:16px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Screen.html" target="_self">door::Screen</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><span style="width:0px;display:inline-block;">&#160;</span><span id="arr_12_" class="arrow" onclick="toggleFolder('12_')">&#9660;</span><span class="icona"><span class="icon">C</span></span><b>streambuf</b></td><td class="desc"></td></tr>
+<tr id="row_12_0_"><td class="entry"><span style="width:32px;display:inline-block;">&#160;</span><span class="icona"><span class="icon">C</span></span><a class="el" href="classdoor_1_1Door.html" target="_self">door::Door</a></td><td class="desc"></td></tr>
 </table>
 </div><!-- directory -->
 </div><!-- contents -->

+ 2 - 2
index.html

@@ -214,11 +214,11 @@ $(function() {
 <div class="ttc" id="anamespacedoor_html_a08afbc9eecb6efd7d4c741023b11db91ab50339a10e1de285ac99d4c3990b8693"><div class="ttname"><a href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91ab50339a10e1de285ac99d4c3990b8693">door::BorderStyle::NONE</a></div><div class="ttdeci">@ NONE</div><div class="ttdoc">NONE (0)</div></div>
 <div class="ttc" id="aclassdoor_1_1Line_html"><div class="ttname"><a href="classdoor_1_1Line.html">door::Line</a></div><div class="ttdoc">Text and ANSIColor.</div><div class="ttdef"><b>Definition:</b> door.h:488</div></div>
 <div class="ttc" id="anamespacedoor_html_adb2697f83f8ce701366e05ed72c97d6e"><div class="ttname"><a href="namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e">door::updateFunction</a></div><div class="ttdeci">std::function&lt; std::string(void)&gt; updateFunction</div><div class="ttdef"><b>Definition:</b> door.h:360</div></div>
-<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1170</div></div>
+<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1249</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e">door::COLOR::YELLOW</a></div><div class="ttdeci">@ YELLOW</div><div class="ttdoc">YELLOW (3)</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d">door::COLOR::WHITE</a></div><div class="ttdeci">@ WHITE</div><div class="ttdoc">WHITE (7)</div></div>
 <div class="ttc" id="anamespacedoor_html"><div class="ttname"><a href="namespacedoor.html">door</a></div><div class="ttdoc">The BBS door project. This is an attempt at writing a C++ BBS door toolkit.</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:9</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:670</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_aff858b2112970b66917a30ad3c00609d"><div class="ttname"><a href="classdoor_1_1Menu.html#aff858b2112970b66917a30ad3c00609d">door::Menu::makeRender</a></div><div class="ttdeci">static renderFunction makeRender(ANSIColor c1, ANSIColor c2, ANSIColor c3, ANSIColor c4)</div><div class="ttdef"><b>Definition:</b> panel.cpp:713</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f">door::COLOR::BLUE</a></div><div class="ttdeci">@ BLUE</div><div class="ttdoc">BLUE (4)</div></div>
 <div class="ttc" id="aclassdoor_1_1Render_html"><div class="ttname"><a href="classdoor_1_1Render.html">door::Render</a></div><div class="ttdoc">Rendering a string with ANSIColor.</div><div class="ttdef"><b>Definition:</b> door.h:307</div></div>
 <!-- start footer part -->

+ 1 - 1
inherit_graph_0.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classAnyOption.html" title=" " alt="" coords="5,5,96,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="5,5,129,32"/>
 </map>

+ 1 - 1
inherit_graph_0.md5

@@ -1 +1 @@
-1a0e9c5505157b1536a59db7638c69c6
+16a171311f0e56af6662192f320ae8ae

BIN
inherit_graph_0.png


+ 1 - 1
inherit_graph_1.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="5,5,129,32"/>
+<area shape="rect" id="node1" href="$structdoor_1_1box__styles.html" title=" " alt="" coords="5,5,135,32"/>
 </map>

+ 1 - 1
inherit_graph_1.md5

@@ -1 +1 @@
-16a171311f0e56af6662192f320ae8ae
+2695e1fbbfa22836ad65cf9907e4adb2

BIN
inherit_graph_1.png


+ 1 - 2
inherit_graph_10.map

@@ -1,4 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1Panel.html" title=" " alt="" coords="5,5,100,32"/>
-<area shape="rect" id="node2" href="$classdoor_1_1Menu.html" title=" " alt="" coords="148,5,243,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Render.html" title="Rendering a string with ANSIColor." alt="" coords="5,5,111,32"/>
 </map>

+ 1 - 1
inherit_graph_10.md5

@@ -1 +1 @@
-72f4638b1b39b991f117001446a256b2
+ac4c497c4e223b9a6af9035d2beb09d1

BIN
inherit_graph_10.png


+ 1 - 1
inherit_graph_11.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1Render.html" title="Rendering a string with ANSIColor." alt="" coords="5,5,111,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Screen.html" title=" " alt="" coords="5,5,108,32"/>
 </map>

+ 1 - 1
inherit_graph_11.md5

@@ -1 +1 @@
-ac4c497c4e223b9a6af9035d2beb09d1
+7eb084da3f87d0792f60ca0006ef3da5

BIN
inherit_graph_11.png


+ 1 - 1
inherit_graph_2.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$structdoor_1_1box__styles.html" title=" " alt="" coords="5,5,135,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Clrscr.html" title="Clear the screen." alt="" coords="5,5,101,32"/>
 </map>

+ 1 - 1
inherit_graph_2.md5

@@ -1 +1 @@
-2695e1fbbfa22836ad65cf9907e4adb2
+87ed3009d618b8446667be86972510eb

BIN
inherit_graph_2.png


+ 1 - 1
inherit_graph_3.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1Clrscr.html" title="Clear the screen." alt="" coords="5,5,101,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1ColorOutput.html" title="This holds an ANSIColor and text position + length." alt="" coords="5,5,143,32"/>
 </map>

+ 1 - 1
inherit_graph_3.md5

@@ -1 +1 @@
-87ed3009d618b8446667be86972510eb
+cd4496ad8b62e512c5dda598da791a6e

BIN
inherit_graph_3.png


+ 3 - 1
inherit_graph_4.map

@@ -1,3 +1,5 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1ColorOutput.html" title="This holds an ANSIColor and text position + length." alt="" coords="5,5,143,32"/>
+<area shape="rect" id="node1" title=" " alt="" coords="12,5,88,32"/>
+<area shape="rect" id="node2" href="$classdoor_1_1Door.html" title=" " alt="" coords="143,31,233,57"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,56,95,83"/>
 </map>

+ 1 - 1
inherit_graph_4.md5

@@ -1 +1 @@
-cd4496ad8b62e512c5dda598da791a6e
+b91eabab96c2170ce5bc39ebd7d42767

BIN
inherit_graph_4.png


+ 1 - 3
inherit_graph_5.map

@@ -1,5 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" title=" " alt="" coords="12,5,88,32"/>
-<area shape="rect" id="node2" href="$classdoor_1_1Door.html" title=" " alt="" coords="143,31,233,57"/>
-<area shape="rect" id="node3" title=" " alt="" coords="5,56,95,83"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Goto.html" title="ANSI Goto X, Y position." alt="" coords="5,5,96,32"/>
 </map>

+ 1 - 1
inherit_graph_5.md5

@@ -1 +1 @@
-b91eabab96c2170ce5bc39ebd7d42767
+9d6888f9d8be04875d1db1207b7aef46

BIN
inherit_graph_5.png


+ 1 - 1
inherit_graph_6.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1Goto.html" title="ANSI Goto X, Y position." alt="" coords="5,5,96,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1IConv.html" title="Converts from one encoding to another. Uses iconv (international conversion) API." alt="" coords="5,5,101,32"/>
 </map>

+ 1 - 1
inherit_graph_6.md5

@@ -1 +1 @@
-9d6888f9d8be04875d1db1207b7aef46
+fca5a9e9ea5f1c1eab04a372b5200114

BIN
inherit_graph_6.png


+ 1 - 1
inherit_graph_7.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1IConv.html" title=" " alt="" coords="5,5,101,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Line.html" title="Text and ANSIColor." alt="" coords="5,5,92,32"/>
 </map>

+ 1 - 1
inherit_graph_7.md5

@@ -1 +1 @@
-5aff3816c73765ea39d9a1920dfaa414
+a831e44342d2699d621504d032b99a2b

BIN
inherit_graph_7.png


+ 1 - 1
inherit_graph_8.map

@@ -1,3 +1,3 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1Line.html" title="Text and ANSIColor." alt="" coords="5,5,92,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1NewLine.html" title="CR+LF." alt="" coords="5,5,120,32"/>
 </map>

+ 1 - 1
inherit_graph_8.md5

@@ -1 +1 @@
-a831e44342d2699d621504d032b99a2b
+311964ebe17fad5c82858e1823f3e846

BIN
inherit_graph_8.png


+ 2 - 1
inherit_graph_9.map

@@ -1,3 +1,4 @@
 <map id="Graphical Class Hierarchy" name="Graphical Class Hierarchy">
-<area shape="rect" id="node1" href="$classdoor_1_1NewLine.html" title="CR+LF." alt="" coords="5,5,120,32"/>
+<area shape="rect" id="node1" href="$classdoor_1_1Panel.html" title=" " alt="" coords="5,5,100,32"/>
+<area shape="rect" id="node2" href="$classdoor_1_1Menu.html" title=" " alt="" coords="148,5,243,32"/>
 </map>

+ 1 - 1
inherit_graph_9.md5

@@ -1 +1 @@
-311964ebe17fad5c82858e1823f3e846
+72f4638b1b39b991f117001446a256b2

BIN
inherit_graph_9.png


+ 13 - 18
inherits.html

@@ -68,70 +68,65 @@ $(function() {
 <div class="textblock">
 <p><a href="hierarchy.html">Go to the textual class hierarchy</a></p>
 </div><table border="0" cellspacing="10" cellpadding="0">
-<tr><td><img src="inherit_graph_0.png" border="0" usemap="#AnyOption" alt=""/>
-<map name="AnyOption" id="AnyOption">
-<area shape="rect" href="classAnyOption.html" title=" " alt="" coords="5,5,96,32"/>
-</map>
-</td></tr>
-<tr><td><img src="inherit_graph_1.png" border="0" usemap="#door_1_1ANSIColor" alt=""/>
+<tr><td><img src="inherit_graph_0.png" border="0" usemap="#door_1_1ANSIColor" alt=""/>
 <map name="door_1_1ANSIColor" id="door_1_1ANSIColor">
 <area shape="rect" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes." alt="" coords="5,5,129,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_2.png" border="0" usemap="#door_1_1box__styles" alt=""/>
+<tr><td><img src="inherit_graph_1.png" border="0" usemap="#door_1_1box__styles" alt=""/>
 <map name="door_1_1box__styles" id="door_1_1box__styles">
 <area shape="rect" href="structdoor_1_1box__styles.html" title=" " alt="" coords="5,5,135,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_3.png" border="0" usemap="#door_1_1Clrscr" alt=""/>
+<tr><td><img src="inherit_graph_2.png" border="0" usemap="#door_1_1Clrscr" alt=""/>
 <map name="door_1_1Clrscr" id="door_1_1Clrscr">
 <area shape="rect" href="classdoor_1_1Clrscr.html" title="Clear the screen." alt="" coords="5,5,101,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_4.png" border="0" usemap="#door_1_1ColorOutput" alt=""/>
+<tr><td><img src="inherit_graph_3.png" border="0" usemap="#door_1_1ColorOutput" alt=""/>
 <map name="door_1_1ColorOutput" id="door_1_1ColorOutput">
 <area shape="rect" href="classdoor_1_1ColorOutput.html" title="This holds an ANSIColor and text position + length." alt="" coords="5,5,143,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_5.png" border="0" usemap="#door_1_1Door" alt=""/>
+<tr><td><img src="inherit_graph_4.png" border="0" usemap="#door_1_1Door" alt=""/>
 <map name="door_1_1Door" id="door_1_1Door">
 <area shape="rect" title=" " alt="" coords="12,5,88,32"/>
 <area shape="rect" href="classdoor_1_1Door.html" title=" " alt="" coords="143,31,233,57"/>
 <area shape="rect" title=" " alt="" coords="5,56,95,83"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_6.png" border="0" usemap="#door_1_1Goto" alt=""/>
+<tr><td><img src="inherit_graph_5.png" border="0" usemap="#door_1_1Goto" alt=""/>
 <map name="door_1_1Goto" id="door_1_1Goto">
 <area shape="rect" href="classdoor_1_1Goto.html" title="ANSI Goto X, Y position." alt="" coords="5,5,96,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_7.png" border="0" usemap="#door_1_1IConv" alt=""/>
+<tr><td><img src="inherit_graph_6.png" border="0" usemap="#door_1_1IConv" alt=""/>
 <map name="door_1_1IConv" id="door_1_1IConv">
-<area shape="rect" href="classdoor_1_1IConv.html" title=" " alt="" coords="5,5,101,32"/>
+<area shape="rect" href="classdoor_1_1IConv.html" title="Converts from one encoding to another. Uses iconv (international conversion) API." alt="" coords="5,5,101,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_8.png" border="0" usemap="#door_1_1Line" alt=""/>
+<tr><td><img src="inherit_graph_7.png" border="0" usemap="#door_1_1Line" alt=""/>
 <map name="door_1_1Line" id="door_1_1Line">
 <area shape="rect" href="classdoor_1_1Line.html" title="Text and ANSIColor." alt="" coords="5,5,92,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_9.png" border="0" usemap="#door_1_1NewLine" alt=""/>
+<tr><td><img src="inherit_graph_8.png" border="0" usemap="#door_1_1NewLine" alt=""/>
 <map name="door_1_1NewLine" id="door_1_1NewLine">
 <area shape="rect" href="classdoor_1_1NewLine.html" title="CR+LF." alt="" coords="5,5,120,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_10.png" border="0" usemap="#door_1_1Panel" alt=""/>
+<tr><td><img src="inherit_graph_9.png" border="0" usemap="#door_1_1Panel" alt=""/>
 <map name="door_1_1Panel" id="door_1_1Panel">
 <area shape="rect" href="classdoor_1_1Panel.html" title=" " alt="" coords="5,5,100,32"/>
 <area shape="rect" href="classdoor_1_1Menu.html" title=" " alt="" coords="148,5,243,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_11.png" border="0" usemap="#door_1_1Render" alt=""/>
+<tr><td><img src="inherit_graph_10.png" border="0" usemap="#door_1_1Render" alt=""/>
 <map name="door_1_1Render" id="door_1_1Render">
 <area shape="rect" href="classdoor_1_1Render.html" title="Rendering a string with ANSIColor." alt="" coords="5,5,111,32"/>
 </map>
 </td></tr>
-<tr><td><img src="inherit_graph_12.png" border="0" usemap="#door_1_1Screen" alt=""/>
+<tr><td><img src="inherit_graph_11.png" border="0" usemap="#door_1_1Screen" alt=""/>
 <map name="door_1_1Screen" id="door_1_1Screen">
 <area shape="rect" href="classdoor_1_1Screen.html" title=" " alt="" coords="5,5,108,32"/>
 </map>

+ 20 - 23
lines_8cpp.html

@@ -78,29 +78,26 @@ Include dependency graph for lines.cpp:</div>
 <div class="dyncontent">
 <div class="center"><img src="lines_8cpp__incl.png" border="0" usemap="#lines_8cpp" alt=""/></div>
 <map name="lines_8cpp" id="lines_8cpp">
-<area shape="rect" title="Line." alt="" coords="1418,5,1498,32"/>
-<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="639,87,701,114"/>
-<area shape="rect" href="utf8_8h_source.html" title=" " alt="" coords="1249,87,1309,114"/>
-<area shape="rect" title=" " alt="" coords="1334,80,1582,121"/>
-<area shape="rect" title=" " alt="" coords="1605,87,1676,114"/>
-<area shape="rect" title=" " alt="" coords="1700,87,1787,114"/>
-<area shape="rect" href="anyoption_8h_source.html" title=" " alt="" coords="181,169,279,196"/>
-<area shape="rect" title=" " alt="" coords="5,244,79,271"/>
-<area shape="rect" title=" " alt="" coords="373,244,453,271"/>
-<area shape="rect" title=" " alt="" coords="354,169,421,196"/>
-<area shape="rect" title=" " alt="" coords="445,169,503,196"/>
-<area shape="rect" title=" " alt="" coords="528,169,615,196"/>
-<area shape="rect" title=" " alt="" coords="639,169,701,196"/>
-<area shape="rect" title=" " alt="" coords="725,169,802,196"/>
-<area shape="rect" title=" " alt="" coords="827,169,903,196"/>
-<area shape="rect" title=" " alt="" coords="927,169,989,196"/>
-<area shape="rect" title=" " alt="" coords="1013,169,1097,196"/>
-<area shape="rect" title=" " alt="" coords="1122,169,1197,196"/>
-<area shape="rect" title=" " alt="" coords="103,244,170,271"/>
-<area shape="rect" title=" " alt="" coords="195,244,265,271"/>
-<area shape="rect" title=" " alt="" coords="290,244,349,271"/>
-<area shape="rect" title=" " alt="" coords="1221,169,1338,196"/>
-<area shape="rect" title=" " alt="" coords="1362,169,1495,196"/>
+<area shape="rect" title="Line." alt="" coords="1393,5,1473,32"/>
+<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="605,87,667,114"/>
+<area shape="rect" href="utf8_8h_source.html" title=" " alt="" coords="1225,87,1285,114"/>
+<area shape="rect" title=" " alt="" coords="1309,80,1557,121"/>
+<area shape="rect" title=" " alt="" coords="1581,87,1651,114"/>
+<area shape="rect" title=" " alt="" coords="1675,87,1762,114"/>
+<area shape="rect" title=" " alt="" coords="5,169,104,196"/>
+<area shape="rect" title=" " alt="" coords="128,169,195,196"/>
+<area shape="rect" title=" " alt="" coords="219,169,277,196"/>
+<area shape="rect" title=" " alt="" coords="302,169,375,196"/>
+<area shape="rect" title=" " alt="" coords="399,169,486,196"/>
+<area shape="rect" title=" " alt="" coords="511,169,572,196"/>
+<area shape="rect" title=" " alt="" coords="596,169,676,196"/>
+<area shape="rect" title=" " alt="" coords="700,169,777,196"/>
+<area shape="rect" title=" " alt="" coords="802,169,878,196"/>
+<area shape="rect" title=" " alt="" coords="902,169,965,196"/>
+<area shape="rect" title=" " alt="" coords="989,169,1073,196"/>
+<area shape="rect" title=" " alt="" coords="1097,169,1172,196"/>
+<area shape="rect" title=" " alt="" coords="1196,169,1313,196"/>
+<area shape="rect" title=" " alt="" coords="1337,169,1471,196"/>
 </map>
 </div>
 </div><table class="memberdecls">

+ 20 - 23
lines_8cpp__incl.map

@@ -1,25 +1,22 @@
 <map id="lines.cpp" name="lines.cpp">
-<area shape="rect" id="node1" title="Line." alt="" coords="1418,5,1498,32"/>
-<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="639,87,701,114"/>
-<area shape="rect" id="node18" href="$utf8_8h_source.html" title=" " alt="" coords="1249,87,1309,114"/>
-<area shape="rect" id="node21" title=" " alt="" coords="1334,80,1582,121"/>
-<area shape="rect" id="node22" title=" " alt="" coords="1605,87,1676,114"/>
-<area shape="rect" id="node23" title=" " alt="" coords="1700,87,1787,114"/>
-<area shape="rect" id="node3" href="$anyoption_8h_source.html" title=" " alt="" coords="181,169,279,196"/>
-<area shape="rect" id="node5" title=" " alt="" coords="5,244,79,271"/>
-<area shape="rect" id="node6" title=" " alt="" coords="373,244,453,271"/>
-<area shape="rect" id="node9" title=" " alt="" coords="354,169,421,196"/>
-<area shape="rect" id="node10" title=" " alt="" coords="445,169,503,196"/>
-<area shape="rect" id="node11" title=" " alt="" coords="528,169,615,196"/>
-<area shape="rect" id="node12" title=" " alt="" coords="639,169,701,196"/>
-<area shape="rect" id="node13" title=" " alt="" coords="725,169,802,196"/>
-<area shape="rect" id="node14" title=" " alt="" coords="827,169,903,196"/>
-<area shape="rect" id="node15" title=" " alt="" coords="927,169,989,196"/>
-<area shape="rect" id="node16" title=" " alt="" coords="1013,169,1097,196"/>
-<area shape="rect" id="node17" title=" " alt="" coords="1122,169,1197,196"/>
-<area shape="rect" id="node4" title=" " alt="" coords="103,244,170,271"/>
-<area shape="rect" id="node7" title=" " alt="" coords="195,244,265,271"/>
-<area shape="rect" id="node8" title=" " alt="" coords="290,244,349,271"/>
-<area shape="rect" id="node19" title=" " alt="" coords="1221,169,1338,196"/>
-<area shape="rect" id="node20" title=" " alt="" coords="1362,169,1495,196"/>
+<area shape="rect" id="node1" title="Line." alt="" coords="1393,5,1473,32"/>
+<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="605,87,667,114"/>
+<area shape="rect" id="node15" href="$utf8_8h_source.html" title=" " alt="" coords="1225,87,1285,114"/>
+<area shape="rect" id="node18" title=" " alt="" coords="1309,80,1557,121"/>
+<area shape="rect" id="node19" title=" " alt="" coords="1581,87,1651,114"/>
+<area shape="rect" id="node20" title=" " alt="" coords="1675,87,1762,114"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,169,104,196"/>
+<area shape="rect" id="node4" title=" " alt="" coords="128,169,195,196"/>
+<area shape="rect" id="node5" title=" " alt="" coords="219,169,277,196"/>
+<area shape="rect" id="node6" title=" " alt="" coords="302,169,375,196"/>
+<area shape="rect" id="node7" title=" " alt="" coords="399,169,486,196"/>
+<area shape="rect" id="node8" title=" " alt="" coords="511,169,572,196"/>
+<area shape="rect" id="node9" title=" " alt="" coords="596,169,676,196"/>
+<area shape="rect" id="node10" title=" " alt="" coords="700,169,777,196"/>
+<area shape="rect" id="node11" title=" " alt="" coords="802,169,878,196"/>
+<area shape="rect" id="node12" title=" " alt="" coords="902,169,965,196"/>
+<area shape="rect" id="node13" title=" " alt="" coords="989,169,1073,196"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1097,169,1172,196"/>
+<area shape="rect" id="node16" title=" " alt="" coords="1196,169,1313,196"/>
+<area shape="rect" id="node17" title=" " alt="" coords="1337,169,1471,196"/>
 </map>

+ 1 - 1
lines_8cpp__incl.md5

@@ -1 +1 @@
-b47bd389becfc94fd559fd5719381ed7
+9337a5b897b742006e418152cb8dd06d

BIN
lines_8cpp__incl.png


+ 4 - 4
menu-example_8cpp-example.html

@@ -124,14 +124,14 @@ $(function() {
 <div class="ttc" id="anamespacedoor_html_add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19"><div class="ttname"><a href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19">door::ATTR::BOLD</a></div><div class="ttdeci">@ BOLD</div><div class="ttdoc">BOLD is the same as BRIGHT.</div></div>
 <div class="ttc" id="aclassdoor_1_1ANSIColor_html"><div class="ttname"><a href="classdoor_1_1ANSIColor.html">door::ANSIColor</a></div><div class="ttdoc">Foreground, Background and Attributes.</div><div class="ttdef"><b>Definition:</b> door.h:131</div></div>
 <div class="ttc" id="aclassdoor_1_1Menu_html"><div class="ttname"><a href="classdoor_1_1Menu.html">door::Menu</a></div><div class="ttdef"><b>Definition:</b> door.h:672</div></div>
-<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1142</div></div>
+<div class="ttc" id="anamespacedoor_html_ac70193caf66e4b9aed1529593727a6eb"><div class="ttname"><a href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door::cls</a></div><div class="ttdeci">Clrscr cls</div><div class="ttdef"><b>Definition:</b> door.cpp:1221</div></div>
 <div class="ttc" id="anamespacedoor_html_adb2697f83f8ce701366e05ed72c97d6e"><div class="ttname"><a href="namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e">door::updateFunction</a></div><div class="ttdeci">std::function&lt; std::string(void)&gt; updateFunction</div><div class="ttdef"><b>Definition:</b> door.h:360</div></div>
-<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1170</div></div>
-<div class="ttc" id="aclassdoor_1_1Panel_html_a57234d5f1d891ed8f9ea9c8c9be7aed4"><div class="ttname"><a href="classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4">door::Panel::update</a></div><div class="ttdeci">bool update(Door &amp;d)</div><div class="ttdoc">Updates a panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:248</div></div>
+<div class="ttc" id="anamespacedoor_html_a36352ded72aee66b10e1bda6d3d8efb8"><div class="ttname"><a href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door::nl</a></div><div class="ttdeci">NewLine nl</div><div class="ttdef"><b>Definition:</b> door.cpp:1249</div></div>
+<div class="ttc" id="aclassdoor_1_1Panel_html_a57234d5f1d891ed8f9ea9c8c9be7aed4"><div class="ttname"><a href="classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4">door::Panel::update</a></div><div class="ttdeci">bool update(Door &amp;d)</div><div class="ttdoc">Updates a panel.</div><div class="ttdef"><b>Definition:</b> panel.cpp:274</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e">door::COLOR::YELLOW</a></div><div class="ttdeci">@ YELLOW</div><div class="ttdoc">YELLOW (3)</div></div>
 <div class="ttc" id="anamespacedoor_html_ae3a70989c43f6cb3522308af748b4481"><div class="ttname"><a href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">door::reset</a></div><div class="ttdeci">ANSIColor reset(ATTR::RESET)</div><div class="ttdoc">reset colors to normal</div><div class="ttdef"><b>Definition:</b> door.h:400</div></div>
 <div class="ttc" id="anamespacedoor_html"><div class="ttname"><a href="namespacedoor.html">door</a></div><div class="ttdoc">The BBS door project. This is an attempt at writing a C++ BBS door toolkit.</div><div class="ttdef"><b>Definition:</b> ansicolor.cpp:9</div></div>
-<div class="ttc" id="aclassdoor_1_1Menu_html_a06da9157cc5984510153a6b93bf2e71e"><div class="ttname"><a href="classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e">door::Menu::choose</a></div><div class="ttdeci">int choose(Door &amp;door)</div><div class="ttdef"><b>Definition:</b> panel.cpp:715</div></div>
+<div class="ttc" id="aclassdoor_1_1Menu_html_a06da9157cc5984510153a6b93bf2e71e"><div class="ttname"><a href="classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e">door::Menu::choose</a></div><div class="ttdeci">int choose(Door &amp;door)</div><div class="ttdef"><b>Definition:</b> panel.cpp:758</div></div>
 <div class="ttc" id="anamespacedoor_html_abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f"><div class="ttname"><a href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f">door::COLOR::BLUE</a></div><div class="ttdeci">@ BLUE</div><div class="ttdoc">BLUE (4)</div></div>
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 35 - 3
menudata.js

@@ -26,7 +26,19 @@ var menudata={children:[
 {text:"Namespaces",url:"namespaces.html",children:[
 {text:"Namespace List",url:"namespaces.html"},
 {text:"Namespace Members",url:"namespacemembers.html",children:[
-{text:"All",url:"namespacemembers.html"},
+{text:"All",url:"namespacemembers.html",children:[
+{text:"a",url:"namespacemembers.html#index_a"},
+{text:"b",url:"namespacemembers.html#index_b"},
+{text:"c",url:"namespacemembers.html#index_c"},
+{text:"d",url:"namespacemembers.html#index_d"},
+{text:"f",url:"namespacemembers.html#index_f"},
+{text:"j",url:"namespacemembers.html#index_j"},
+{text:"n",url:"namespacemembers.html#index_n"},
+{text:"o",url:"namespacemembers.html#index_o"},
+{text:"r",url:"namespacemembers.html#index_r"},
+{text:"s",url:"namespacemembers.html#index_s"},
+{text:"t",url:"namespacemembers.html#index_t"},
+{text:"u",url:"namespacemembers.html#index_u"}]},
 {text:"Functions",url:"namespacemembers_func.html"},
 {text:"Variables",url:"namespacemembers_vars.html"},
 {text:"Typedefs",url:"namespacemembers_type.html"},
@@ -72,8 +84,28 @@ var menudata={children:[
 {text:"s",url:"functions_func.html#index_s"},
 {text:"u",url:"functions_func.html#index_u"},
 {text:"x",url:"functions_func.html#index_x"}]},
-{text:"Variables",url:"functions_vars.html"},
+{text:"Variables",url:"functions_vars.html",children:[
+{text:"b",url:"functions_vars.html#index_b"},
+{text:"c",url:"functions_vars.html#index_c"},
+{text:"f",url:"functions_vars.html#index_f"},
+{text:"h",url:"functions_vars.html#index_h"},
+{text:"i",url:"functions_vars.html#index_i"},
+{text:"l",url:"functions_vars.html#index_l"},
+{text:"m",url:"functions_vars.html#index_m"},
+{text:"o",url:"functions_vars.html#index_o"},
+{text:"p",url:"functions_vars.html#index_p"},
+{text:"r",url:"functions_vars.html#index_r"},
+{text:"s",url:"functions_vars.html#index_s"},
+{text:"t",url:"functions_vars.html#index_t"},
+{text:"u",url:"functions_vars.html#index_u"},
+{text:"x",url:"functions_vars.html#index_x"},
+{text:"y",url:"functions_vars.html#index_y"}]},
 {text:"Related Functions",url:"functions_rela.html"}]}]},
 {text:"Files",url:"files.html",children:[
-{text:"File List",url:"files.html"}]},
+{text:"File List",url:"files.html"},
+{text:"File Members",url:"globals.html",children:[
+{text:"All",url:"globals.html"},
+{text:"Functions",url:"globals_func.html"},
+{text:"Variables",url:"globals_vars.html"},
+{text:"Macros",url:"globals_defs.html"}]}]},
 {text:"Examples",url:"examples.html"}]}

+ 398 - 34
namespacedoor.html

@@ -94,6 +94,7 @@ Classes</h2></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">ANSI <a class="el" href="classdoor_1_1Goto.html" title="ANSI Goto X, Y position.">Goto</a> X, Y position.  <a href="classdoor_1_1Goto.html#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1IConv.html">IConv</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Converts from one encoding to another. Uses iconv (international conversion) API.  <a href="classdoor_1_1IConv.html#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classdoor_1_1Line.html">Line</a></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Text and <a class="el" href="classdoor_1_1ANSIColor.html" title="Foreground, Background and Attributes.">ANSIColor</a>.  <a href="classdoor_1_1Line.html#details">More...</a><br /></td></tr>
@@ -170,23 +171,23 @@ Enumerations</h2></td></tr>
 Functions</h2></td></tr>
 <tr class="memitem:ae6c40e2e917f64a9c42d977a88fe18fa"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ae6c40e2e917f64a9c42d977a88fe18fa">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1ANSIColor.html">ANSIColor</a> &amp;c)</td></tr>
 <tr class="separator:ae6c40e2e917f64a9c42d977a88fe18fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:afa94e91868d469077e4d3b400dedfd6c"><td class="memItemLeft" align="right" valign="top"><a id="afa94e91868d469077e4d3b400dedfd6c"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>to_lower</b> (std::string &amp;text)</td></tr>
+<tr class="memitem:afa94e91868d469077e4d3b400dedfd6c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">to_lower</a> (std::string &amp;text)</td></tr>
+<tr class="memdesc:afa94e91868d469077e4d3b400dedfd6c"><td class="mdescLeft">&#160;</td><td class="mdescRight">convert string to lowercase  <a href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">More...</a><br /></td></tr>
 <tr class="separator:afa94e91868d469077e4d3b400dedfd6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memItemLeft" align="right" valign="top"><a id="acba445fc4d33e1b0c1ff2b648cc2899d"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>replace</b> (std::string &amp;str, const std::string &amp;from, const std::string &amp;to)</td></tr>
+<tr class="memitem:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">replace</a> (std::string &amp;str, const std::string &amp;from, const std::string &amp;to)</td></tr>
+<tr class="memdesc:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replace all instances of from with to.  <a href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">More...</a><br /></td></tr>
 <tr class="separator:acba445fc4d33e1b0c1ff2b648cc2899d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memItemLeft" align="right" valign="top"><a id="a5cc0209e9203231d1bdb1e6b7f0876c3"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>replace</b> (std::string &amp;str, const char *from, const char *to)</td></tr>
+<tr class="memitem:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5cc0209e9203231d1bdb1e6b7f0876c3">replace</a> (std::string &amp;str, const char *from, const char *to)</td></tr>
+<tr class="memdesc:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Replace all instances of from with to.  <a href="namespacedoor.html#a5cc0209e9203231d1bdb1e6b7f0876c3">More...</a><br /></td></tr>
 <tr class="separator:a5cc0209e9203231d1bdb1e6b7f0876c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memItemLeft" align="right" valign="top"><a id="a4fc2f3f7f1b3908cb71bd1d275594fe9"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>sig_handler</b> (int signal)</td></tr>
+<tr class="memitem:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">sig_handler</a> (int signal)</td></tr>
+<tr class="memdesc:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Signal handler for detecting hangup/broken pipe.  <a href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">More...</a><br /></td></tr>
 <tr class="separator:a4fc2f3f7f1b3908cb71bd1d275594fe9"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memItemLeft" align="right" valign="top"><a id="a5efa4fb96eacd6b90e5cbb0bd985f3fc"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>cp437toUnicode</b> (std::string input, std::string &amp;out)</td></tr>
+<tr class="memitem:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">cp437toUnicode</a> (std::string input, std::string &amp;out)</td></tr>
+<tr class="memdesc:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from CP437 to unicode.  <a href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">More...</a><br /></td></tr>
 <tr class="separator:a5efa4fb96eacd6b90e5cbb0bd985f3fc"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memItemLeft" align="right" valign="top"><a id="a7e94df0d0af14da619835aa90cfa8f2a"></a>
-void&#160;</td><td class="memItemRight" valign="bottom"><b>cp437toUnicode</b> (const char *input, std::string &amp;out)</td></tr>
+<tr class="memitem:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a7e94df0d0af14da619835aa90cfa8f2a">cp437toUnicode</a> (const char *input, std::string &amp;out)</td></tr>
+<tr class="memdesc:a7e94df0d0af14da619835aa90cfa8f2a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert from CP437 to unicode.  <a href="namespacedoor.html#a7e94df0d0af14da619835aa90cfa8f2a">More...</a><br /></td></tr>
 <tr class="separator:a7e94df0d0af14da619835aa90cfa8f2a"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ad5d6277de5e8274cec970a4633d713b1"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ad5d6277de5e8274cec970a4633d713b1">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Clrscr.html">Clrscr</a> &amp;clr)</td></tr>
 <tr class="separator:ad5d6277de5e8274cec970a4633d713b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -196,11 +197,11 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>cp437toUnicode</b> (c
 <tr class="separator:aae6ca4805185baa51dcc661a69fa801b"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:af3c1c222a45143cfa4e780cfb2e45243"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#af3c1c222a45143cfa4e780cfb2e45243">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Line.html">Line</a> &amp;l)</td></tr>
 <tr class="separator:af3c1c222a45143cfa4e780cfb2e45243"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a10848399ef2da2947ceb98b7707a688f"><td class="memItemLeft" align="right" valign="top"><a id="a10848399ef2da2947ceb98b7707a688f"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;p)</td></tr>
+<tr class="memitem:a10848399ef2da2947ceb98b7707a688f"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a10848399ef2da2947ceb98b7707a688f">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;p)</td></tr>
+<tr class="memdesc:a10848399ef2da2947ceb98b7707a688f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Output panel to stream.  <a href="namespacedoor.html#a10848399ef2da2947ceb98b7707a688f">More...</a><br /></td></tr>
 <tr class="separator:a10848399ef2da2947ceb98b7707a688f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memItemLeft" align="right" valign="top"><a id="a5ca5f798bc38b4e5dc1e482ace47b7df"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator&lt;&lt;</b> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;s)</td></tr>
+<tr class="memitem:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5ca5f798bc38b4e5dc1e482ace47b7df">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;s)</td></tr>
+<tr class="memdesc:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs screen to stream.  <a href="namespacedoor.html#a5ca5f798bc38b4e5dc1e482ace47b7df">More...</a><br /></td></tr>
 <tr class="separator:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
@@ -209,35 +210,42 @@ Variables</h2></td></tr>
 <tr class="memdesc:ae3a70989c43f6cb3522308af748b4481"><td class="mdescLeft">&#160;</td><td class="mdescRight">reset colors to normal  <a href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">More...</a><br /></td></tr>
 <tr class="separator:ae3a70989c43f6cb3522308af748b4481"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a1626abff63f7a1b9dc696969c860283b"><td class="memItemLeft" align="right" valign="top"><a id="a1626abff63f7a1b9dc696969c860283b"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>unicode</b> = false</td></tr>
+bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">unicode</a> = false</td></tr>
+<tr class="memdesc:a1626abff63f7a1b9dc696969c860283b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Was unicode detected? <br /></td></tr>
 <tr class="separator:a1626abff63f7a1b9dc696969c860283b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aeade8b521c7f95755fdb166727c2b87c"><td class="memItemLeft" align="right" valign="top"><a id="aeade8b521c7f95755fdb166727c2b87c"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>full_cp437</b> = false</td></tr>
+<tr class="memitem:aeade8b521c7f95755fdb166727c2b87c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">full_cp437</a> = false</td></tr>
+<tr class="memdesc:aeade8b521c7f95755fdb166727c2b87c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Was full CP437 detected?  <a href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">More...</a><br /></td></tr>
 <tr class="separator:aeade8b521c7f95755fdb166727c2b87c"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac39a1dfdb8dec210d28133625f860bc1"><td class="memItemLeft" align="right" valign="top"><a id="ac39a1dfdb8dec210d28133625f860bc1"></a>
-bool&#160;</td><td class="memItemRight" valign="bottom"><b>debug_capture</b> = false</td></tr>
+<tr class="memitem:ac39a1dfdb8dec210d28133625f860bc1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">debug_capture</a> = false</td></tr>
+<tr class="memdesc:ac39a1dfdb8dec210d28133625f860bc1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Capture the output for debugging. <br  />
+  <a href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">More...</a><br /></td></tr>
 <tr class="separator:ac39a1dfdb8dec210d28133625f860bc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ac70193caf66e4b9aed1529593727a6eb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdoor_1_1Clrscr.html">Clrscr</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">cls</a></td></tr>
 <tr class="separator:ac70193caf66e4b9aed1529593727a6eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a36352ded72aee66b10e1bda6d3d8efb8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classdoor_1_1NewLine.html">NewLine</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">nl</a></td></tr>
 <tr class="separator:a36352ded72aee66b10e1bda6d3d8efb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aa6a7c86274470fd22e45676ba6eebb36"><td class="memItemLeft" align="right" valign="top"><a id="aa6a7c86274470fd22e45676ba6eebb36"></a>
-const char&#160;</td><td class="memItemRight" valign="bottom"><b>SaveCursor</b> [] = &quot;\x1b[s&quot;</td></tr>
+const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">SaveCursor</a> [] = &quot;\x1b[s&quot;</td></tr>
+<tr class="memdesc:aa6a7c86274470fd22e45676ba6eebb36"><td class="mdescLeft">&#160;</td><td class="mdescRight">ANSI Save Cursor position command. <br /></td></tr>
 <tr class="separator:aa6a7c86274470fd22e45676ba6eebb36"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a1ae3caab423b38b35e887d79b5ac1811"><td class="memItemLeft" align="right" valign="top"><a id="a1ae3caab423b38b35e887d79b5ac1811"></a>
-const char&#160;</td><td class="memItemRight" valign="bottom"><b>RestoreCursor</b> [] = &quot;\x1b[u&quot;</td></tr>
+const char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">RestoreCursor</a> [] = &quot;\x1b[u&quot;</td></tr>
+<tr class="memdesc:a1ae3caab423b38b35e887d79b5ac1811"><td class="mdescLeft">&#160;</td><td class="mdescRight">ANSI Restore Cursor position command. <br /></td></tr>
 <tr class="separator:a1ae3caab423b38b35e887d79b5ac1811"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a3274dff22ddb19a3e429a703ee6f3e57"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacedoor.html#ad9c2405adaa0b5168bc53059b3a978c1">renderFunction</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">rBlueYellow</a></td></tr>
 <tr class="memdesc:a3274dff22ddb19a3e429a703ee6f3e57"><td class="mdescLeft">&#160;</td><td class="mdescRight">BlueYellow <a class="el" href="classdoor_1_1Render.html" title="Rendering a string with ANSIColor.">Render</a> example function.  <a href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">More...</a><br /></td></tr>
 <tr class="separator:a3274dff22ddb19a3e429a703ee6f3e57"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">UBOXES</a> []</td></tr>
+<tr class="memdesc:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unicode box characters.  <a href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">More...</a><br /></td></tr>
 <tr class="separator:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memItemLeft" align="right" valign="top"><a id="a018157cf945eeb22c9a1bc4fefff84ed"></a>
-struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;</td><td class="memItemRight" valign="bottom"><b>BOXES</b> []</td></tr>
+<tr class="memitem:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">BOXES</a> []</td></tr>
+<tr class="memdesc:a018157cf945eeb22c9a1bc4fefff84ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">CP437 box characters.  <a href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">More...</a><br /></td></tr>
 <tr class="separator:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><b>JOIN</b> [2][2][2]</td></tr>
+<tr class="memitem:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">JOIN</a> [2][2][2]</td></tr>
+<tr class="memdesc:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="mdescLeft">&#160;</td><td class="mdescRight">CP437 box line joining data.  <a href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">More...</a><br /></td></tr>
 <tr class="separator:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad19e1b85072846f56b4f578410a5587e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><b>UJOIN</b> [2][2][2]</td></tr>
+<tr class="memitem:ad19e1b85072846f56b4f578410a5587e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">UJOIN</a> [2][2][2]</td></tr>
+<tr class="memdesc:ad19e1b85072846f56b4f578410a5587e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unicode box line joining data SINGLE 0, DOUBLE 1 Join Border to <a class="el" href="classdoor_1_1Line.html" title="Text and ANSIColor.">Line</a>, 0 is Left, 1 is Right.  <a href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">More...</a><br /></td></tr>
 <tr class="separator:ad19e1b85072846f56b4f578410a5587e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
@@ -441,8 +449,82 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </div>
 </div>
 <h2 class="groupheader">Function Documentation</h2>
+<a id="a7e94df0d0af14da619835aa90cfa8f2a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7e94df0d0af14da619835aa90cfa8f2a">&#9670;&nbsp;</a></span>cp437toUnicode() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void door::cp437toUnicode </td>
+          <td>(</td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>input</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>out</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Convert from CP437 to unicode. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">input</td><td></td></tr>
+    <tr><td class="paramname">out</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a id="a5efa4fb96eacd6b90e5cbb0bd985f3fc"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5efa4fb96eacd6b90e5cbb0bd985f3fc">&#9670;&nbsp;</a></span>cp437toUnicode() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void door::cp437toUnicode </td>
+          <td>(</td>
+          <td class="paramtype">std::string&#160;</td>
+          <td class="paramname"><em>input</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>out</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Convert from CP437 to unicode. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">input</td><td></td></tr>
+    <tr><td class="paramname">out</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
 <a id="ae6c40e2e917f64a9c42d977a88fe18fa"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#ae6c40e2e917f64a9c42d977a88fe18fa">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[1/5]</span></h2>
+<h2 class="memtitle"><span class="permalink"><a href="#ae6c40e2e917f64a9c42d977a88fe18fa">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[1/7]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -471,7 +553,7 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </div>
 </div>
 <a id="ad5d6277de5e8274cec970a4633d713b1"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#ad5d6277de5e8274cec970a4633d713b1">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[2/5]</span></h2>
+<h2 class="memtitle"><span class="permalink"><a href="#ad5d6277de5e8274cec970a4633d713b1">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[2/7]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -509,7 +591,7 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </div>
 </div>
 <a id="aae6ca4805185baa51dcc661a69fa801b"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#aae6ca4805185baa51dcc661a69fa801b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[3/5]</span></h2>
+<h2 class="memtitle"><span class="permalink"><a href="#aae6ca4805185baa51dcc661a69fa801b">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[3/7]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -549,7 +631,7 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </div>
 </div>
 <a id="af3c1c222a45143cfa4e780cfb2e45243"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#af3c1c222a45143cfa4e780cfb2e45243">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[4/5]</span></h2>
+<h2 class="memtitle"><span class="permalink"><a href="#af3c1c222a45143cfa4e780cfb2e45243">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[4/7]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -587,7 +669,7 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </div>
 </div>
 <a id="aa6b909ef984a2aabc5b9a570884dff94"></a>
-<h2 class="memtitle"><span class="permalink"><a href="#aa6b909ef984a2aabc5b9a570884dff94">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[5/5]</span></h2>
+<h2 class="memtitle"><span class="permalink"><a href="#aa6b909ef984a2aabc5b9a570884dff94">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[5/7]</span></h2>
 
 <div class="memitem">
 <div class="memproto">
@@ -620,9 +702,249 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>std::ostream&amp; </dd></dl>
 
+</div>
+</div>
+<a id="a10848399ef2da2947ceb98b7707a688f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a10848399ef2da2947ceb98b7707a688f">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[6/7]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::ostream&amp; door::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classdoor_1_1Panel.html">Panel</a> &amp;&#160;</td>
+          <td class="paramname"><em>p</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Output panel to stream. </p>
+<p>This uses the Panel.x, Panel.y to render the panel using ANSI control codes. Border style is considered, and wether or not we are using unicode. Colors of the border, and lines use their color or their renderFunction. </p><dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">os</td><td></td></tr>
+    <tr><td class="paramname">p</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>std::ostream&amp; </dd></dl>
+
+</div>
+</div>
+<a id="a5ca5f798bc38b4e5dc1e482ace47b7df"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5ca5f798bc38b4e5dc1e482ace47b7df">&#9670;&nbsp;</a></span>operator&lt;&lt;() <span class="overload">[7/7]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">std::ostream&amp; door::operator&lt;&lt; </td>
+          <td>(</td>
+          <td class="paramtype">std::ostream &amp;&#160;</td>
+          <td class="paramname"><em>os</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const <a class="el" href="classdoor_1_1Screen.html">Screen</a> &amp;&#160;</td>
+          <td class="paramname"><em>s</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Outputs screen to stream. </p>
+<p>This iterates over the panels, and renders them. See <a class="el" href="classdoor_1_1Panel.html">door::Panel</a></p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">os</td><td></td></tr>
+    <tr><td class="paramname">s</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>std::ostream&amp; </dd></dl>
+
+</div>
+</div>
+<a id="a5cc0209e9203231d1bdb1e6b7f0876c3"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a5cc0209e9203231d1bdb1e6b7f0876c3">&#9670;&nbsp;</a></span>replace() <span class="overload">[1/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool door::replace </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>str</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>from</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>to</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Replace all instances of from with to. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">str</td><td></td></tr>
+    <tr><td class="paramname">from</td><td></td></tr>
+    <tr><td class="paramname">to</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true </dd>
+<dd>
+false </dd></dl>
+
+</div>
+</div>
+<a id="acba445fc4d33e1b0c1ff2b648cc2899d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#acba445fc4d33e1b0c1ff2b648cc2899d">&#9670;&nbsp;</a></span>replace() <span class="overload">[2/2]</span></h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool door::replace </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>str</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>from</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const std::string &amp;&#160;</td>
+          <td class="paramname"><em>to</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Replace all instances of from with to. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">str</td><td></td></tr>
+    <tr><td class="paramname">from</td><td></td></tr>
+    <tr><td class="paramname">to</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>true </dd>
+<dd>
+false </dd></dl>
+
+</div>
+</div>
+<a id="a4fc2f3f7f1b3908cb71bd1d275594fe9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4fc2f3f7f1b3908cb71bd1d275594fe9">&#9670;&nbsp;</a></span>sig_handler()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void door::sig_handler </td>
+          <td>(</td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>signal</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Signal handler for detecting hangup/broken pipe. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">signal</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<a id="afa94e91868d469077e4d3b400dedfd6c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#afa94e91868d469077e4d3b400dedfd6c">&#9670;&nbsp;</a></span>to_lower()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">void door::to_lower </td>
+          <td>(</td>
+          <td class="paramtype">std::string &amp;&#160;</td>
+          <td class="paramname"><em>text</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>convert string to lowercase </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramname">text</td><td></td></tr>
+  </table>
+  </dd>
+</dl>
+
 </div>
 </div>
 <h2 class="groupheader">Variable Documentation</h2>
+<a id="a018157cf945eeb22c9a1bc4fefff84ed"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a018157cf945eeb22c9a1bc4fefff84ed">&#9670;&nbsp;</a></span>BOXES</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a> door::BOXES[]</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>CP437 box characters. </p>
+<p>top-left, top-right, top, side, bottom-left, bottom-right, middle-left, middle-right See <a class="el" href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91">BorderStyle</a> for the order the boxes are in. </p>
+
+</div>
+</div>
 <a id="ac70193caf66e4b9aed1529593727a6eb"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#ac70193caf66e4b9aed1529593727a6eb">&#9670;&nbsp;</a></span>cls</h2>
 
@@ -638,6 +960,41 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 <dl class="section examples"><dt>Examples</dt><dd><a class="el" href="door-example_8cpp-example.html#a2">door-example.cpp</a>, and <a class="el" href="menu-example_8cpp-example.html#a2">menu-example.cpp</a>.</dd>
 </dl>
 
+</div>
+</div>
+<a id="ac39a1dfdb8dec210d28133625f860bc1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ac39a1dfdb8dec210d28133625f860bc1">&#9670;&nbsp;</a></span>debug_capture</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool door::debug_capture = false</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Capture the output for debugging. <br  />
+ </p>
+<p>This is used by the tests. </p>
+
+</div>
+</div>
+<a id="aeade8b521c7f95755fdb166727c2b87c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeade8b521c7f95755fdb166727c2b87c">&#9670;&nbsp;</a></span>full_cp437</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">bool door::full_cp437 = false</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Was full CP437 detected? </p>
+<p>This is for full CP437 support, meaning it also supports hearts, diamonds, spades, clubs char(3)..char(6). These are sometimes ignored by CP437 translation programs as control codes. </p>
+
 </div>
 </div>
 <a id="aa7aaca15a8885a3ef3a6c85cd40ae617"></a>
@@ -660,6 +1017,9 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 <div class="line">                                 {<span class="stringliteral">&quot;\xcc&quot;</span>, <span class="stringliteral">&quot;\xb9&quot;</span>}, </div>
 <div class="line">                             }}</div>
 </div><!-- fragment -->
+<p>CP437 box line joining data. </p>
+<p>SINGLE 0, DOUBLE 1 Join Border to <a class="el" href="classdoor_1_1Line.html" title="Text and ANSIColor.">Line</a>, 0 is Left, 1 is Right. </p>
+
 </div>
 </div>
 <a id="a36352ded72aee66b10e1bda6d3d8efb8"></a>
@@ -748,8 +1108,10 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 <div class="line">                               <span class="stringliteral">&quot;\u255c&quot;</span>, <span class="stringliteral">&quot;\u255f&quot;</span>, <span class="stringliteral">&quot;\u2562&quot;</span>},</div>
 <div class="line">                              {<span class="stringliteral">&quot;\u2552&quot;</span>, <span class="stringliteral">&quot;\u2555&quot;</span>, <span class="stringliteral">&quot;\u2550&quot;</span>, <span class="stringliteral">&quot;\u2502&quot;</span>, <span class="stringliteral">&quot;\u2558&quot;</span>,</div>
 <div class="line">                               <span class="stringliteral">&quot;\u255b&quot;</span>, <span class="stringliteral">&quot;\u255e&quot;</span>, <span class="stringliteral">&quot;\u2561&quot;</span>}}</div>
-</div><!-- fragment --><p>use <a href="https://en.wikipedia.org/wiki/Code_page_437">https://en.wikipedia.org/wiki/Code_page_437</a> for translations between CP437 and unicode symbols.</p>
-<p>This holds the characters needed to render the different box styles. tl tr top side bl br ml mr </p>
+</div><!-- fragment -->
+<p>Unicode box characters. </p>
+<p>use <a href="https://en.wikipedia.org/wiki/Code_page_437">https://en.wikipedia.org/wiki/Code_page_437</a> for translations between CP437 and unicode symbols.</p>
+<p>This holds the characters needed to render the different box styles. tl tr top side bl br ml mr top-left, top-right, top, side, bottom-left, bottom-right, middle-left, middle-right See <a class="el" href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91">BorderStyle</a> for the order the boxes are in. </p>
 
 </div>
 </div>
@@ -773,6 +1135,8 @@ struct <a class="el" href="structdoor_1_1box__styles.html">box_styles</a>&#160;<
 <div class="line">                                  {<span class="stringliteral">&quot;\u2560&quot;</span>, <span class="stringliteral">&quot;\u2563&quot;</span>}, </div>
 <div class="line">                              }}</div>
 </div><!-- fragment -->
+<p>Unicode box line joining data SINGLE 0, DOUBLE 1 Join Border to <a class="el" href="classdoor_1_1Line.html" title="Text and ANSIColor.">Line</a>, 0 is Left, 1 is Right. </p>
+
 </div>
 </div>
 </div><!-- contents -->

+ 83 - 1
namespacemembers.html

@@ -61,40 +61,122 @@ $(function() {
 </div>
 
 <div class="contents">
-<div class="textblock">Here is a list of all documented namespace members with links to the namespaces they belong to:</div><ul>
+<div class="textblock">Here is a list of all documented namespace members with links to the namespaces they belong to:</div>
+
+<h3><a id="index_a"></a>- a -</h3><ul>
 <li>ATTR
 : <a class="el" href="namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52">door</a>
 </li>
+</ul>
+
+
+<h3><a id="index_b"></a>- b -</h3><ul>
 <li>BorderStyle
 : <a class="el" href="namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91">door</a>
 </li>
+<li>BOXES
+: <a class="el" href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_c"></a>- c -</h3><ul>
 <li>cls
 : <a class="el" href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door</a>
 </li>
 <li>COLOR
 : <a class="el" href="namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366">door</a>
 </li>
+<li>cp437toUnicode()
+: <a class="el" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_d"></a>- d -</h3><ul>
+<li>debug_capture
+: <a class="el" href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_f"></a>- f -</h3><ul>
+<li>full_cp437
+: <a class="el" href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_j"></a>- j -</h3><ul>
+<li>JOIN
+: <a class="el" href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">door</a>
+</li>
 <li>Justify
 : <a class="el" href="namespacedoor.html#af025775fb0b68d66dc42ee3299444fb7">door</a>
 </li>
+</ul>
+
+
+<h3><a id="index_n"></a>- n -</h3><ul>
 <li>nl
 : <a class="el" href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door</a>
 </li>
+</ul>
+
+
+<h3><a id="index_o"></a>- o -</h3><ul>
 <li>operator&lt;&lt;()
 : <a class="el" href="namespacedoor.html#ae6c40e2e917f64a9c42d977a88fe18fa">door</a>
 </li>
+</ul>
+
+
+<h3><a id="index_r"></a>- r -</h3><ul>
 <li>rBlueYellow
 : <a class="el" href="namespacedoor.html#a3274dff22ddb19a3e429a703ee6f3e57">door</a>
 </li>
 <li>renderFunction
 : <a class="el" href="namespacedoor.html#ad9c2405adaa0b5168bc53059b3a978c1">door</a>
 </li>
+<li>replace()
+: <a class="el" href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">door</a>
+</li>
 <li>reset
 : <a class="el" href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">door</a>
 </li>
+<li>RestoreCursor
+: <a class="el" href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_s"></a>- s -</h3><ul>
+<li>SaveCursor
+: <a class="el" href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">door</a>
+</li>
+<li>sig_handler()
+: <a class="el" href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_t"></a>- t -</h3><ul>
+<li>to_lower()
+: <a class="el" href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">door</a>
+</li>
+</ul>
+
+
+<h3><a id="index_u"></a>- u -</h3><ul>
 <li>UBOXES
 : <a class="el" href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">door</a>
 </li>
+<li>UJOIN
+: <a class="el" href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">door</a>
+</li>
+<li>unicode
+: <a class="el" href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">door</a>
+</li>
 <li>updateFunction
 : <a class="el" href="namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e">door</a>
 </li>

+ 12 - 0
namespacemembers_func.html

@@ -62,9 +62,21 @@ $(function() {
 
 <div class="contents">
 &#160;<ul>
+<li>cp437toUnicode()
+: <a class="el" href="namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc">door</a>
+</li>
 <li>operator&lt;&lt;()
 : <a class="el" href="namespacedoor.html#ae6c40e2e917f64a9c42d977a88fe18fa">door</a>
 </li>
+<li>replace()
+: <a class="el" href="namespacedoor.html#acba445fc4d33e1b0c1ff2b648cc2899d">door</a>
+</li>
+<li>sig_handler()
+: <a class="el" href="namespacedoor.html#a4fc2f3f7f1b3908cb71bd1d275594fe9">door</a>
+</li>
+<li>to_lower()
+: <a class="el" href="namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c">door</a>
+</li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->

+ 24 - 0
namespacemembers_vars.html

@@ -62,9 +62,21 @@ $(function() {
 
 <div class="contents">
 &#160;<ul>
+<li>BOXES
+: <a class="el" href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">door</a>
+</li>
 <li>cls
 : <a class="el" href="namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb">door</a>
 </li>
+<li>debug_capture
+: <a class="el" href="namespacedoor.html#ac39a1dfdb8dec210d28133625f860bc1">door</a>
+</li>
+<li>full_cp437
+: <a class="el" href="namespacedoor.html#aeade8b521c7f95755fdb166727c2b87c">door</a>
+</li>
+<li>JOIN
+: <a class="el" href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">door</a>
+</li>
 <li>nl
 : <a class="el" href="namespacedoor.html#a36352ded72aee66b10e1bda6d3d8efb8">door</a>
 </li>
@@ -74,9 +86,21 @@ $(function() {
 <li>reset
 : <a class="el" href="namespacedoor.html#ae3a70989c43f6cb3522308af748b4481">door</a>
 </li>
+<li>RestoreCursor
+: <a class="el" href="namespacedoor.html#a1ae3caab423b38b35e887d79b5ac1811">door</a>
+</li>
+<li>SaveCursor
+: <a class="el" href="namespacedoor.html#aa6a7c86274470fd22e45676ba6eebb36">door</a>
+</li>
 <li>UBOXES
 : <a class="el" href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">door</a>
 </li>
+<li>UJOIN
+: <a class="el" href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">door</a>
+</li>
+<li>unicode
+: <a class="el" href="namespacedoor.html#a1626abff63f7a1b9dc696969c860283b">door</a>
+</li>
 </ul>
 </div><!-- contents -->
 <!-- start footer part -->

+ 27 - 27
panel_8cpp.html

@@ -81,25 +81,22 @@ Include dependency graph for panel.cpp:</div>
 <div class="dyncontent">
 <div class="center"><img src="panel_8cpp__incl.png" border="0" usemap="#panel_8cpp" alt=""/></div>
 <map name="panel_8cpp" id="panel_8cpp">
-<area shape="rect" title="Panels and Menus." alt="" coords="655,5,741,32"/>
-<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="589,80,652,107"/>
-<area shape="rect" title=" " alt="" coords="677,80,719,107"/>
-<area shape="rect" title=" " alt="" coords="744,80,815,107"/>
-<area shape="rect" href="anyoption_8h_source.html" title=" " alt="" coords="181,155,279,181"/>
-<area shape="rect" title=" " alt="" coords="5,229,79,256"/>
-<area shape="rect" title=" " alt="" coords="373,229,453,256"/>
-<area shape="rect" title=" " alt="" coords="354,155,421,181"/>
-<area shape="rect" title=" " alt="" coords="445,155,503,181"/>
-<area shape="rect" title=" " alt="" coords="528,155,615,181"/>
-<area shape="rect" title=" " alt="" coords="639,155,701,181"/>
-<area shape="rect" title=" " alt="" coords="725,155,802,181"/>
-<area shape="rect" title=" " alt="" coords="827,155,903,181"/>
-<area shape="rect" title=" " alt="" coords="927,155,989,181"/>
-<area shape="rect" title=" " alt="" coords="1013,155,1097,181"/>
-<area shape="rect" title=" " alt="" coords="1122,155,1197,181"/>
-<area shape="rect" title=" " alt="" coords="103,229,170,256"/>
-<area shape="rect" title=" " alt="" coords="195,229,265,256"/>
-<area shape="rect" title=" " alt="" coords="290,229,349,256"/>
+<area shape="rect" title="Panels and Menus." alt="" coords="623,5,708,32"/>
+<area shape="rect" href="door_8h_source.html" title=" " alt="" coords="557,80,619,107"/>
+<area shape="rect" title=" " alt="" coords="644,80,687,107"/>
+<area shape="rect" title=" " alt="" coords="711,80,782,107"/>
+<area shape="rect" title=" " alt="" coords="5,155,104,181"/>
+<area shape="rect" title=" " alt="" coords="128,155,195,181"/>
+<area shape="rect" title=" " alt="" coords="219,155,277,181"/>
+<area shape="rect" title=" " alt="" coords="302,155,375,181"/>
+<area shape="rect" title=" " alt="" coords="399,155,486,181"/>
+<area shape="rect" title=" " alt="" coords="511,155,572,181"/>
+<area shape="rect" title=" " alt="" coords="596,155,676,181"/>
+<area shape="rect" title=" " alt="" coords="700,155,777,181"/>
+<area shape="rect" title=" " alt="" coords="802,155,878,181"/>
+<area shape="rect" title=" " alt="" coords="902,155,965,181"/>
+<area shape="rect" title=" " alt="" coords="989,155,1073,181"/>
+<area shape="rect" title=" " alt="" coords="1097,155,1172,181"/>
 </map>
 </div>
 </div><table class="memberdecls">
@@ -116,23 +113,26 @@ Namespaces</h2></td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
 Functions</h2></td></tr>
-<tr class="memitem:a10848399ef2da2947ceb98b7707a688f"><td class="memItemLeft" align="right" valign="top"><a id="a10848399ef2da2947ceb98b7707a688f"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>door::operator&lt;&lt;</b> (std::ostream &amp;os, const Panel &amp;p)</td></tr>
+<tr class="memitem:a10848399ef2da2947ceb98b7707a688f"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a10848399ef2da2947ceb98b7707a688f">door::operator&lt;&lt;</a> (std::ostream &amp;os, const Panel &amp;p)</td></tr>
+<tr class="memdesc:a10848399ef2da2947ceb98b7707a688f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Output panel to stream.  <a href="namespacedoor.html#a10848399ef2da2947ceb98b7707a688f">More...</a><br /></td></tr>
 <tr class="separator:a10848399ef2da2947ceb98b7707a688f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memItemLeft" align="right" valign="top"><a id="a5ca5f798bc38b4e5dc1e482ace47b7df"></a>
-std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>door::operator&lt;&lt;</b> (std::ostream &amp;os, const Screen &amp;s)</td></tr>
+<tr class="memitem:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a5ca5f798bc38b4e5dc1e482ace47b7df">door::operator&lt;&lt;</a> (std::ostream &amp;os, const Screen &amp;s)</td></tr>
+<tr class="memdesc:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="mdescLeft">&#160;</td><td class="mdescRight">Outputs screen to stream.  <a href="namespacedoor.html#a5ca5f798bc38b4e5dc1e482ace47b7df">More...</a><br /></td></tr>
 <tr class="separator:a5ca5f798bc38b4e5dc1e482ace47b7df"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
 Variables</h2></td></tr>
 <tr class="memitem:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="memItemLeft" align="right" valign="top">struct box_styles&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">door::UBOXES</a> []</td></tr>
+<tr class="memdesc:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unicode box characters.  <a href="namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6">More...</a><br /></td></tr>
 <tr class="separator:aeafa2ff6deb9ddddaab458b89f10c4e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memItemLeft" align="right" valign="top"><a id="a018157cf945eeb22c9a1bc4fefff84ed"></a>
-struct box_styles&#160;</td><td class="memItemRight" valign="bottom"><b>door::BOXES</b> []</td></tr>
+<tr class="memitem:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memItemLeft" align="right" valign="top">struct box_styles&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">door::BOXES</a> []</td></tr>
+<tr class="memdesc:a018157cf945eeb22c9a1bc4fefff84ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">CP437 box characters.  <a href="namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed">More...</a><br /></td></tr>
 <tr class="separator:a018157cf945eeb22c9a1bc4fefff84ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><b>door::JOIN</b> [2][2][2]</td></tr>
+<tr class="memitem:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">door::JOIN</a> [2][2][2]</td></tr>
+<tr class="memdesc:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="mdescLeft">&#160;</td><td class="mdescRight">CP437 box line joining data.  <a href="namespacedoor.html#aa7aaca15a8885a3ef3a6c85cd40ae617">More...</a><br /></td></tr>
 <tr class="separator:aa7aaca15a8885a3ef3a6c85cd40ae617"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad19e1b85072846f56b4f578410a5587e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><b>door::UJOIN</b> [2][2][2]</td></tr>
+<tr class="memitem:ad19e1b85072846f56b4f578410a5587e"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">door::UJOIN</a> [2][2][2]</td></tr>
+<tr class="memdesc:ad19e1b85072846f56b4f578410a5587e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Unicode box line joining data SINGLE 0, DOUBLE 1 Join Border to <a class="el" href="classdoor_1_1Line.html" title="Text and ANSIColor.">Line</a>, 0 is Left, 1 is Right.  <a href="namespacedoor.html#ad19e1b85072846f56b4f578410a5587e">More...</a><br /></td></tr>
 <tr class="separator:ad19e1b85072846f56b4f578410a5587e"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table>
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>

+ 16 - 19
panel_8cpp__incl.map

@@ -1,21 +1,18 @@
 <map id="panel.cpp" name="panel.cpp">
-<area shape="rect" id="node1" title="Panels and Menus." alt="" coords="655,5,741,32"/>
-<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="589,80,652,107"/>
-<area shape="rect" id="node18" title=" " alt="" coords="677,80,719,107"/>
-<area shape="rect" id="node19" title=" " alt="" coords="744,80,815,107"/>
-<area shape="rect" id="node3" href="$anyoption_8h_source.html" title=" " alt="" coords="181,155,279,181"/>
-<area shape="rect" id="node5" title=" " alt="" coords="5,229,79,256"/>
-<area shape="rect" id="node6" title=" " alt="" coords="373,229,453,256"/>
-<area shape="rect" id="node9" title=" " alt="" coords="354,155,421,181"/>
-<area shape="rect" id="node10" title=" " alt="" coords="445,155,503,181"/>
-<area shape="rect" id="node11" title=" " alt="" coords="528,155,615,181"/>
-<area shape="rect" id="node12" title=" " alt="" coords="639,155,701,181"/>
-<area shape="rect" id="node13" title=" " alt="" coords="725,155,802,181"/>
-<area shape="rect" id="node14" title=" " alt="" coords="827,155,903,181"/>
-<area shape="rect" id="node15" title=" " alt="" coords="927,155,989,181"/>
-<area shape="rect" id="node16" title=" " alt="" coords="1013,155,1097,181"/>
-<area shape="rect" id="node17" title=" " alt="" coords="1122,155,1197,181"/>
-<area shape="rect" id="node4" title=" " alt="" coords="103,229,170,256"/>
-<area shape="rect" id="node7" title=" " alt="" coords="195,229,265,256"/>
-<area shape="rect" id="node8" title=" " alt="" coords="290,229,349,256"/>
+<area shape="rect" id="node1" title="Panels and Menus." alt="" coords="623,5,708,32"/>
+<area shape="rect" id="node2" href="$door_8h_source.html" title=" " alt="" coords="557,80,619,107"/>
+<area shape="rect" id="node15" title=" " alt="" coords="644,80,687,107"/>
+<area shape="rect" id="node16" title=" " alt="" coords="711,80,782,107"/>
+<area shape="rect" id="node3" title=" " alt="" coords="5,155,104,181"/>
+<area shape="rect" id="node4" title=" " alt="" coords="128,155,195,181"/>
+<area shape="rect" id="node5" title=" " alt="" coords="219,155,277,181"/>
+<area shape="rect" id="node6" title=" " alt="" coords="302,155,375,181"/>
+<area shape="rect" id="node7" title=" " alt="" coords="399,155,486,181"/>
+<area shape="rect" id="node8" title=" " alt="" coords="511,155,572,181"/>
+<area shape="rect" id="node9" title=" " alt="" coords="596,155,676,181"/>
+<area shape="rect" id="node10" title=" " alt="" coords="700,155,777,181"/>
+<area shape="rect" id="node11" title=" " alt="" coords="802,155,878,181"/>
+<area shape="rect" id="node12" title=" " alt="" coords="902,155,965,181"/>
+<area shape="rect" id="node13" title=" " alt="" coords="989,155,1073,181"/>
+<area shape="rect" id="node14" title=" " alt="" coords="1097,155,1172,181"/>
 </map>

+ 1 - 1
panel_8cpp__incl.md5

@@ -1 +1 @@
-4e1aa2e421894139c3c10c3fd44837a0
+8b1c2c1fd49d86d95a1e9d725692dabc

BIN
panel_8cpp__incl.png


+ 2 - 3
search/all_0.js

@@ -3,7 +3,6 @@ var searchData=
   ['addselection_0',['addSelection',['../classdoor_1_1Menu.html#a07f4017a58539cb0e986702f024efd6c',1,'door::Menu']]],
   ['ansicolor_1',['ANSIColor',['../classdoor_1_1ANSIColor.html',1,'door::ANSIColor'],['../classdoor_1_1ANSIColor.html#abfa527e4328dc5168256da2ba21f5a50',1,'door::ANSIColor::ANSIColor()'],['../classdoor_1_1ANSIColor.html#a896a1733336c8d428a75273c42d3c522',1,'door::ANSIColor::ANSIColor(ATTR a)'],['../classdoor_1_1ANSIColor.html#a40613126b2df46cf18eaec22d09d9a5e',1,'door::ANSIColor::ANSIColor(COLOR f)'],['../classdoor_1_1ANSIColor.html#abf47e5ea1fe91c4a3bb0510426409b7a',1,'door::ANSIColor::ANSIColor(COLOR f, ATTR a)'],['../classdoor_1_1ANSIColor.html#ab9d4dfb2b6c6185942d3b415e793e167',1,'door::ANSIColor::ANSIColor(COLOR f, ATTR a1, ATTR a2)'],['../classdoor_1_1ANSIColor.html#a59952a60cc039b0c101db8fb0a9f0ed4',1,'door::ANSIColor::ANSIColor(COLOR f, COLOR b)'],['../classdoor_1_1ANSIColor.html#ae443d34754082a6217dbb7311f601385',1,'door::ANSIColor::ANSIColor(COLOR f, COLOR b, ATTR a)'],['../classdoor_1_1ANSIColor.html#a1723651e98446b8d3a7e9f20091de840',1,'door::ANSIColor::ANSIColor(COLOR f, COLOR b, ATTR a1, ATTR a2)']]],
   ['ansicolor_2ecpp_2',['ansicolor.cpp',['../ansicolor_8cpp.html',1,'']]],
-  ['anyoption_3',['AnyOption',['../classAnyOption.html',1,'']]],
-  ['append_4',['append',['../classdoor_1_1Render.html#a9c32f938c06d5d6b87d238ba6072324e',1,'door::Render']]],
-  ['attr_5',['Attr',['../classdoor_1_1ANSIColor.html#a9bc92fe3929de0d16f44ba4fb1837dd7',1,'door::ANSIColor::Attr()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52',1,'door::ATTR()']]]
+  ['append_3',['append',['../classdoor_1_1Render.html#a9c32f938c06d5d6b87d238ba6072324e',1,'door::Render']]],
+  ['attr_4',['Attr',['../classdoor_1_1ANSIColor.html#a9bc92fe3929de0d16f44ba4fb1837dd7',1,'door::ANSIColor::Attr()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52',1,'door::ATTR()']]]
 ];

+ 16 - 13
search/all_1.js

@@ -1,16 +1,19 @@
 var searchData=
 [
-  ['bg_6',['bg',['../classdoor_1_1ANSIColor.html#ade7213fff53121cefba77d4f8a187a64',1,'door::ANSIColor']]],
-  ['bl_7',['bl',['../structdoor_1_1box__styles.html#a0b7a5b7f3059a7f63a654be96cbaada6',1,'door::box_styles']]],
-  ['black_8',['BLACK',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a08d0012388564e95c3b4a7407cf04965',1,'door']]],
-  ['blank_9',['BLANK',['../namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91a56f031dd03707d695f76c63ddbf40bd7',1,'door']]],
-  ['blink_10',['blink',['../classdoor_1_1ANSIColor.html#af0c0998c248520613f87638f02ef48d8',1,'door::ANSIColor::blink()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52ad810ed8e97088a3c987f179dfb88cefc',1,'door::BLINK()']]],
-  ['blue_11',['BLUE',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f',1,'door']]],
-  ['bold_12',['bold',['../classdoor_1_1ANSIColor.html#a0d990141b78cb8264de9cab06dc1e8cf',1,'door::ANSIColor::bold()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19',1,'door::BOLD()']]],
-  ['borderstyle_13',['BorderStyle',['../namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91',1,'door']]],
-  ['box_5fstyles_14',['box_styles',['../structdoor_1_1box__styles.html',1,'door']]],
-  ['br_15',['br',['../structdoor_1_1box__styles.html#a1ac4103c69f98b408b295533afecd320',1,'door::box_styles']]],
-  ['bright_16',['BRIGHT',['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52aca78b38b9fe41e51b331abe6999a1040',1,'door']]],
-  ['brown_17',['BROWN',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a493cacf6f6a2ae4798b319b8b9ba9488',1,'door']]],
-  ['bug_20list_18',['Bug List',['../bug.html',1,'']]]
+  ['bg_5',['bg',['../classdoor_1_1ANSIColor.html#ade7213fff53121cefba77d4f8a187a64',1,'door::ANSIColor']]],
+  ['bl_6',['bl',['../structdoor_1_1box__styles.html#a0b7a5b7f3059a7f63a654be96cbaada6',1,'door::box_styles']]],
+  ['black_7',['BLACK',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a08d0012388564e95c3b4a7407cf04965',1,'door']]],
+  ['blank_8',['BLANK',['../namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91a56f031dd03707d695f76c63ddbf40bd7',1,'door']]],
+  ['blink_9',['blink',['../classdoor_1_1ANSIColor.html#af0c0998c248520613f87638f02ef48d8',1,'door::ANSIColor::blink()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52ad810ed8e97088a3c987f179dfb88cefc',1,'door::BLINK()']]],
+  ['blue_10',['BLUE',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a1b3e1ee9bff86431dea6b181365ba65f',1,'door']]],
+  ['bold_11',['bold',['../classdoor_1_1ANSIColor.html#a0d990141b78cb8264de9cab06dc1e8cf',1,'door::ANSIColor::bold()'],['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52a2909dd0e0336f10b6da9735b859a3d19',1,'door::BOLD()']]],
+  ['borderstyle_12',['BorderStyle',['../namespacedoor.html#a08afbc9eecb6efd7d4c741023b11db91',1,'door']]],
+  ['box_5fstyles_13',['box_styles',['../structdoor_1_1box__styles.html',1,'door']]],
+  ['boxes_14',['BOXES',['../namespacedoor.html#a018157cf945eeb22c9a1bc4fefff84ed',1,'door']]],
+  ['bpos_15',['bpos',['../getkey_8cpp.html#aaa0e5be04b9ee83acfdd443145061f47',1,'getkey.cpp']]],
+  ['br_16',['br',['../structdoor_1_1box__styles.html#a1ac4103c69f98b408b295533afecd320',1,'door::box_styles']]],
+  ['bright_17',['BRIGHT',['../namespacedoor.html#add24f9a933f9a6e613de6d56854e5c52aca78b38b9fe41e51b331abe6999a1040',1,'door']]],
+  ['brown_18',['BROWN',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a493cacf6f6a2ae4798b319b8b9ba9488',1,'door']]],
+  ['buffer_19',['buffer',['../getkey_8cpp.html#a92dfe6e9243e862063a0c3869f784557',1,'getkey.cpp']]],
+  ['bug_20list_20',['Bug List',['../bug.html',1,'']]]
 ];

+ 7 - 5
search/all_10.js

@@ -1,8 +1,10 @@
 var searchData=
 [
-  ['text_88',['text',['../classdoor_1_1Render.html#ada0caea3ba255104474a2f0bfa94d6d2',1,'door::Render::text()'],['../classdoor_1_1Line.html#a2008c67026c41f33bc2c8cb5f9787f3b',1,'door::Line::text()']]],
-  ['tl_89',['tl',['../structdoor_1_1box__styles.html#a7072dc5084e6cf1040cd2e3667046ed9',1,'door::box_styles']]],
-  ['todo_20list_90',['Todo List',['../todo.html',1,'']]],
-  ['top_91',['top',['../structdoor_1_1box__styles.html#aa491626e2734bc75c9c99eeff94c5425',1,'door::box_styles']]],
-  ['tr_92',['tr',['../structdoor_1_1box__styles.html#af444f493abe3213724e3ee839871266f',1,'door::box_styles']]]
+  ['text_105',['text',['../classdoor_1_1Render.html#ada0caea3ba255104474a2f0bfa94d6d2',1,'door::Render::text()'],['../classdoor_1_1Line.html#a2008c67026c41f33bc2c8cb5f9787f3b',1,'door::Line::text()']]],
+  ['tio_5fdefault_106',['tio_default',['../getkey_8cpp.html#ac317ff25d1fad1066feec2dd66179eec',1,'getkey.cpp']]],
+  ['tl_107',['tl',['../structdoor_1_1box__styles.html#a7072dc5084e6cf1040cd2e3667046ed9',1,'door::box_styles']]],
+  ['to_5flower_108',['to_lower',['../namespacedoor.html#afa94e91868d469077e4d3b400dedfd6c',1,'door']]],
+  ['todo_20list_109',['Todo List',['../todo.html',1,'']]],
+  ['top_110',['top',['../structdoor_1_1box__styles.html#aa491626e2734bc75c9c99eeff94c5425',1,'door::box_styles']]],
+  ['tr_111',['tr',['../structdoor_1_1box__styles.html#af444f493abe3213724e3ee839871266f',1,'door::box_styles']]]
 ];

+ 7 - 4
search/all_11.js

@@ -1,7 +1,10 @@
 var searchData=
 [
-  ['uboxes_93',['UBOXES',['../namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6',1,'door']]],
-  ['update_94',['update',['../classdoor_1_1Line.html#a00ec1edb246d442c4dc7ac2dc5876624',1,'door::Line::update()'],['../classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4',1,'door::Panel::update()']]],
-  ['updatefunction_95',['updateFunction',['../namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e',1,'door']]],
-  ['updater_96',['updater',['../classdoor_1_1Line.html#afe9688b3f58080fe437c0efaf7ab2949',1,'door::Line']]]
+  ['uboxes_112',['UBOXES',['../namespacedoor.html#aeafa2ff6deb9ddddaab458b89f10c4e6',1,'door']]],
+  ['ujoin_113',['UJOIN',['../namespacedoor.html#ad19e1b85072846f56b4f578410a5587e',1,'door']]],
+  ['unget_114',['unget',['../getkey_8cpp.html#a37118b1ee911d1447a495aa49f2926a5',1,'getkey.cpp']]],
+  ['unicode_115',['unicode',['../namespacedoor.html#a1626abff63f7a1b9dc696969c860283b',1,'door']]],
+  ['update_116',['update',['../classdoor_1_1Line.html#a00ec1edb246d442c4dc7ac2dc5876624',1,'door::Line::update()'],['../classdoor_1_1Panel.html#a57234d5f1d891ed8f9ea9c8c9be7aed4',1,'door::Panel::update()']]],
+  ['updatefunction_117',['updateFunction',['../namespacedoor.html#adb2697f83f8ce701366e05ed72c97d6e',1,'door']]],
+  ['updater_118',['updater',['../classdoor_1_1Line.html#afe9688b3f58080fe437c0efaf7ab2949',1,'door::Line']]]
 ];

+ 1 - 1
search/all_12.js

@@ -1,4 +1,4 @@
 var searchData=
 [
-  ['white_97',['WHITE',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d',1,'door']]]
+  ['white_119',['WHITE',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366ab5bf627e448384cf3a4c35121ca6008d',1,'door']]]
 ];

+ 2 - 2
search/all_13.js

@@ -1,5 +1,5 @@
 var searchData=
 [
-  ['x_98',['x',['../classdoor_1_1Goto.html#ad7ec5ef329c85fd0be0110f628a9106a',1,'door::Goto']]],
-  ['xsputn_99',['xsputn',['../classdoor_1_1Door.html#aad67bdb165987c4e3133a0f12f2b2b33',1,'door::Door']]]
+  ['x_120',['x',['../classdoor_1_1Goto.html#ad7ec5ef329c85fd0be0110f628a9106a',1,'door::Goto']]],
+  ['xsputn_121',['xsputn',['../classdoor_1_1Door.html#aad67bdb165987c4e3133a0f12f2b2b33',1,'door::Door']]]
 ];

+ 2 - 2
search/all_14.js

@@ -1,5 +1,5 @@
 var searchData=
 [
-  ['y_100',['y',['../classdoor_1_1Goto.html#a2ef887a839d1542dc2b7bbcbc4cd0477',1,'door::Goto']]],
-  ['yellow_101',['YELLOW',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e',1,'door']]]
+  ['y_122',['y',['../classdoor_1_1Goto.html#a2ef887a839d1542dc2b7bbcbc4cd0477',1,'door::Goto']]],
+  ['yellow_123',['YELLOW',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a8a568e5f41b7e4da88fe5c4a00aad34e',1,'door']]]
 ];

+ 10 - 7
search/all_2.js

@@ -1,10 +1,13 @@
 var searchData=
 [
-  ['c_19',['c',['../classdoor_1_1ColorOutput.html#ab53af885b8b1a296d197866bd4844fb0',1,'door::ColorOutput']]],
-  ['choose_20',['choose',['../classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e',1,'door::Menu']]],
-  ['clrscr_21',['Clrscr',['../classdoor_1_1Clrscr.html',1,'door::Clrscr'],['../classdoor_1_1Clrscr.html#a0611278ef387fce25ce1a7771b65096a',1,'door::Clrscr::Clrscr()']]],
-  ['cls_22',['cls',['../namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb',1,'door']]],
-  ['color_23',['color',['../classdoor_1_1Line.html#a3896c3006cac3435613732c29afc60ed',1,'door::Line::color()'],['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366',1,'door::COLOR()']]],
-  ['coloroutput_24',['ColorOutput',['../classdoor_1_1ColorOutput.html',1,'door::ColorOutput'],['../classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b',1,'door::ColorOutput::ColorOutput()']]],
-  ['cyan_25',['CYAN',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a344dd8cd533280795b9db82ef0c92749',1,'door']]]
+  ['c_21',['c',['../classdoor_1_1ColorOutput.html#ab53af885b8b1a296d197866bd4844fb0',1,'door::ColorOutput']]],
+  ['choose_22',['choose',['../classdoor_1_1Menu.html#a06da9157cc5984510153a6b93bf2e71e',1,'door::Menu']]],
+  ['clrscr_23',['Clrscr',['../classdoor_1_1Clrscr.html',1,'door::Clrscr'],['../classdoor_1_1Clrscr.html#a0611278ef387fce25ce1a7771b65096a',1,'door::Clrscr::Clrscr()']]],
+  ['cls_24',['cls',['../namespacedoor.html#ac70193caf66e4b9aed1529593727a6eb',1,'door']]],
+  ['color_25',['color',['../classdoor_1_1Line.html#a3896c3006cac3435613732c29afc60ed',1,'door::Line::color()'],['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366',1,'door::COLOR()']]],
+  ['coloroutput_26',['ColorOutput',['../classdoor_1_1ColorOutput.html',1,'door::ColorOutput'],['../classdoor_1_1ColorOutput.html#a96cbbca21d2df9181925b121b57bef6b',1,'door::ColorOutput::ColorOutput()']]],
+  ['convert_27',['convert',['../classdoor_1_1IConv.html#a65f19364b9b6a219dd88e8d8f18db8dc',1,'door::IConv']]],
+  ['cp437tounicode_28',['cp437toUnicode',['../namespacedoor.html#a5efa4fb96eacd6b90e5cbb0bd985f3fc',1,'door::cp437toUnicode(std::string input, std::string &amp;out)'],['../namespacedoor.html#a7e94df0d0af14da619835aa90cfa8f2a',1,'door::cp437toUnicode(const char *input, std::string &amp;out)']]],
+  ['crnl_29',['CRNL',['../getkey_8cpp.html#a05e8779289398e4e8028b7f94f6b8009',1,'getkey.cpp']]],
+  ['cyan_30',['CYAN',['../namespacedoor.html#abafe0a9e79349883af3ab2a7fb544366a344dd8cd533280795b9db82ef0c92749',1,'door']]]
 ];

Some files were not shown because too many files changed in this diff