|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> |
|
10 <!DOCTYPE concept |
|
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-8F6F6C2C-C00E-4412-A880-5EEBF7270265" xml:lang="en"><title>Generic |
|
13 button</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
14 <p>Button is a generic component, which may have touch down and release and/or |
|
15 touch down and hold functionality. Touch down and hold can be interpreted |
|
16 as touch down and hold or key repeat. Generic buttons can be placed, for example, |
|
17 inside the toolbar. </p> |
|
18 <p>The generic button can have the following properties:<ul> |
|
19 <li><p><b>ON/OFF button</b> - it can be used for active/inactive type of functions |
|
20 such as Loudspeaker or Font italics.</p></li> |
|
21 <li><p><b>Mode toggle button</b> - can be used for switching between several |
|
22 modes as in Flash.</p></li> |
|
23 <li><p><b>Command button</b> - it offers direct action (functions/view access) |
|
24 such as Send or New contact with a button press feedback. </p></li> |
|
25 </ul> </p> |
|
26 <p>Buttons can have the following states:<ul> |
|
27 <li><p><i>Unavailable / dimmed</i> when button function is not available</p></li> |
|
28 <li><p><i>Available and not pressed with or without focus</i> when the button |
|
29 is active but has not been pressed</p></li> |
|
30 <li><p><i>Latched down with or without focus</i>, for example, in case where |
|
31 there are many different text formatting options ON at the same time. In multiple |
|
32 mode buttons, user can switch between the different ’selected’ modes by touching |
|
33 the multiple mode button again. States change after touch release and current |
|
34 mode’s function is executed. Button states loop when the user touches those |
|
35 again</p></li> |
|
36 <li><p><i>Pressed with or without focus</i> - This state indicates to the |
|
37 user that touch down has activated the button</p></li> |
|
38 </ul></p> |
|
39 <table id="GUID-ED68DB7B-934F-4ABA-93F6-ECE636CF3760"><title>Default touch |
|
40 events for generic button</title> |
|
41 <tgroup cols="3"><colspec colname="col1" colwidth="0.80*"/><colspec colname="col2" colwidth="1.01*"/><colspec colname="col3" colwidth="1.19*"/> |
|
42 <thead> |
|
43 <row> |
|
44 |
|
45 <entry valign="top"><p>User action</p></entry> |
|
46 <entry valign="top"><p>State change</p></entry> |
|
47 <entry valign="top"><p>Feedback</p></entry> |
|
48 </row> |
|
49 </thead> |
|
50 <tbody> |
|
51 <row> |
|
52 <entry><p>Touch down</p></entry> |
|
53 <entry><p>Button pressed effect. On down event application specific functionality.</p></entry> |
|
54 <entry><p>Graphical indication and possible tooltip </p><p>Tactile: Basic |
|
55 button effect and audio feedback is provided with touch down.</p></entry> |
|
56 </row> |
|
57 <row> |
|
58 <entry><p>Touch release</p></entry> |
|
59 <entry><p>Activates the button, launches other view or event. </p><p>Button |
|
60 is latched down or set to available and non-pressed.</p></entry> |
|
61 <entry><p>Switches between down look and non-pressed look of the button.</p><p> When |
|
62 the toolbar button launches another view or event, the button does not appear |
|
63 latched down. </p><p>Tactile: Basic button effect is provided with touch release. |
|
64 No audio feedback is provided.</p></entry> |
|
65 </row> |
|
66 <row> |
|
67 <entry><p>Touch down on a multiple mode button</p></entry> |
|
68 <entry><p>Button is pressed.</p></entry> |
|
69 <entry><p>Tactile: Basic button effect and audio feedback is provided with |
|
70 touch down.</p></entry> |
|
71 </row> |
|
72 <row> |
|
73 <entry><p>Touch release on a multiple mode button</p></entry> |
|
74 <entry><p>Current mode’s function is executed.</p><p> User can switch between |
|
75 different modes by touching the multiple mode button again. State changes |
|
76 after touch release and current mode’s functions are executed. Button states |
|
77 loop when the user touches those again.</p></entry> |
|
78 <entry><p>Tactile: Basic button effect given with touch release. No audio |
|
79 feedback given.</p></entry> |
|
80 </row> |
|
81 <row> |
|
82 <entry><p>Touch down and hold (also known as long tap)</p></entry> |
|
83 <entry><p>Activates the button functionality, assigned for the touch down |
|
84 and hold event. </p><p>Application specific</p></entry> |
|
85 <entry><p>Tactile: Basic button effect and audio feedback is provided with |
|
86 touch down event.</p></entry> |
|
87 </row> |
|
88 <row> |
|
89 <entry><p>Touch down and hold (also known as key repeat</p></entry> |
|
90 <entry><p>May or may not have key repeat functionality</p><p>Application specific</p></entry> |
|
91 <entry><p>Tactile: Basic button effect is provide with touch down. In case |
|
92 of key repeat, sensitive button effect is provided.</p></entry> |
|
93 </row> |
|
94 <row> |
|
95 <entry><p>Touch down and move out from the button and releasing</p></entry> |
|
96 <entry><p>If the drag moves outside the container, button functionality is |
|
97 canceled with release event.</p></entry> |
|
98 <entry><p>Tactile: Basic button effect and audio feedback with touch down |
|
99 is provided. No feedback with release.</p></entry> |
|
100 </row> |
|
101 <row> |
|
102 <entry><p>Touch down and move out from the button and then back before up |
|
103 event</p></entry> |
|
104 <entry><p>As in touch down and release.</p></entry> |
|
105 <entry><p>Tactile: Basic button effect and audio feedback is provided with |
|
106 touch down. If release activates a function, then basic button effect is also |
|
107 provided with touch release. No audio feedback with touch release.</p></entry> |
|
108 </row> |
|
109 <row> |
|
110 <entry><p>Touch down and move out from a button to another button and then |
|
111 releasing</p></entry> |
|
112 <entry><p>If the drag goes outside the container, button functionality is |
|
113 canceled with release event and does not activate the other button.</p></entry> |
|
114 <entry><p>Tactile: Basic button effect and audio feedback with touch down. |
|
115 No feedback with release.</p></entry> |
|
116 </row> |
|
117 </tbody> |
|
118 </tgroup> |
|
119 </table> |
|
120 <section id="GUID-6A8BFD02-3F77-4C95-BFC4-180D2DD211EF"><title>Using generic |
|
121 buttons in C++ applications</title>The API to use for creating the generic |
|
122 button component is the <xref href="GUID-F3EE1000-71A6-4D48-A30B-3D2357BF20FB.dita">Generic |
|
123 Button API</xref>. </section> |
|
124 </conbody></concept> |