Symbian3/SDK/Source/GUID-9C269F45-F160-5A4B-ABF8-896D2A538E3B.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 02 Jul 2010 12:51:36 +0100
changeset 11 5072524fcc79
parent 8 ae94777fff8f
child 13 48780e181b38
permissions -rw-r--r--
Fixing terminology
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     1
<?xml version="1.0" encoding="UTF-8"?>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     2
<!--Arbortext, Inc., 1988-2008, v.4002-->
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     3
<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     4
 "concept.dtd">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     5
<concept id="GUID-9C269F45-F160-5A4B-ABF8-896D2A538E3B" xml:lang="en">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     6
<title>Advanced Pointer Overview </title>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     7
<shortdesc>This is an overview of the Window Server extensions that
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     8
support the use of advanced pointers. These extensions enable mobile
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
     9
devices to respond to events from multiple pointers, including their
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    10
proximity and pressure. These extensions are available only in ScreenPlay. </shortdesc>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    11
<prolog>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    12
<metadata><keywords></keywords></metadata>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    13
</prolog>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    14
<conbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    15
<p> <b>Variant</b>: <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    16
href="GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.dita">ScreenPlay</xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    17
>. <b>Target audience</b>: Application developers. </p>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    18
<section id="GUID-773C3275-F562-5428-A34C-7D54F10D4BC1"><title>Architecture</title
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    19
> <p>In response to multiple pointer movements, an input driver generates
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    20
a pointer event for each touch. The Window Server changes and delivers
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    21
the pointer events to the client application, as shown in the following
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    22
diagram. </p> <fig id="GUID-4A02299F-8401-5761-863C-91F0338731DA">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    23
<title>              Pointer events            </title>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    24
<image
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    25
href="GUID-5503ACC5-1C78-5EF6-AAD2-4B6FFA8890B9_d0e191959_href.png"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    26
placement="inline"></image></fig> <p>Pointer-related events move from
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    27
the driver to the application. The <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    28
href="GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD.dita"><apiname>TRawEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    29
></xref>, <xref href="GUID-5D0B1595-1AC7-3C44-AC6B-0EFB5EABCF31.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    30
><apiname>TWsEvent</apiname></xref> and <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    31
href="GUID-1FFA0073-3D83-388E-A824-08C31F90CC54.dita"><apiname>TPointerEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    32
></xref> classes encapsulate the event information. </p> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    33
<section><title>Key concepts/terms</title> <p>The following terms
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    34
are introduced here and are used throughout the advanced pointer documentation: </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    35
> <dl>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    36
<dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    37
<dt>Pointer</dt>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    38
<dd><p>A device that points at the screen, for example, a mouse, pen,
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    39
finger, or touchpad. </p> </dd></dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    40
<dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    41
<dt>Multi<?Pub Caret?>ple pointer support</dt>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    42
<dd><p>Handling more than one pointer at the same time. </p> </dd>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    43
</dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    44
<dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    45
<dt>Proximity</dt>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    46
<dd><p>Proximity in this context means the distance of the pointer
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    47
from the mobile device. Sensors detect the value of the proximity
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    48
of the pointer from the mobile device. </p> </dd></dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    49
<dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    50
<dt>Pressure</dt>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    51
<dd><p>Pressure in this context is a value that indicates the force
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    52
applied to the mobile device by the pointer. Sensors detect the value
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    53
of the pressure of the pointer on the mobile device. </p> </dd>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    54
</dlentry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    55
</dl> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    56
<section><title>Logical model of pointing devices</title> <p>A logical
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    57
model is used to handle all of the different pointing devices correctly.
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    58
In this logical model, the pointer is <b>performing an action</b> when
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    59
any of the following scenarios occur: </p> <ul>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    60
<li id="GUID-3A57E7AE-A8FB-5C2B-AC54-4F60DDD35783"><p>An <codeph>EButton1Down</codeph
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    61
> event is sent to the client. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    62
<li id="GUID-BBD5660A-2A72-5F14-9A28-D7F31761F963"><p> <codeph>EDrag</codeph
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    63
> events are sent to the client (optional). </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    64
<li id="GUID-54B774E8-6BD8-51EB-9854-9953F95AFBF5"><p>An <codeph>EButton1Up</codeph
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    65
> event is sent to the client. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    66
</ul> <p>Pointing devices can be in one of the following states: </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    67
> <table id="GUID-AAE663FE-E94F-556B-B635-93DDD6C27902">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    68
<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    69
<thead>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    70
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    71
<entry>State</entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    72
<entry>Description</entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    73
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    74
</thead>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    75
<tbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    76
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    77
<entry><p> <b>Out of range</b>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    78
<entry><p>Not detected by the device's sensors. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    79
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    80
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    81
<entry><p> <b>Up</b>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    82
<entry><p>Detected by sensors, coordinates available, not performing
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    83
an action. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    84
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    85
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    86
<entry><p> <b>Down</b>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    87
<entry><p>Detected by sensors, coordinates available, performing an
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    88
action (as defined above). </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    89
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    90
</tbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    91
</tgroup>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    92
</table> <p>The mapping between these states and physical actions
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    93
performed by the user vary for different pointing device types (mouse,
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    94
finger) and different phone models. Here are two example interpretations
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    95
of physical pointing device states: </p> <ul>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    96
<li id="GUID-E01E8EC4-8535-5FD4-980E-214FC7542717"><p> <b>Mouse</b
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    97
>. An example interpretation by a driver of the physical state of
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    98
a mouse is as follows: It is always in the <i>up</i> state except
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
    99
when the left button is pressed, when it is in the <i>down</i> state.
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   100
It is never out of range. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   101
<li id="GUID-7CC705BF-FC6C-534B-B00B-0C07A6B9A856"><p> <b>Fingers
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   102
with proximity support</b>. The following is an example interpretation
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   103
of finger physical states when the device has proximity support (that
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   104
is, it can measure the finger's proximity from the screen): </p> <ul>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   105
<li id="GUID-F4F27FC9-F4F3-5475-8DA5-771B804828CD"><p> <i>Out of range</i
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   106
> when proximity > 10cm </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   107
<li id="GUID-0B8F3832-24C1-5421-A224-5FFFC6EBA3F4"><p> <i>Up</i> when
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   108
1cm &lt; proximity &lt;= 10cm </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   109
<li id="GUID-CE65B2EC-AD8E-5B9D-A514-07EC73137518"><p> <i> Down</i
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   110
> when proximity &lt;= 1cm </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   111
</ul> <p>In this way the finger can perform actions (for example,
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   112
press buttons, drag items) without touching the screen. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   113
</ul> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   114
<section><title>Multiple pointers</title> <p>The system handles multiple
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   115
pointers at the same time by identifying each one with a number and
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   116
sending pointer events separately for each of them. A field (<codeph
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   117
>iPointerNumber</codeph>) in the pointer event classes (<xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   118
href="GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD.dita"><apiname>TRawEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   119
></xref> and the <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   120
href="GUID-FADA3278-FF8B-308F-90AD-3DCF8911A023.dita"><apiname>TAdvancedPointerEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   121
></xref> class which extends <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   122
href="GUID-1FFA0073-3D83-388E-A824-08C31F90CC54.dita"><apiname>TPointerEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   123
></xref>) identifies the pointer for which the event occurred. The
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   124
order and frequency of pointer events depends on the driver of the
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   125
pointing device. </p> <p>On each phone there is a pool of available
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   126
pointer numbers, ranging from 0 to <codeph>HALData::EPointerNumberOfPointers</codeph
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   127
> - 1. Every time the driver detects a new pointer coming into the
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   128
range of the device, the driver assigns a number from the pool. After
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   129
the pointer goes out of the range of the device, the number no longer
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   130
identifies that particular pointer and the driver sends <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   131
href="GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD.dita#GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD/GUID-C7FB5C5F-B7E1-3738-B72D-1AD81699414F"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   132
><apiname>TRawEvent::EPointer3DOutOfRange</apiname></xref> with this
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   133
pointer number. The number is then released back to the pool and may
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   134
be reused to identify another pointer coming into the device's range. </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   135
> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   136
<section><title>Pressure and proximity</title> <p>The pressure of
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   137
the pointer on the screen is represented as a positive integer. The
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   138
proximity of the pointer to the screen is represented as a negative
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   139
integer. It is up to the UI Platform to define units of pressure and
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   140
proximity, which may be non-linear. In the <xref
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   141
href="GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD.dita"><apiname>TRawEvent</apiname
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   142
></xref> class, pressure and proximity are expressed in terms of the
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   143
Z coordinate of the pointer. The definition of the Z coordinate is
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   144
based on the assumption that the pointer is either hovering over the
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   145
screen (proximity &lt; 0, pressure = 0) or touching the screen (proximity
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   146
= 0, pressure >= 0): </p> <ul>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   147
<li id="GUID-21CB6F60-3076-5EBE-9900-D870C670FE5B"><p>If proximity
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   148
&lt; 0 and pressure = 0 then the Z coordinate = proximity. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   149
<li id="GUID-B5EA992D-4F86-54E1-A64C-673691460945"><p>If proximity
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   150
= 0 and pressure >= 0 then the Z coordinate = pressure. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   151
</ul> <fig id="GUID-FCE3CEAF-CCF3-5472-AC15-5DF5F092AA5E">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   152
<title>              Relationships between the pointer proximity,
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   153
pressure and z              coordinate            </title>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   154
<image
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   155
href="GUID-1A0FB98B-8DB3-5067-9B71-FF838F6AE402_d0e192246_href.png"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   156
placement="inline"></image></fig> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   157
<section><title>API summary</title> <table
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   158
id="GUID-07002499-484E-500E-AC57-4089AB0197E8">
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   159
<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   160
<thead>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   161
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   162
<entry>API</entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   163
<entry>Description</entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   164
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   165
</thead>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   166
<tbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   167
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   168
<entry><p> <xref href="GUID-8BE90160-2C60-3582-82C8-4A108C7C0317.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   169
><apiname>HALData</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   170
<entry><p>Includes z coordinate, pressure precision and number of
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   171
pointers. Also contains threshold values for proximity and pressure. </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   172
> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   173
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   174
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   175
<entry><p> <xref href="GUID-668CEA36-3933-3BBE-A980-CAB62617B4FD.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   176
><apiname>TRawEvent</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   177
<entry><p>Includes the pointer number and a structure for proximity
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   178
and pressure data. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   179
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   180
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   181
<entry><p> <xref href="GUID-1460DD8F-9AA1-3B99-8FFD-F309959CCA34.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   182
><apiname>RWindowBase</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   183
<entry><p>Enables advanced pointer events for the window. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   184
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   185
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   186
<entry><p> <xref href="GUID-5D0B1595-1AC7-3C44-AC6B-0EFB5EABCF31.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   187
><apiname>TWsEvent</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   188
<entry><p>Supports <codeph>TAdvancedPointerEvent</codeph> (derived
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   189
from <codeph>TPointerEvent)</codeph>. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   190
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   191
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   192
<entry><p> <xref href="GUID-1FFA0073-3D83-388E-A824-08C31F90CC54.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   193
><apiname>TPointerEvent</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   194
<entry><p>Includes event types for pressing and closeness. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   195
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   196
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   197
<entry><p> <xref href="GUID-FADA3278-FF8B-308F-90AD-3DCF8911A023.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   198
><apiname>TAdvancedPointerEvent</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   199
<entry><p>Inherits from <codeph>TPointerEvent</codeph>. </p> <p>Provides
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   200
capabilities for pressure, proximity and multiple pointers. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   201
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   202
<row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   203
<entry><p> <xref href="GUID-643DDA78-C7A7-386D-AB3F-8710141DDDA9.dita"
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   204
><apiname>RWsSession</apiname></xref>  </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   205
<entry><p>Provides get and set methods to manipulate threshold values
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   206
for proximity and pressure. </p> </entry>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   207
</row>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   208
</tbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   209
</tgroup>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   210
</table> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   211
<section><title>Typical uses</title> <ul>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   212
<li id="GUID-CA055058-AAD6-5A89-BC7E-7B5E81FA8963"><p> <b>Enabling
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   213
many pointers for a window</b>  </p> <p>Enables multiple pointers
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   214
to act on one window. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   215
<li id="GUID-DBD49B85-207D-5722-8AE3-B00946899559"><p> <b>Enabling
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   216
concurrent control of many objects</b>  </p> <p>Controls many objects
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   217
on one or more windows with many pointers. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   218
<li id="GUID-AF442CD4-FDEC-5FF4-B8F9-6ED8CDB9E957"><p> <b>Getting
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   219
z coordinates from TPointerEvent</b>  </p> <p>Reads the pressure and
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   220
proximity values for a pointer. </p> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   221
<li id="GUID-13E0E5DA-609A-52B3-A90A-9A84C3A8BF22"><p> <b>Pinch zooming</b
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   222
>  </p> <p>Enables the user to zoom in and out of data by using two
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   223
fingers to pinch an area of the screen. Pinch zooming is normally
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   224
used in web-page, map, picture, chart and control applications. </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   225
> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   226
<li id="GUID-C038F18F-94DE-5391-A1F8-BEF83274D143"><p> <b>Responding
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   227
to high pressure events</b>  </p> <p>As the pointer state changes,
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   228
the pressure value can be checked. When it passes over a threshold
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   229
value, the Window Server responds appropriately to the client. </p
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   230
> </li>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   231
</ul> </section>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   232
</conbody>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   233
<related-links>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   234
<link href="GUID-9AD75103-CD56-5279-B639-5CA2BBF979B5.dita"><linktext
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   235
>Pointer States and Event                 Communication</linktext>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   236
</link>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   237
<link href="GUID-C60DC070-572B-5960-B394-550426FDB909.dita"><linktext
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   238
>Advanced Pointer                 Tutorial</linktext></link>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   239
</related-links>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   240
</concept>
5072524fcc79 Fixing terminology
Dominic Pinkman <dominic.pinkman@nokia.com>
parents: 8
diff changeset
   241
<?Pub *0000011675?>