1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xml:lang="en-US" lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
3  <head>
4    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5    <meta http-equiv="Content-Style-Type" content="text/css" />
6    <link rel="stylesheet" href="../../../css/manpage.css" type="text/css" />
7<title>SetHomeButtonCallback</title>
8  </head>
9  <body>
10<h1><CODE><a href="../../../nn/Overview.html">nn</a>::<a href="../../../nn/applet/Overview.html">applet</a>::<a href="../../../nn/applet/CTR/Overview.html">CTR</a>::SetHomeButtonCallback</CODE> Function</h1>
11<h2>Syntax</h2>
12    <div class="section">
13      <pre class="definition">
14void SetHomeButtonCallback(
15     <a href="../../../nn/applet/CTR/AppletHomeButtonCallback.html">AppletHomeButtonCallback</a> callback,
16     <a href="../../../nn_types/uptr.html">uptr</a> arg = 0
17);
18</pre>
19    </div>
20<h2>Parameters</h2>
21    <div class="section">
22      <table class="arguments">
23        <thead>
24          <tr>
25            <td width="15" />
26<th>Name</th>
27<td>Description</td>
28          </tr>
29        </thead>
30        <tr>
31<td>in</td>
32<th>callback</th>
33<td>Callback.</td>
34        </tr>
35        <tr>
36<td>in</td>
37<th>arg</th>
38<td>Callback arguments.</td>
39        </tr> </table>
40    </div>
41<h2>Return Values</h2>
42    <div class="section">
43None.
44               </div>
45<h2>Description</h2>
46    <div class="section">
47<p>Sets the callback invoked when HOME is pressed.</p><!-- write here --><P>
48The callback is called when a HOME Button press is detected.
49</P><P>
50A number of applet functions will not end until the process has left the callback, so promptly end the callback to reduce the risk of deadlock.
51</P><PRE>
52 Example
53
54  bool myHomeButtonCallback( uptr arg, bool isActive, applet::HomeButtonState state )
55  {
56      NN_UNUSED_VAR(arg);
57
58      if ( isActive )
59      {
60          if ( state == applet::HOME_BUTTON_SINGLE_PRESSED )
61          {
62             NN_LOG("HOME BUTTON is clicked.\n");
63          }
64          else
65          {
66             NN_LOG("HOME BUTTON is double-clicked.\n");
67          }
68          return true;
69      }
70      else
71      {
72          return false;
73      }
74  }
75
76  nnMain()
77  {
78      applet::SetHomeButtonCallback( myHomeButtonCallback, 0 );
7980  }
81</PRE><P>
82<B>Note</B>:
83</P><P>
84In CTR-SDK 4.0 and later versions, the double-click is no longer returned as a <SPAN class="argument">state</SPAN> parameter for the callback. The process does not enter the portion of the sample code that displays &quot;HOME BUTTON is double-clicked.&quot; The definition for the double-click itself remains for purposes of compatibility, but in the future it might be deleted.
85</P></div>
86<h2>Revision History</h2>
87    <div class="section">
88      <dl class="history">
89        <dt>2012/02/01</dt>
90<dd>Noted that the double-click is no longer returned in CTR-SDK 4.0 and later versions.<br />
91        </dd>
92        <dt>2011/02/17</dt>
93<dd>Added a note about the callback.<br />
94        </dd>
95        <dt>2010/11/10</dt>
96<dd>Initial version.<br />
97        </dd>
98      </dl>
99    </div>
100  <hr><p>CONFIDENTIAL</p></body>
101</html>
102