aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a02472.html
diff options
context:
space:
mode:
authorneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
committerneodarz <neodarz@neodarz.net>2018-08-11 20:21:34 +0200
commit0ea5fc66924303d1bf73ba283a383e2aadee02f2 (patch)
tree2568e71a7ccc44ec23b8bb3f0ff97fb6bf2ed709 /docs/doxygen/nel/a02472.html
downloadnevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.tar.xz
nevrax-website-self-hostable-0ea5fc66924303d1bf73ba283a383e2aadee02f2.zip
Initial commit
Diffstat (limited to 'docs/doxygen/nel/a02472.html')
-rw-r--r--docs/doxygen/nel/a02472.html592
1 files changed, 592 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02472.html b/docs/doxygen/nel/a02472.html
new file mode 100644
index 00000000..ef028b9d
--- /dev/null
+++ b/docs/doxygen/nel/a02472.html
@@ -0,0 +1,592 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NLMISC::CEventListenerAsync class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NLMISC::CEventListenerAsync Class Reference</h1><code>#include &lt;<a class="el" href="a05685.html">event_listener.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for NLMISC::CEventListenerAsync:
+<p><center><img src="a02472.png" usemap="#NLMISC::CEventListenerAsync_map" border="0" alt=""></center>
+<map name="NLMISC::CEventListenerAsync_map">
+<area href="a02464.html" alt="NLMISC::IEventListener" shape="rect" coords="0,0,187,24">
+</map>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+<a class="el" href="a02472.html">CEventListenerAsync</a> <dl compact><dt><b>Author:</b></dt><dd>Stephane Coutelas <p>
+Nevrax France </dd></dl>
+<dl compact><dt><b>Date:</b></dt><dd>2000 </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05685.html#l00066">66</a> of file <a class="el" href="a05685.html">event_listener.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca0">addToServer</a> (<a class="el" href="a02479.html">CEventServer</a> &amp;server)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca1">CEventListenerAsync</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. <a href="#NLMISC_1_1CEventListenerAsynca1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown</a> (<a class="el" href="a05378.html#a442">TKey</a> key) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca3">isKeyPushed</a> (<a class="el" href="a05378.html#a442">TKey</a> key, bool release=true)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca4">removeFromServer</a> (<a class="el" href="a02479.html">CEventServer</a> &amp;server)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca5">reset</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca6">~CEventListenerAsync</a> ()</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncb0">operator()</a> (const <a class="el" href="a02461.html">CEvent</a> &amp;event)</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02272.html">CBitSet</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02272.html">CBitSet</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02272.html">CBitSet</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a></td></tr>
+
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca1" doxytag="NLMISC::CEventListenerAsync::CEventListenerAsync" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLMISC::CEventListenerAsync::CEventListenerAsync </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a05684.html#l00050">50</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05685.html#l00118">_KeyArray</a>, <a class="el" href="a05685.html#l00120">_KeyDownArray</a>, <a class="el" href="a05685.html#l00120">_KeyReleaseArray</a>, <a class="el" href="a05378.html#a442a207">NLMISC::KeyCount</a>, <a class="el" href="a05684.html#l00195">reset()</a>, and <a class="el" href="a05484.html#l00081">NLMISC::CBitSet::resize()</a>.
+<p>
+<div class="fragment"><pre>00051 {
+00052 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.resize (KeyCount);
+00053 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.resize (KeyCount);
+00054 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.resize (KeyCount);
+00055 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsynca5">reset</a> ();
+00056 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca6" doxytag="NLMISC::CEventListenerAsync::~CEventListenerAsync" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual NLMISC::CEventListenerAsync::~<a class="el" href="a02472.html">CEventListenerAsync</a> </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05685.html#l00072">72</a> of file <a class="el" href="a05685.html">event_listener.h</a>.
+<p>
+<div class="fragment"><pre>00072 {}
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca0" doxytag="NLMISC::CEventListenerAsync::addToServer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CEventListenerAsync::addToServer </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02479.html">CEventServer</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>server</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Register the listener to the server.
+<p>
+Definition at line <a class="el" href="a05684.html#l00058">58</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05688.html#l00105">NLMISC::CEventServer::addListener()</a>, <a class="el" href="a05378.html#a47">NLMISC::EventKeyDownId</a>, <a class="el" href="a05378.html#a48">NLMISC::EventKeyUpId</a>, and <a class="el" href="a05378.html#a51">NLMISC::EventSetFocusId</a>.
+<p>
+Referenced by <a class="el" href="a05686.html#l00323">NL3D::CEvent3dMouseListener::addToServer()</a>, and <a class="el" href="a05657.html#l00230">NL3D::CDriverUser::setDisplay()</a>.
+<p>
+<div class="fragment"><pre>00059 {
+00060 server.addListener (EventKeyDownId, <span class="keyword">this</span>);
+00061 server.addListener (EventSetFocusId, <span class="keyword">this</span>);
+00062 server.addListener (EventKeyUpId, <span class="keyword">this</span>);
+00063 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca2" doxytag="NLMISC::CEventListenerAsync::isKeyDown" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::CEventListenerAsync::isKeyDown </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05378.html#a442">TKey</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>key</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const</td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get a key down instant state. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>key</em>&nbsp;</td><td>is the key to check.</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a05684.html#l00072">72</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05685.html#l00118">_KeyArray</a>, and <a class="el" href="a05485.html#l00087">NLMISC::CBitSet::get()</a>.
+<p>
+Referenced by <a class="el" href="a05686.html#l00341">NL3D::CEvent3dMouseListener::getViewMatrix()</a>.
+<p>
+<div class="fragment"><pre>00073 {
+00074 <span class="keywordflow">return</span> <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.get(key);
+00075 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca3" doxytag="NLMISC::CEventListenerAsync::isKeyPushed" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::CEventListenerAsync::isKeyPushed </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a05378.html#a442">TKey</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>release</em> = true</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get if a the state of key has pushed since the last call of isKeyPushed with release=true. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>key</em>&nbsp;</td><td>is the key to check. </td></tr>
+ <tr><td valign=top><em>release</em>&nbsp;</td><td>if true, the pushed state of the key is released (force to be false). It will return to true next time only if key is released and then re-pushed. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca5">reset()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a05684.html#l00078">78</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05685.html#l00120">_KeyDownArray</a>, <a class="el" href="a05685.html#l00120">_KeyReleaseArray</a>, <a class="el" href="a05485.html#l00087">NLMISC::CBitSet::get()</a>, and <a class="el" href="a05485.html#l00075">NLMISC::CBitSet::set()</a>.
+<p>
+Referenced by <a class="el" href="a06092.html#l00192">NL3D::CNELU::screenshot()</a>.
+<p>
+<div class="fragment"><pre>00079 {
+00080 <span class="keywordtype">bool</span> ret= <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.get(key) &amp;&amp; !(<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.get(key));
+00081 <span class="keywordflow">if</span>(ret &amp;&amp; release)
+00082 {
+00083 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.set(key, <span class="keyword">true</span>);
+00084 }
+00085 <span class="keywordflow">return</span> ret;
+00086 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsyncb0" doxytag="NLMISC::CEventListenerAsync::operator()" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CEventListenerAsync::operator() </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a02461.html">CEvent</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>event</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Call back of the listener. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>event</em>&nbsp;</td><td>is the event send to the listener</td></tr>
+ </table>
+</dl>
+
+<p>
+Implements <a class="el" href="a02464.html#NLMISC_1_1IEventListenera1">NLMISC::IEventListener</a>.
+<p>
+Definition at line <a class="el" href="a05684.html#l00089">89</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05685.html#l00118">_KeyArray</a>, <a class="el" href="a05685.html#l00120">_KeyDownArray</a>, <a class="el" href="a05685.html#l00120">_KeyReleaseArray</a>, <a class="el" href="a05484.html#l00075">NLMISC::CBitSet::clear()</a>, <a class="el" href="a05484.html#l00125">NLMISC::CBitSet::clearAll()</a>, <a class="el" href="a05378.html#a47">NLMISC::EventKeyDownId</a>, <a class="el" href="a05378.html#a48">NLMISC::EventKeyUpId</a>, <a class="el" href="a05378.html#a51">NLMISC::EventSetFocusId</a>, <a class="el" href="a05691.html#l00454">NLMISC::CEventSetFocus::Get</a>, <a class="el" href="a05485.html#l00087">NLMISC::CBitSet::get()</a>, <a class="el" href="a05691.html#l00301">NLMISC::CEventKeyUp::Key</a>, <a class="el" href="a05691.html#l00285">NLMISC::CEventKeyDown::Key</a>, <a class="el" href="a05378.html#a442a103">NLMISC::KeyCONTROL</a>, <a class="el" href="a05378.html#a442a182">NLMISC::KeyLCONTROL</a>, <a class="el" href="a05378.html#a442a184">NLMISC::KeyLMENU</a>, <a class="el" href="a05378.html#a442a180">NLMISC::KeyLSHIFT</a>, <a class="el" href="a05378.html#a442a104">NLMISC::KeyMENU</a>, <a class="el" href="a05378.html#a442a183">NLMISC::KeyRCONTROL</a>, <a class="el" href="a05378.html#a442a185">NLMISC::KeyRMENU</a>, <a class="el" href="a05378.html#a442a181">NLMISC::KeyRSHIFT</a>, <a class="el" href="a05378.html#a442a102">NLMISC::KeySHIFT</a>, and <a class="el" href="a05485.html#l00075">NLMISC::CBitSet::set()</a>.
+<p>
+<div class="fragment"><pre>00090 {
+00091 <span class="comment">// Key down ?</span>
+00092 <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a47">EventKeyDownId</a>)
+00093 {
+00094 CEventKeyDown *pEvent=(CEventKeyDown*)&amp;event;
+00095 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.set (pEvent-&gt;Key);
+00096 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.set (pEvent-&gt;Key);
+00097 <span class="keywordflow">switch</span>(pEvent-&gt;Key)
+00098 {
+00099 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a183">KeyRCONTROL</a>:
+00100 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a182">KeyLCONTROL</a>:
+00101 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.set (KeyCONTROL);
+00102 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.set (KeyCONTROL);
+00103 <span class="keywordflow">break</span>;
+00104 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a181">KeyRSHIFT</a>:
+00105 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a180">KeyLSHIFT</a>:
+00106 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.set (KeySHIFT);
+00107 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.set (KeySHIFT);
+00108 <span class="keywordflow">break</span>;
+00109 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a185">KeyRMENU</a>:
+00110 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a184">KeyLMENU</a>:
+00111 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.set (KeyMENU);
+00112 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.set (KeyMENU);
+00113 <span class="keywordflow">break</span>;
+00114 <span class="keywordflow">default</span>:
+00115 <span class="keywordflow">break</span>;
+00116 }
+00117 }
+00118 <span class="comment">// Key up ?</span>
+00119 <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a48">EventKeyUpId</a>)
+00120 {
+00121 CEventKeyUp *pEvent=(CEventKeyUp*)&amp;event;
+00122
+00123 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clear (pEvent-&gt;Key);
+00124
+00125 <span class="keywordflow">switch</span>(pEvent-&gt;Key)
+00126 {
+00127 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a183">KeyRCONTROL</a>:
+00128 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a182">KeyLCONTROL</a>:
+00129 <span class="comment">// Do not "raise up" the key, until someone has get the state of this key. </span>
+00130 <span class="keywordflow">if</span> (!<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a182">KeyLCONTROL</a>] &amp;&amp; !<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a183">KeyRCONTROL</a>])
+00131 {
+00132 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clear(KeyCONTROL);
+00133
+00134 <span class="keywordflow">if</span>(<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.get(KeyCONTROL))
+00135 {
+00136 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clear (KeyCONTROL);
+00137 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clear (KeyCONTROL);
+00138 }
+00139 }
+00140 <span class="keywordflow">break</span>;
+00141 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a181">KeyRSHIFT</a>:
+00142 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a180">KeyLSHIFT</a>:
+00143 <span class="keywordflow">if</span> (!<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a180">KeyLSHIFT</a>] &amp;&amp; !<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a181">KeyRSHIFT</a>])
+00144 {
+00145 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clear(KeySHIFT);
+00146
+00147 <span class="keywordflow">if</span>(<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.get(KeySHIFT))
+00148 {
+00149 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clear (KeySHIFT);
+00150 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clear (KeySHIFT);
+00151 }
+00152 }
+00153 <span class="keywordflow">break</span>;
+00154 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a185">KeyRMENU</a>:
+00155 <span class="keywordflow">case</span> <a class="code" href="a05378.html#a442a184">KeyLMENU</a>:
+00156 <span class="keywordflow">if</span> (!<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a184">KeyLMENU</a>] &amp;&amp; !<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>[<a class="code" href="a05378.html#a442a185">KeyRMENU</a>])
+00157 {
+00158 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clear(KeyMENU);
+00159
+00160 <span class="keywordflow">if</span>(<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.get(KeyMENU))
+00161 {
+00162 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clear (KeyMENU);
+00163 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clear (KeyMENU);
+00164 }
+00165 }
+00166 <span class="keywordflow">break</span>;
+00167 <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;
+00168 }
+00169
+00170
+00171 <span class="comment">// Do not "raise up" the key, until someone has get the state of this key.</span>
+00172 <span class="keywordflow">if</span>(<a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.get(pEvent-&gt;Key))
+00173 {
+00174 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clear (pEvent-&gt;Key);
+00175 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clear (pEvent-&gt;Key);
+00176 }
+00177
+00178 }
+00179 <span class="comment">// Activate false ?</span>
+00180 <span class="keywordflow">if</span> (event==<a class="code" href="a05378.html#a51">EventSetFocusId</a>)
+00181 {
+00182 CEventSetFocus *pEvent=(CEventSetFocus *)&amp;event;
+00183 <span class="keywordflow">if</span> (!pEvent-&gt;Get)
+00184 {
+00185 <span class="comment">// Disactive all keys</span>
+00186 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clearAll ();
+00187 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clearAll ();
+00188 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clearAll ();
+00189 }
+00190 }
+00191 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca4" doxytag="NLMISC::CEventListenerAsync::removeFromServer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CEventListenerAsync::removeFromServer </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02479.html">CEventServer</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>server</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Unregister the listener to the server.
+<p>
+Definition at line <a class="el" href="a05684.html#l00065">65</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05378.html#a47">NLMISC::EventKeyDownId</a>, <a class="el" href="a05378.html#a48">NLMISC::EventKeyUpId</a>, <a class="el" href="a05378.html#a51">NLMISC::EventSetFocusId</a>, and <a class="el" href="a05688.html#l00114">NLMISC::CEventServer::removeListener()</a>.
+<p>
+Referenced by <a class="el" href="a05657.html#l00285">NL3D::CDriverUser::release()</a>, and <a class="el" href="a05686.html#l00332">NL3D::CEvent3dMouseListener::removeFromServer()</a>.
+<p>
+<div class="fragment"><pre>00066 {
+00067 server.removeListener (EventKeyUpId, <span class="keyword">this</span>);
+00068 server.removeListener (EventKeyDownId, <span class="keyword">this</span>);
+00069 server.removeListener (EventSetFocusId, <span class="keyword">this</span>);
+00070 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsynca5" doxytag="NLMISC::CEventListenerAsync::reset" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::CEventListenerAsync::reset </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Clear all the Down states to false. Usefull sometimes when you don't bother what have been pushed before. e.g.: your app listen/test to the key 'A' and 'B' for a certain long period. Then, it test 'C' and 'D' later. If the user has press (by error) the key 'C' during the first period, this API has record it, and then, at the second period, isKeyDown(KeyC) will return true the first time the key is tested, unless if you do a <a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca5">reset()</a> at the beggining of the second period. Clear all the pushed states to false too. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsynca2">isKeyDown()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a05684.html#l00195">195</a> of file <a class="el" href="a05684.html">event_listener.cpp</a>.
+<p>
+References <a class="el" href="a05685.html#l00118">_KeyArray</a>, <a class="el" href="a05685.html#l00120">_KeyDownArray</a>, <a class="el" href="a05685.html#l00120">_KeyReleaseArray</a>, and <a class="el" href="a05484.html#l00125">NLMISC::CBitSet::clearAll()</a>.
+<p>
+Referenced by <a class="el" href="a05684.html#l00050">CEventListenerAsync()</a>, and <a class="el" href="a05657.html#l00230">NL3D::CDriverUser::setDisplay()</a>.
+<p>
+<div class="fragment"><pre>00196 {
+00197 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">_KeyArray</a>.clearAll ();
+00198 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">_KeyDownArray</a>.clearAll ();
+00199 <a class="code" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">_KeyReleaseArray</a>.clearAll ();
+00200 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsyncp0" doxytag="NLMISC::CEventListenerAsync::_KeyArray" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02272.html">CBitSet</a> <a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp0">NLMISC::CEventListenerAsync::_KeyArray</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05685.html#l00118">118</a> of file <a class="el" href="a05685.html">event_listener.h</a>.
+<p>
+Referenced by <a class="el" href="a05684.html#l00050">CEventListenerAsync()</a>, <a class="el" href="a05684.html#l00072">isKeyDown()</a>, <a class="el" href="a05684.html#l00089">operator()()</a>, and <a class="el" href="a05684.html#l00195">reset()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsyncp1" doxytag="NLMISC::CEventListenerAsync::_KeyDownArray" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02272.html">CBitSet</a> <a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp1">NLMISC::CEventListenerAsync::_KeyDownArray</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05685.html#l00120">120</a> of file <a class="el" href="a05685.html">event_listener.h</a>.
+<p>
+Referenced by <a class="el" href="a05684.html#l00050">CEventListenerAsync()</a>, <a class="el" href="a05684.html#l00078">isKeyPushed()</a>, <a class="el" href="a05684.html#l00089">operator()()</a>, and <a class="el" href="a05684.html#l00195">reset()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1CEventListenerAsyncp2" doxytag="NLMISC::CEventListenerAsync::_KeyReleaseArray" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02272.html">CBitSet</a> <a class="el" href="a02472.html#NLMISC_1_1CEventListenerAsyncp2">NLMISC::CEventListenerAsync::_KeyReleaseArray</a><code> [protected]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a05685.html#l00120">120</a> of file <a class="el" href="a05685.html">event_listener.h</a>.
+<p>
+Referenced by <a class="el" href="a05684.html#l00050">CEventListenerAsync()</a>, <a class="el" href="a05684.html#l00078">isKeyPushed()</a>, <a class="el" href="a05684.html#l00089">operator()()</a>, and <a class="el" href="a05684.html#l00195">reset()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a05685.html">event_listener.h</a><li><a class="el" href="a05684.html">event_listener.cpp</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 13:10:56 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>