API documentation updated
[chessclock] / www / html / clockswidget_8cpp_source.html
index 0a7e684..705cc89 100644 (file)
@@ -66,137 +66,207 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 <a name="l00022"></a>00022 <span class="preprocessor">#include &quot;<a class="code" href="clockswidget_8h.html">clockswidget.h</a>&quot;</span>
 <a name="l00023"></a>00023 <span class="preprocessor">#include &quot;<a class="code" href="chessclock_8h.html">chessclock.h</a>&quot;</span>
 <a name="l00024"></a>00024 
-<a name="l00025"></a>00025 <span class="preprocessor">#include &lt;QLabel&gt;</span>
-<a name="l00026"></a>00026 <span class="preprocessor">#include &lt;QPixmap&gt;</span>
-<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;QApplication&gt;</span>
-<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;QHBoxLayout&gt;</span>
-<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;QVBoxLayout&gt;</span>
-<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;QFont&gt;</span>
-<a name="l00031"></a>00031 
-<a name="l00032"></a>00032 
-<a name="l00033"></a><a class="code" href="class_clocks_widget.html#aa279b067c41def73aeaf62af3b486079">00033</a> <a class="code" href="class_clocks_widget.html#aa279b067c41def73aeaf62af3b486079">ClocksWidget::ClocksWidget</a>(<a class="code" href="class_chess_clock.html" title="Clock of a individual player.">ChessClock</a> *white, <a class="code" href="class_chess_clock.html" title="Clock of a individual player.">ChessClock</a> *black, QWidget *parent):
-<a name="l00034"></a>00034     QWidget(parent)
-<a name="l00035"></a>00035 {
-<a name="l00036"></a>00036     <span class="comment">// Set up clocks</span>
-<a name="l00037"></a>00037     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a> = white;
-<a name="l00038"></a>00038     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a> = black;
-<a name="l00039"></a>00039 
-<a name="l00040"></a>00040     <span class="comment">// SET UP UI</span>
-<a name="l00041"></a>00041     <span class="comment">// Make layout for clocks</span>
-<a name="l00042"></a>00042     QHBoxLayout* clockLayout = <span class="keyword">new</span> QHBoxLayout;
-<a name="l00043"></a>00043     clockLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a> );
-<a name="l00044"></a>00044     clockLayout-&gt;addWidget( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a> );
+<a name="l00025"></a>00025 <span class="preprocessor">#include &quot;<a class="code" href="screenlitkeeper_8h.html">screenlitkeeper.h</a>&quot;</span>
+<a name="l00026"></a>00026 
+<a name="l00027"></a>00027 <span class="preprocessor">#include &lt;QLabel&gt;</span>
+<a name="l00028"></a>00028 <span class="preprocessor">#include &lt;QPixmap&gt;</span>
+<a name="l00029"></a>00029 <span class="preprocessor">#include &lt;QApplication&gt;</span>
+<a name="l00030"></a>00030 <span class="preprocessor">#include &lt;QHBoxLayout&gt;</span>
+<a name="l00031"></a>00031 <span class="preprocessor">#include &lt;QVBoxLayout&gt;</span>
+<a name="l00032"></a>00032 <span class="preprocessor">#include &lt;QFont&gt;</span>
+<a name="l00033"></a>00033 <span class="preprocessor">#include &lt;cstdlib&gt;</span>
+<a name="l00034"></a>00034 <span class="preprocessor">#include &lt;QMouseEvent&gt;</span>
+<a name="l00035"></a>00035 <span class="preprocessor">#include &lt;QToolButton&gt;</span>
+<a name="l00036"></a>00036 <span class="preprocessor">#include &lt;QSize&gt;</span>
+<a name="l00037"></a>00037 <span class="preprocessor">#include &lt;QWidget&gt;</span>
+<a name="l00038"></a>00038 
+<a name="l00039"></a><a class="code" href="class_clocks_widget.html#aa279b067c41def73aeaf62af3b486079">00039</a> <a class="code" href="class_clocks_widget.html#aa279b067c41def73aeaf62af3b486079">ClocksWidget::ClocksWidget</a>(<a class="code" href="class_chess_clock.html" title="Clock of a individual player.">ChessClock</a> *white, <a class="code" href="class_chess_clock.html" title="Clock of a individual player.">ChessClock</a> *black, QWidget *parent):
+<a name="l00040"></a>00040     QWidget(parent)
+<a name="l00041"></a>00041 {
+<a name="l00042"></a>00042     <span class="comment">// Set up clocks</span>
+<a name="l00043"></a>00043     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a> = white;
+<a name="l00044"></a>00044     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a> = black;
 <a name="l00045"></a>00045 
-<a name="l00046"></a>00046     <span class="comment">// Pause information label</span>
-<a name="l00047"></a>00047     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a> = <span class="keyword">new</span> QLabel( tr(<span class="stringliteral">&quot;&lt;font color=yellow&gt;Paused. Touch to continue.&lt;/font&gt;&quot;</span>));
-<a name="l00048"></a>00048     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setFont( QFont(<span class="stringliteral">&quot;Helvetica&quot;</span>,25));
-<a name="l00049"></a>00049     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setAlignment( Qt::AlignCenter);
-<a name="l00050"></a>00050     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible( <span class="keyword">false</span> );
+<a name="l00046"></a>00046     <span class="comment">// SET UP UI</span>
+<a name="l00047"></a>00047     <span class="comment">// Make layout for clocks</span>
+<a name="l00048"></a>00048     QHBoxLayout* clockLayout = <span class="keyword">new</span> QHBoxLayout;
+<a name="l00049"></a>00049     clockLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a> );
+<a name="l00050"></a>00050     clockLayout-&gt;addWidget( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a> );
 <a name="l00051"></a>00051 
-<a name="l00052"></a>00052     <span class="comment">// Welcome label for first touch</span>
-<a name="l00053"></a>00053     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a> = <span class="keyword">new</span> QLabel( tr(<span class="stringliteral">&quot;&lt;font color=green&gt;Welcome! Please touch to start game.&lt;br&gt;&quot;</span>
-<a name="l00054"></a>00054                                    <span class="stringliteral">&quot;Then touch to end turn.&lt;/font&gt;&quot;</span>));
-<a name="l00055"></a>00055     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setFont( QFont(<span class="stringliteral">&quot;Helvetica&quot;</span>,25));
-<a name="l00056"></a>00056     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setAlignment( Qt::AlignCenter);
-<a name="l00057"></a>00057     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setVisible( <span class="keyword">true</span> );  <span class="comment">// Show welcome message</span>
-<a name="l00058"></a>00058 
-<a name="l00059"></a>00059     <span class="comment">// Put all in layout</span>
-<a name="l00060"></a>00060     QVBoxLayout* mainLayout = <span class="keyword">new</span> QVBoxLayout;
-<a name="l00061"></a>00061     mainLayout-&gt;addLayout(clockLayout);
-<a name="l00062"></a>00062     mainLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>);
-<a name="l00063"></a>00063     mainLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>);
+<a name="l00052"></a>00052     <span class="comment">// Pause information label</span>
+<a name="l00053"></a>00053     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a> = <span class="keyword">new</span> QLabel( tr(<span class="stringliteral">&quot;&lt;font color=yellow&gt;Paused. Touch to continue.&lt;/font&gt;&quot;</span>),<span class="keyword">this</span>);
+<a name="l00054"></a>00054     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setFont( QFont(<span class="stringliteral">&quot;Helvetica&quot;</span>,25));
+<a name="l00055"></a>00055     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setAlignment( Qt::AlignCenter);
+<a name="l00056"></a>00056     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible( <span class="keyword">false</span> );
+<a name="l00057"></a>00057 
+<a name="l00058"></a>00058     <span class="comment">// Welcome label for first touch</span>
+<a name="l00059"></a>00059     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a> = <span class="keyword">new</span> QLabel( tr(<span class="stringliteral">&quot;&lt;font color=green&gt;Welcome! Please touch to start game.&lt;br&gt;&quot;</span>
+<a name="l00060"></a>00060                                    <span class="stringliteral">&quot;Then touch to end turn.&lt;/font&gt;&quot;</span>),<span class="keyword">this</span>);
+<a name="l00061"></a>00061     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setFont( QFont(<span class="stringliteral">&quot;Helvetica&quot;</span>,25));
+<a name="l00062"></a>00062     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setAlignment( Qt::AlignCenter);
+<a name="l00063"></a>00063     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setVisible( <span class="keyword">true</span> );  <span class="comment">// Show welcome message</span>
 <a name="l00064"></a>00064 
-<a name="l00065"></a>00065     setLayout( mainLayout);
-<a name="l00066"></a>00066     <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a6aef315e9e32ab9962b237bd3ddab0ab">Welcome</a>;
-<a name="l00067"></a>00067 
-<a name="l00068"></a>00068     <span class="comment">// First paint</span>
-<a name="l00069"></a>00069     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a349c7c108551649a9885651c5470e2dd" title="Refresh clock information.">repaintClock</a>();
-<a name="l00070"></a>00070     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a349c7c108551649a9885651c5470e2dd" title="Refresh clock information.">repaintClock</a>();
+<a name="l00065"></a>00065     <span class="comment">// Pause button</span>
+<a name="l00066"></a>00066     <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a> = <span class="keyword">new</span> QToolButton;
+<a name="l00067"></a>00067     <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setIcon( QIcon(<span class="stringliteral">&quot;:/rc/pic/pausebutton.png&quot;</span>));
+<a name="l00068"></a>00068     <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setIconSize(QSize(75,75));
+<a name="l00069"></a>00069     connect(<a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>, SIGNAL(clicked()), <span class="keyword">this</span>, SLOT(<a class="code" href="class_clocks_widget.html#a609a11fc15904a1700f5b82ae2b63228" title="Pause game.">pause</a>()));
+<a name="l00070"></a>00070     <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">false</span>);
 <a name="l00071"></a>00071 
-<a name="l00072"></a>00072     <span class="comment">// Set up others</span>
-<a name="l00073"></a>00073     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#aa19330404a35872591d45d24fb52572e" title="Set another chess clock for connecting.">setAnother</a>(<a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>);
-<a name="l00074"></a>00074     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#aa19330404a35872591d45d24fb52572e" title="Set another chess clock for connecting.">setAnother</a>(<a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>);
+<a name="l00072"></a>00072     <span class="comment">// Put all in layout</span>
+<a name="l00073"></a>00073     QVBoxLayout* mainLayout = <span class="keyword">new</span> QVBoxLayout;
+<a name="l00074"></a>00074     mainLayout-&gt;addLayout(clockLayout);
 <a name="l00075"></a>00075 
-<a name="l00076"></a>00076     <a class="code" href="class_clocks_widget.html#ab86d99a5709a6fd0444f10aec5ede01a">delayTimer_</a>.start(); <span class="comment">// Initial start</span>
-<a name="l00077"></a>00077 }
-<a name="l00078"></a>00078 
-<a name="l00079"></a><a class="code" href="class_clocks_widget.html#ad57363f5d471bff742d422f19f3077c3">00079</a> <a class="code" href="class_clocks_widget.html#ad57363f5d471bff742d422f19f3077c3">ClocksWidget::~ClocksWidget</a>()
-<a name="l00080"></a>00080 {
-<a name="l00081"></a>00081     <span class="keyword">delete</span> <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>;
-<a name="l00082"></a>00082     <span class="keyword">delete</span> <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>;
-<a name="l00083"></a>00083 }
-<a name="l00084"></a>00084 
-<a name="l00085"></a><a class="code" href="class_clocks_widget.html#a609a11fc15904a1700f5b82ae2b63228">00085</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a609a11fc15904a1700f5b82ae2b63228" title="Pause game.">ClocksWidget::pause</a>()
-<a name="l00086"></a>00086 {
-<a name="l00087"></a>00087     <span class="keywordflow">if</span>(<a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>)
-<a name="l00088"></a>00088     {
-<a name="l00089"></a>00089         <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>= <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a>;
-<a name="l00090"></a>00090         <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a461145515ab3854c079937143026a047" title="Pause clock.">pauseTurn</a>();
-<a name="l00091"></a>00091         <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">true</span>);
-<a name="l00092"></a>00092     }
-<a name="l00093"></a>00093     <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>)
-<a name="l00094"></a>00094     {
-<a name="l00095"></a>00095         <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a>;
-<a name="l00096"></a>00096         <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a461145515ab3854c079937143026a047" title="Pause clock.">pauseTurn</a>();
-<a name="l00097"></a>00097         <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">true</span>);
-<a name="l00098"></a>00098     }
-<a name="l00099"></a>00099 }
-<a name="l00100"></a>00100 
-<a name="l00101"></a><a class="code" href="class_clocks_widget.html#a13cdf39b9f06ef714a65aaff2111380d">00101</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a13cdf39b9f06ef714a65aaff2111380d" title="End the game.">ClocksWidget::stopPlay</a>()
-<a name="l00102"></a>00102 {
-<a name="l00103"></a>00103     <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a> || <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a> )
-<a name="l00104"></a>00104        emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
-<a name="l00105"></a>00105     <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a> || <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a> )
-<a name="l00106"></a>00106         emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
-<a name="l00107"></a>00107     <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a53acf9aec5f412ddac980ff0019b6062" title="Not running.">Stopped</a>;
-<a name="l00108"></a>00108 }
+<a name="l00076"></a>00076     <span class="comment">// Extra layout and widget for information</span>
+<a name="l00077"></a>00077     QVBoxLayout* extraLayout = <span class="keyword">new</span> QVBoxLayout;
+<a name="l00078"></a>00078     extraLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>);
+<a name="l00079"></a>00079     extraLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>);
+<a name="l00080"></a>00080 
+<a name="l00081"></a>00081     QHBoxLayout* pbLayout = <span class="keyword">new</span> QHBoxLayout;
+<a name="l00082"></a>00082     pbLayout-&gt;addStretch();
+<a name="l00083"></a>00083     pbLayout-&gt;addWidget(<a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>);
+<a name="l00084"></a>00084     pbLayout-&gt;addStretch();
+<a name="l00085"></a>00085     extraLayout-&gt;addLayout(pbLayout);
+<a name="l00086"></a>00086 
+<a name="l00087"></a>00087     QWidget* extraWidget = <span class="keyword">new</span> QWidget(<span class="keyword">this</span>);
+<a name="l00088"></a>00088     extraWidget-&gt;setLayout(extraLayout);
+<a name="l00089"></a>00089     <span class="comment">// Some fun event filtering to grap clicking welcome and pause labels...</span>
+<a name="l00090"></a>00090     extraWidget-&gt;installEventFilter(<span class="keyword">this</span>);
+<a name="l00091"></a>00091     <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;installEventFilter(<span class="keyword">this</span>);
+<a name="l00092"></a>00092     <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;installEventFilter(<span class="keyword">this</span>);
+<a name="l00093"></a>00093 
+<a name="l00094"></a>00094     mainLayout-&gt;addWidget(extraWidget);
+<a name="l00095"></a>00095     setLayout( mainLayout);
+<a name="l00096"></a>00096     <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a6aef315e9e32ab9962b237bd3ddab0ab">Welcome</a>;
+<a name="l00097"></a>00097 
+<a name="l00098"></a>00098     <span class="comment">// First paint</span>
+<a name="l00099"></a>00099     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a349c7c108551649a9885651c5470e2dd" title="Refresh clock information.">repaintClock</a>();
+<a name="l00100"></a>00100     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a349c7c108551649a9885651c5470e2dd" title="Refresh clock information.">repaintClock</a>();
+<a name="l00101"></a>00101 
+<a name="l00102"></a>00102     <span class="comment">// Set up others</span>
+<a name="l00103"></a>00103     <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#aa19330404a35872591d45d24fb52572e" title="Set another chess clock for connecting.">setAnother</a>(<a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>);
+<a name="l00104"></a>00104     <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#aa19330404a35872591d45d24fb52572e" title="Set another chess clock for connecting.">setAnother</a>(<a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>);
+<a name="l00105"></a>00105 
+<a name="l00106"></a>00106     <a class="code" href="class_clocks_widget.html#ab86d99a5709a6fd0444f10aec5ede01a">delayTimer_</a>.start(); <span class="comment">// Initial start</span>
+<a name="l00107"></a>00107 
+<a name="l00108"></a>00108     <a class="code" href="class_clocks_widget.html#a5ea90a0fddcda7d4d2fcc0ba41b0d315" title="To avoid double clicks.">recentX</a> = <a class="code" href="class_clocks_widget.html#ab95b8bc6920bcb45f81f8f04a494df25">recentY</a> = -1;
 <a name="l00109"></a>00109 
-<a name="l00110"></a>00110 
-<a name="l00111"></a><a class="code" href="class_clocks_widget.html#a1a000c1a617951942ee3b1669a2b026e">00111</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a1a000c1a617951942ee3b1669a2b026e">ClocksWidget::mouseReleaseEvent</a>(QMouseEvent *event)
-<a name="l00112"></a>00112 {
-<a name="l00113"></a>00113     <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#ab86d99a5709a6fd0444f10aec5ede01a">delayTimer_</a>.elapsed() &gt; <a class="code" href="class_clocks_widget.html#a51af7bacc14bc1f276df31a404823e3d" title="To avoid double clicks.">CLICKDELAY</a> )  <span class="comment">// To avoid double clicks</span>
-<a name="l00114"></a>00114     {
-<a name="l00115"></a>00115         <span class="keywordflow">switch</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>)
-<a name="l00116"></a>00116         {
-<a name="l00117"></a>00117         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a6aef315e9e32ab9962b237bd3ddab0ab">Welcome</a> :
-<a name="l00118"></a>00118             <span class="comment">// Start game!</span>
-<a name="l00119"></a>00119             <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
-<a name="l00120"></a>00120             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
-<a name="l00121"></a>00121             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
-<a name="l00122"></a>00122             <span class="keywordflow">break</span>;
-<a name="l00123"></a>00123         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>:
-<a name="l00124"></a>00124             <span class="comment">// White turn finished, then black</span>
-<a name="l00125"></a>00125             emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
-<a name="l00126"></a>00126             <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
-<a name="l00127"></a>00127             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>;
-<a name="l00128"></a>00128             <span class="keywordflow">break</span>;
-<a name="l00129"></a>00129         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>:
-<a name="l00130"></a>00130             <span class="comment">// Black finished, then white</span>
-<a name="l00131"></a>00131             emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
-<a name="l00132"></a>00132             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
-<a name="l00133"></a>00133             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
-<a name="l00134"></a>00134             <span class="keywordflow">break</span>;
-<a name="l00135"></a>00135         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a>:
-<a name="l00136"></a>00136             <span class="comment">// Continue play</span>
-<a name="l00137"></a>00137             <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
-<a name="l00138"></a>00138             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#ae0686cb1be507be4c7c411898ba52495" title="Continue paused game.">continueTurn</a>();
-<a name="l00139"></a>00139             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
-<a name="l00140"></a>00140             <span class="keywordflow">break</span>;
-<a name="l00141"></a>00141         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a>:
-<a name="l00142"></a>00142             <span class="comment">// Continue play</span>
-<a name="l00143"></a>00143             <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
-<a name="l00144"></a>00144             <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#ae0686cb1be507be4c7c411898ba52495" title="Continue paused game.">continueTurn</a>();
-<a name="l00145"></a>00145             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>;
-<a name="l00146"></a>00146             <span class="keywordflow">break</span>;
-<a name="l00147"></a>00147         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a53acf9aec5f412ddac980ff0019b6062" title="Not running.">Stopped</a>:
-<a name="l00148"></a>00148             emit <a class="code" href="class_clocks_widget.html#ab5e341e33db43c93cb4fdb1dc59b1a62">ClickedWhenStopped</a>();
+<a name="l00110"></a>00110     <span class="comment">// ScreenLitKeeper to keep screen lit when playing</span>
+<a name="l00111"></a>00111     <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a> = <span class="keyword">new</span> <a class="code" href="class_screen_lit_keeper.html" title="Allows keeping the sreen lit by disabling the screensaver.">ScreenLitKeeper</a>(<span class="keyword">this</span>);
+<a name="l00112"></a>00112 }
+<a name="l00113"></a>00113 
+<a name="l00114"></a><a class="code" href="class_clocks_widget.html#ad57363f5d471bff742d422f19f3077c3">00114</a> <a class="code" href="class_clocks_widget.html#ad57363f5d471bff742d422f19f3077c3">ClocksWidget::~ClocksWidget</a>()
+<a name="l00115"></a>00115 {
+<a name="l00116"></a>00116     <span class="keyword">delete</span> <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>;
+<a name="l00117"></a>00117     <span class="keyword">delete</span> <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>;
+<a name="l00118"></a>00118 }
+<a name="l00119"></a>00119 
+<a name="l00120"></a><a class="code" href="class_clocks_widget.html#a609a11fc15904a1700f5b82ae2b63228">00120</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a609a11fc15904a1700f5b82ae2b63228" title="Pause game.">ClocksWidget::pause</a>()
+<a name="l00121"></a>00121 {
+<a name="l00122"></a>00122     <span class="keywordflow">if</span>(<a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>)
+<a name="l00123"></a>00123     {
+<a name="l00124"></a>00124         <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>= <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a>;
+<a name="l00125"></a>00125         <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a461145515ab3854c079937143026a047" title="Pause clock.">pauseTurn</a>();
+<a name="l00126"></a>00126         <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">true</span>);
+<a name="l00127"></a>00127         <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">false</span>);
+<a name="l00128"></a>00128         <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a>-&gt;<a class="code" href="class_screen_lit_keeper.html#a41cc193e58d9b4b5c09eda79bbb095c8" title="Sets whether the screen is to be kept lit.">keepScreenLit</a>(<span class="keyword">false</span>);
+<a name="l00129"></a>00129 
+<a name="l00130"></a>00130     }
+<a name="l00131"></a>00131     <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>)
+<a name="l00132"></a>00132     {
+<a name="l00133"></a>00133         <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a>;
+<a name="l00134"></a>00134         <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a461145515ab3854c079937143026a047" title="Pause clock.">pauseTurn</a>();
+<a name="l00135"></a>00135         <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">true</span>);
+<a name="l00136"></a>00136         <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">false</span>);
+<a name="l00137"></a>00137         <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a>-&gt;<a class="code" href="class_screen_lit_keeper.html#a41cc193e58d9b4b5c09eda79bbb095c8" title="Sets whether the screen is to be kept lit.">keepScreenLit</a>(<span class="keyword">false</span>);
+<a name="l00138"></a>00138     }
+<a name="l00139"></a>00139 }
+<a name="l00140"></a>00140 
+<a name="l00141"></a><a class="code" href="class_clocks_widget.html#a13cdf39b9f06ef714a65aaff2111380d">00141</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a13cdf39b9f06ef714a65aaff2111380d" title="End the game.">ClocksWidget::stopPlay</a>()
+<a name="l00142"></a>00142 {
+<a name="l00143"></a>00143     <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a> || <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a> )
+<a name="l00144"></a>00144        emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
+<a name="l00145"></a>00145     <span class="keywordflow">else</span> <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a> || <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> == <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a> )
+<a name="l00146"></a>00146         emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
+<a name="l00147"></a>00147     <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a53acf9aec5f412ddac980ff0019b6062" title="Not running.">Stopped</a>;
+<a name="l00148"></a>00148 }
 <a name="l00149"></a>00149 
 <a name="l00150"></a>00150 
-<a name="l00151"></a>00151         }
-<a name="l00152"></a>00152     }
-<a name="l00153"></a>00153 }
-<a name="l00154"></a>00154 
-<a name="l00155"></a>00155 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="class_clocks_widget.html#a51af7bacc14bc1f276df31a404823e3d" title="To avoid double clicks.">ClocksWidget::CLICKDELAY</a>;
+<a name="l00151"></a><a class="code" href="class_clocks_widget.html#a1a000c1a617951942ee3b1669a2b026e">00151</a> <span class="keywordtype">void</span> <a class="code" href="class_clocks_widget.html#a1a000c1a617951942ee3b1669a2b026e">ClocksWidget::mouseReleaseEvent</a>(QMouseEvent *event)
+<a name="l00152"></a>00152 {
+<a name="l00153"></a>00153 
+<a name="l00154"></a>00154     <span class="comment">// To avoid double clicks</span>
+<a name="l00155"></a>00155     <span class="comment">// a) delay (default 1,2 secs) OR</span>
+<a name="l00156"></a>00156     <span class="comment">// b) distance more than 90 pixels in axis.</span>
+<a name="l00157"></a>00157     <span class="keywordflow">if</span>( <a class="code" href="class_clocks_widget.html#ab86d99a5709a6fd0444f10aec5ede01a">delayTimer_</a>.elapsed() &gt; <a class="code" href="class_clocks_widget.html#a51af7bacc14bc1f276df31a404823e3d">CLICKDELAY</a> ||
+<a name="l00158"></a>00158         std::abs( event-&gt;x() - <a class="code" href="class_clocks_widget.html#a5ea90a0fddcda7d4d2fcc0ba41b0d315" title="To avoid double clicks.">recentX</a> ) &gt; 90 ||
+<a name="l00159"></a>00159         std::abs( event-&gt;y() - <a class="code" href="class_clocks_widget.html#ab95b8bc6920bcb45f81f8f04a494df25">recentY</a> ) &gt; 90
+<a name="l00160"></a>00160         )
+<a name="l00161"></a>00161     {
+<a name="l00162"></a>00162         <a class="code" href="class_clocks_widget.html#ab86d99a5709a6fd0444f10aec5ede01a">delayTimer_</a>.start();    <span class="comment">// to reset delay timer!</span>
+<a name="l00163"></a>00163         <span class="keywordflow">switch</span>( <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>)
+<a name="l00164"></a>00164         {
+<a name="l00165"></a>00165         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a6aef315e9e32ab9962b237bd3ddab0ab">Welcome</a> :
+<a name="l00166"></a>00166             <span class="comment">// Start game!</span>
+<a name="l00167"></a>00167             <a class="code" href="class_clocks_widget.html#a0af8f4235b2b5363173b067cfb54a73b">welcomeLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
+<a name="l00168"></a>00168             <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">true</span>);
+<a name="l00169"></a>00169             <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a>-&gt;<a class="code" href="class_screen_lit_keeper.html#a41cc193e58d9b4b5c09eda79bbb095c8" title="Sets whether the screen is to be kept lit.">keepScreenLit</a>(<span class="keyword">true</span>);
+<a name="l00170"></a>00170             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
+<a name="l00171"></a>00171             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a> = <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
+<a name="l00172"></a>00172             <span class="keywordflow">break</span>;
+<a name="l00173"></a>00173         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>:
+<a name="l00174"></a>00174             <span class="comment">// White turn finished, then black</span>
+<a name="l00175"></a>00175             emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
+<a name="l00176"></a>00176             <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
+<a name="l00177"></a>00177             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>;
+<a name="l00178"></a>00178             <span class="keywordflow">break</span>;
+<a name="l00179"></a>00179         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>:
+<a name="l00180"></a>00180             <span class="comment">// Black finished, then white</span>
+<a name="l00181"></a>00181             emit <a class="code" href="class_clocks_widget.html#a59d64c0755ff2e19c851108472d48865">TurnFinished</a>( <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#a2383619532d2e9e6557961616c722531" title="End this turn.">endTurn</a>());
+<a name="l00182"></a>00182             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#a49504d86896ef3f724b2aa481c85435a" title="Start new turn.">startTurn</a>();
+<a name="l00183"></a>00183             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
+<a name="l00184"></a>00184             <span class="keywordflow">break</span>;
+<a name="l00185"></a>00185         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326af5c73b5ef2a4289e4c72e37d9524aad3">WhitePause</a>:
+<a name="l00186"></a>00186             <span class="comment">// Continue play</span>
+<a name="l00187"></a>00187             <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a>-&gt;<a class="code" href="class_screen_lit_keeper.html#a41cc193e58d9b4b5c09eda79bbb095c8" title="Sets whether the screen is to be kept lit.">keepScreenLit</a>(<span class="keyword">true</span>);
+<a name="l00188"></a>00188             <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
+<a name="l00189"></a>00189             <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">true</span>);
+<a name="l00190"></a>00190             <a class="code" href="class_clocks_widget.html#a657afdf1f48be188451ebd712350cdc3">white_</a>-&gt;<a class="code" href="class_chess_clock.html#ae0686cb1be507be4c7c411898ba52495" title="Continue paused game.">continueTurn</a>();
+<a name="l00191"></a>00191             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ae515f8820df31a265e7a09b885367021">WhiteTurn</a>;
+<a name="l00192"></a>00192             <span class="keywordflow">break</span>;
+<a name="l00193"></a>00193         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326ac176eeb3fa09dc34152e89c97155806a">BlackPause</a>:
+<a name="l00194"></a>00194             <span class="comment">// Continue play</span>
+<a name="l00195"></a>00195             <a class="code" href="class_clocks_widget.html#a6816c555a8d407402e753f2e7466ed60">keeper_</a>-&gt;<a class="code" href="class_screen_lit_keeper.html#a41cc193e58d9b4b5c09eda79bbb095c8" title="Sets whether the screen is to be kept lit.">keepScreenLit</a>(<span class="keyword">false</span>);
+<a name="l00196"></a>00196             <a class="code" href="class_clocks_widget.html#a2e65f80ea1b3d56189f8c94d6b0a972c">pauseLabel_</a>-&gt;setVisible(<span class="keyword">false</span>);
+<a name="l00197"></a>00197             <a class="code" href="class_clocks_widget.html#ac260495699eda4c14abd77978bcc146c">pauseButton_</a>-&gt;setVisible(<span class="keyword">true</span>);
+<a name="l00198"></a>00198             <a class="code" href="class_clocks_widget.html#a61a8a254c9a879b0950cde008a825447">black_</a>-&gt;<a class="code" href="class_chess_clock.html#ae0686cb1be507be4c7c411898ba52495" title="Continue paused game.">continueTurn</a>();
+<a name="l00199"></a>00199             <a class="code" href="class_clocks_widget.html#a74cd72e41c4c797c4b97027f513752c4">status_</a>=<a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a54e428aae4bef65f8a66e7619778c190">BlackTurn</a>;
+<a name="l00200"></a>00200             <span class="keywordflow">break</span>;
+<a name="l00201"></a>00201         <span class="keywordflow">case</span> <a class="code" href="class_clocks_widget.html#abe19ddcf3d29ca31914819a969af4326a53acf9aec5f412ddac980ff0019b6062" title="Not running.">Stopped</a>:
+<a name="l00202"></a>00202             emit <a class="code" href="class_clocks_widget.html#ab5e341e33db43c93cb4fdb1dc59b1a62">ClickedWhenStopped</a>();
+<a name="l00203"></a>00203 
+<a name="l00204"></a>00204 
+<a name="l00205"></a>00205         }
+<a name="l00206"></a>00206     }
+<a name="l00207"></a>00207     <a class="code" href="class_clocks_widget.html#a5ea90a0fddcda7d4d2fcc0ba41b0d315" title="To avoid double clicks.">recentX</a> = <span class="keyword">event</span>-&gt;x();
+<a name="l00208"></a>00208     <a class="code" href="class_clocks_widget.html#ab95b8bc6920bcb45f81f8f04a494df25">recentY</a> = <span class="keyword">event</span>-&gt;y();
+<a name="l00209"></a>00209 }
+<a name="l00210"></a>00210 
+<a name="l00211"></a>00211 <span class="comment">// to grap clicking pause or welcome label</span>
+<a name="l00212"></a><a class="code" href="class_clocks_widget.html#a00be7b731e6ef45d411f236b257d9503">00212</a> <span class="keywordtype">bool</span> <a class="code" href="class_clocks_widget.html#a00be7b731e6ef45d411f236b257d9503">ClocksWidget::eventFilter</a>(QObject *obj, QEvent *event)
+<a name="l00213"></a>00213 {
+<a name="l00214"></a>00214     <span class="keywordflow">if</span> (event-&gt;type() == QEvent::MouseButtonRelease) {
+<a name="l00215"></a>00215         QMouseEvent *mEvent = <span class="keyword">static_cast&lt;</span>QMouseEvent *<span class="keyword">&gt;</span>(event);
+<a name="l00216"></a>00216         <a class="code" href="class_clocks_widget.html#a1a000c1a617951942ee3b1669a2b026e">mouseReleaseEvent</a>( mEvent );
+<a name="l00217"></a>00217         <span class="keywordflow">return</span> <span class="keyword">true</span>;
+<a name="l00218"></a>00218     } <span class="keywordflow">else</span> {
+<a name="l00219"></a>00219         <span class="comment">// standard event processing</span>
+<a name="l00220"></a>00220         <span class="keywordflow">return</span> <a class="code" href="class_clocks_widget.html#a00be7b731e6ef45d411f236b257d9503">QObject::eventFilter</a>(obj, event);
+<a name="l00221"></a>00221     }
+<a name="l00222"></a>00222 }
+<a name="l00223"></a>00223 
+<a name="l00224"></a>00224 
+<a name="l00225"></a>00225 <span class="keywordtype">int</span> <span class="keyword">const</span> <a class="code" href="class_clocks_widget.html#a51af7bacc14bc1f276df31a404823e3d">ClocksWidget::CLICKDELAY</a>;
 </pre></div></div>
 <!--- window showing the filter options -->
 <div id="MSearchSelectWindow"
@@ -212,7 +282,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </iframe>
 </div>
 
-<hr class="footer"/><address style="text-align: right;"><small>Generated on Thu Aug 19 21:04:20 2010 for Chess Clock by&nbsp;
+<hr class="footer"/><address style="text-align: right;"><small>Generated on Mon Sep 27 18:30:33 2010 for Chess Clock by&nbsp;
 <a href="http://www.doxygen.org/index.html">
 <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
 </body>