File: qtabletevent.html

package info (click to toggle)
python-qt4 4.9.3-4
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 34,432 kB
  • sloc: python: 34,126; cpp: 11,938; xml: 290; makefile: 223; php: 27
file content (266 lines) | stat: -rw-r--r-- 19,076 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html><head><title>QTabletEvent Class Reference</title><style>h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }
td.postheader { font-family: sans-serif }
tr.address { font-family: sans-serif }
body { background: #ffffff; color: black; }
</style></head><body><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr /><td align="left" valign="top" width="32"><img align="left" border="0" height="32" src="images/rb-logo.png" width="32" /></td><td width="1">&#160;&#160;</td><td class="postheader" valign="center"><a href="index.html"><font color="#004faf">Home</font></a>&#160;&#183; <a href="classes.html"><font color="#004faf">All Classes</font></a>&#160;&#183; <a href="modules.html"><font color="#004faf">Modules</font></a></td></table><h1 align="center">QTabletEvent Class Reference<br /><sup><sup>[<a href="qtgui.html">QtGui</a> module]</sup></sup></h1><p>The QTabletEvent class contains parameters that describe a
Tablet event. <a href="#details">More...</a></p>

<p>Inherits <a href="qinputevent.html">QInputEvent</a>.</p><h3>Types</h3><ul><li><div class="fn" />enum <b><a href="qtabletevent.html#PointerType-enum">PointerType</a></b> { UnknownPointer, Pen, Cursor, Eraser }</li><li><div class="fn" />enum <b><a href="qtabletevent.html#TabletDevice-enum">TabletDevice</a></b> { NoDevice, Puck, Stylus, Airbrush, ..., RotationStylus }</li></ul><h3>Methods</h3><ul><li><div class="fn" /><b><a href="qtabletevent.html#QTabletEvent">__init__</a></b> (<i>self</i>, QEvent.Type&#160;<i>t</i>, QPoint&#160;<i>pos</i>, QPoint&#160;<i>globalPos</i>, QPointF&#160;<i>hiResGlobalPos</i>, int&#160;<i>device</i>, int&#160;<i>pointerType</i>, float&#160;<i>pressure</i>, int&#160;<i>xTilt</i>, int&#160;<i>yTilt</i>, float&#160;<i>tangentialPressure</i>, float&#160;<i>rotation</i>, int&#160;<i>z</i>, Qt.KeyboardModifiers&#160;<i>keyState</i>, int&#160;<i>uniqueID</i>)</li><li><div class="fn" /><b><a href="qtabletevent.html#QTabletEvent-2">__init__</a></b> (<i>self</i>, QTabletEvent)</li><li><div class="fn" />TabletDevice <b><a href="qtabletevent.html#device">device</a></b> (<i>self</i>)</li><li><div class="fn" />QPoint <b><a href="qtabletevent.html#globalPos">globalPos</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#globalX">globalX</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#globalY">globalY</a></b> (<i>self</i>)</li><li><div class="fn" />QPointF <b><a href="qtabletevent.html#hiResGlobalPos">hiResGlobalPos</a></b> (<i>self</i>)</li><li><div class="fn" />float <b><a href="qtabletevent.html#hiResGlobalX">hiResGlobalX</a></b> (<i>self</i>)</li><li><div class="fn" />float <b><a href="qtabletevent.html#hiResGlobalY">hiResGlobalY</a></b> (<i>self</i>)</li><li><div class="fn" />PointerType <b><a href="qtabletevent.html#pointerType">pointerType</a></b> (<i>self</i>)</li><li><div class="fn" />QPoint <b><a href="qtabletevent.html#pos">pos</a></b> (<i>self</i>)</li><li><div class="fn" />float <b><a href="qtabletevent.html#pressure">pressure</a></b> (<i>self</i>)</li><li><div class="fn" />float <b><a href="qtabletevent.html#rotation">rotation</a></b> (<i>self</i>)</li><li><div class="fn" />float <b><a href="qtabletevent.html#tangentialPressure">tangentialPressure</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#uniqueId">uniqueId</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#x">x</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#xTilt">xTilt</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#y">y</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#yTilt">yTilt</a></b> (<i>self</i>)</li><li><div class="fn" />int <b><a href="qtabletevent.html#z">z</a></b> (<i>self</i>)</li></ul><a name="details" /><hr /><h2>Detailed Description</h2><p>The QTabletEvent class contains parameters that describe a
Tablet event.</p>
<p>Tablet Events are generated from a Wacom tablet. Most of the
time you will want to deal with events from the tablet as if they
were events from a mouse; for example, you would retrieve the
cursor position with <a href="qtabletevent.html#x">x</a>(),
<a href="qtabletevent.html#y">y</a>(), <a href="qtabletevent.html#pos">pos</a>(), <a href="qtabletevent.html#globalX">globalX</a>(), <a href="qtabletevent.html#globalY">globalY</a>(), and <a href="qtabletevent.html#globalPos">globalPos</a>(). In some situations
you may wish to retrieve the extra information provided by the
tablet device driver; for example, you might want to do subpixeling
with higher resolution coordinates or you may want to adjust color
brightness based on pressure. QTabletEvent allows you to read the
<a href="qtabletevent.html#pressure">pressure</a>(), the <a href="qtabletevent.html#xTilt">xTilt</a>(), and <a href="qtabletevent.html#yTilt">yTilt</a>(), as well as the type of
device being used with <a href="qtabletevent.html#device">device</a>() (see <a href="qtabletevent.html#TabletDevice-enum">TabletDevice</a>). It can
also give you the minimum and maximum values for each device's
pressure and high resolution coordinates.</p>
<p>A tablet event contains a special accept flag that indicates
whether the receiver wants the event. You should call <a href="qevent.html#accept">QTabletEvent.accept</a>() if you handle the
tablet event; otherwise it will be sent to the parent widget. The
exception are <a href="qevent.html#Type-enum">TabletEnterProximity</a> and <a href="qevent.html#Type-enum">TabletLeaveProximity</a> events, these are
only sent to <a href="qapplication.html">QApplication</a> and don't
check whether or not they are accepted.</p>
<p>The <a href="qwidget.html#enabled-prop">QWidget.setEnabled</a>() function can
be used to enable or disable mouse and keyboard events for a
widget.</p>
<p>The event handler <a href="qwidget.html#tabletEvent">QWidget.tabletEvent</a>() receives all
three types of tablet events. Qt will first send a tabletEvent
then, if it is not accepted, it will send a mouse event. This
allows applications that don't utilize tablets to use a tablet like
a mouse, while also enabling those who want to use both tablets and
mouses differently.</p>
<a id="notes-for-x11-users" name="notes-for-x11-users" />
<h3>Notes for X11 Users</h3>
<p>Qt uses the following hard-coded names to identify tablet
devices from the xorg.conf file on X11 (apart from IRIX): 'stylus',
'pen', and 'eraser'. If the devices have other names, they will not
be picked up Qt.</p>
<hr /><h2>Type Documentation</h2><h3 class="fn"><a name="PointerType-enum" />QTabletEvent.PointerType</h3><p>This enum defines what type of point is generating the
event.</p>
<table class="valuelist">
<tr class="odd" valign="top">
<th class="tblConst">Constant</th>
<th class="tblval">Value</th>
<th class="tbldscr">Description</th>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.UnknownPointer</tt></td>
<td class="topAlign"><tt>0</tt></td>
<td class="topAlign">An unknown device.</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Pen</tt></td>
<td class="topAlign"><tt>1</tt></td>
<td class="topAlign">Tip end of a stylus-like device (the narrow
end of the pen).</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Cursor</tt></td>
<td class="topAlign"><tt>2</tt></td>
<td class="topAlign">Any puck-like device.</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Eraser</tt></td>
<td class="topAlign"><tt>3</tt></td>
<td class="topAlign">Eraser end of a stylus-like device (the broad
end of the pen).</td>
</tr>
</table>
<p><b>See also</b> <a href="qtabletevent.html#pointerType">pointerType</a>().</p>


<h3 class="fn"><a name="TabletDevice-enum" />QTabletEvent.TabletDevice</h3><p>This enum defines what type of device is generating the
event.</p>
<table class="valuelist">
<tr class="odd" valign="top">
<th class="tblConst">Constant</th>
<th class="tblval">Value</th>
<th class="tbldscr">Description</th>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.NoDevice</tt></td>
<td class="topAlign"><tt>0</tt></td>
<td class="topAlign">No device, or an unknown device.</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Puck</tt></td>
<td class="topAlign"><tt>1</tt></td>
<td class="topAlign">A Puck (a device that is similar to a flat
mouse with a transparent circle with cross-hairs).</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Stylus</tt></td>
<td class="topAlign"><tt>2</tt></td>
<td class="topAlign">A Stylus.</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.Airbrush</tt></td>
<td class="topAlign"><tt>3</tt></td>
<td class="topAlign">An airbrush</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.FourDMouse</tt></td>
<td class="topAlign"><tt>4</tt></td>
<td class="topAlign">A 4D Mouse.</td>
</tr>
<tr>
<td class="topAlign"><tt>QTabletEvent.RotationStylus</tt></td>
<td class="topAlign"><tt>6</tt></td>
<td class="topAlign">A special stylus that also knows about
rotation (a 6D stylus).</td>
</tr>
</table>
<p>This enum was introduced or modified in Qt 4.1.</p>
<hr /><h2>Method Documentation</h2><h3 class="fn"><a name="QTabletEvent" />QTabletEvent.__init__ (<i>self</i>, <a href="qevent.html#Type-enum">QEvent.Type</a>&#160;<i>t</i>, <a href="qpoint.html">QPoint</a>&#160;<i>pos</i>, <a href="qpoint.html">QPoint</a>&#160;<i>globalPos</i>, <a href="qpointf.html">QPointF</a>&#160;<i>hiResGlobalPos</i>, int&#160;<i>device</i>, int&#160;<i>pointerType</i>, float&#160;<i>pressure</i>, int&#160;<i>xTilt</i>, int&#160;<i>yTilt</i>, float&#160;<i>tangentialPressure</i>, float&#160;<i>rotation</i>, int&#160;<i>z</i>, <a href="qt-keyboardmodifiers.html">Qt.KeyboardModifiers</a>&#160;<i>keyState</i>, int&#160;<i>uniqueID</i>)</h3><p>Construct a tablet event of the given <i>type</i>.</p>
<p>The <i>pos</i> parameter indicates where the event occurred in
the widget; <i>globalPos</i> is the corresponding position in
absolute coordinates. The <i>hiResGlobalPos</i> contains a high
resolution measurement of the position.</p>
<p><i>pressure</i> contains the pressure exerted on the
<i>device</i>.</p>
<p><i>pointerType</i> describes the type of pen that is being
used.</p>
<p><i>xTilt</i> and <i>yTilt</i> contain the device's degree of
tilt from the x and y axes respectively.</p>
<p><i>keyState</i> specifies which keyboard modifiers are pressed
(e.g., <b>Ctrl</b>).</p>
<p>The <i>uniqueID</i> parameter contains the unique ID for the
current device.</p>
<p>The <i>z</i> parameter contains the coordinate of the device on
the tablet, this is usually given by a wheel on 4D mouse. If the
device does not support a Z-axis, pass zero here.</p>
<p>The <i>tangentialPressure</i> parameter contins the tangential
pressure of an air brush. If the device does not support tangential
pressure, pass 0 here.</p>
<p><i>rotation</i> contains the device's rotation in degrees. 4D
mice support rotation. If the device does not support rotation,
pass 0 here.</p>
<p><b>See also</b> <a href="qtabletevent.html#pos">pos</a>(),
<a href="qtabletevent.html#globalPos">globalPos</a>(), <a href="qtabletevent.html#device">device</a>(), <a href="qtabletevent.html#pressure">pressure</a>(), <a href="qtabletevent.html#xTilt">xTilt</a>(), <a href="qtabletevent.html#yTilt">yTilt</a>(), <a href="qtabletevent.html#uniqueId">uniqueId</a>(), <a href="qtabletevent.html#rotation">rotation</a>(), <a href="qtabletevent.html#tangentialPressure">tangentialPressure</a>(),
and <a href="qtabletevent.html#z">z</a>().</p>


<h3 class="fn"><a name="QTabletEvent-2" />QTabletEvent.__init__ (<i>self</i>, <a href="qtabletevent.html">QTabletEvent</a>)</h3><h3 class="fn"><a name="device" /><a href="qtabletevent.html#TabletDevice-enum">TabletDevice</a> QTabletEvent.device (<i>self</i>)</h3><p>Returns the type of device that generated the event.</p>
<p><b>See also</b> <a href="qtabletevent.html#TabletDevice-enum">TabletDevice</a>.</p>


<h3 class="fn"><a name="globalPos" /><a href="qpoint.html">QPoint</a> QTabletEvent.globalPos (<i>self</i>)</h3><p>Returns the global position of the device <i>at the time of the
event</i>. This is important on asynchronous windows systems like
X11; whenever you move your widgets around in response to mouse
events, globalPos() can differ significantly from the current
position <a href="qcursor.html#pos">QCursor.pos</a>().</p>
<p><b>See also</b> <a href="qtabletevent.html#globalX">globalX</a>(), <a href="qtabletevent.html#globalY">globalY</a>(), and <a href="qtabletevent.html#hiResGlobalPos">hiResGlobalPos</a>().</p>


<h3 class="fn"><a name="globalX" />int QTabletEvent.globalX (<i>self</i>)</h3><p>Returns the global x position of the mouse pointer at the time
of the event.</p>
<p><b>See also</b> <a href="qtabletevent.html#globalY">globalY</a>(), <a href="qtabletevent.html#globalPos">globalPos</a>(), and <a href="qtabletevent.html#hiResGlobalX">hiResGlobalX</a>().</p>


<h3 class="fn"><a name="globalY" />int QTabletEvent.globalY (<i>self</i>)</h3><p>Returns the global y position of the tablet device at the time
of the event.</p>
<p><b>See also</b> <a href="qtabletevent.html#globalX">globalX</a>(), <a href="qtabletevent.html#globalPos">globalPos</a>(), and <a href="qtabletevent.html#hiResGlobalY">hiResGlobalY</a>().</p>


<h3 class="fn"><a name="hiResGlobalPos" /><a href="qpointf.html">QPointF</a> QTabletEvent.hiResGlobalPos (<i>self</i>)</h3><p>The high precision coordinates delivered from the tablet
expressed. Sub pixeling information is in the fractional part of
the <a href="qpointf.html">QPointF</a>.</p>
<p><b>See also</b> <a href="qtabletevent.html#globalPos">globalPos</a>(), <a href="qtabletevent.html#hiResGlobalX">hiResGlobalX</a>(), and <a href="qtabletevent.html#hiResGlobalY">hiResGlobalY</a>().</p>


<h3 class="fn"><a name="hiResGlobalX" />float QTabletEvent.hiResGlobalX (<i>self</i>)</h3><p>The high precision x position of the tablet device.</p>


<h3 class="fn"><a name="hiResGlobalY" />float QTabletEvent.hiResGlobalY (<i>self</i>)</h3><p>The high precision y position of the tablet device.</p>


<h3 class="fn"><a name="pointerType" /><a href="qtabletevent.html#PointerType-enum">PointerType</a> QTabletEvent.pointerType (<i>self</i>)</h3><p>Returns the type of point that generated the event.</p>


<h3 class="fn"><a name="pos" /><a href="qpoint.html">QPoint</a> QTabletEvent.pos (<i>self</i>)</h3><p>Returns the position of the device, relative to the widget that
received the event.</p>
<p>If you move widgets around in response to mouse events, use
<a href="qtabletevent.html#globalPos">globalPos</a>() instead of
this function.</p>
<p><b>See also</b> <a href="qtabletevent.html#x">x</a>(), <a href="qtabletevent.html#y">y</a>(), and <a href="qtabletevent.html#globalPos">globalPos</a>().</p>


<h3 class="fn"><a name="pressure" />float QTabletEvent.pressure (<i>self</i>)</h3><p>Returns the pressure for the device. 0.0 indicates that the
stylus is not on the tablet, 1.0 indicates the maximum amount of
pressure for the stylus.</p>
<p><b>See also</b> <a href="qtabletevent.html#tangentialPressure">tangentialPressure</a>().</p>


<h3 class="fn"><a name="rotation" />float QTabletEvent.rotation (<i>self</i>)</h3><p>Returns the rotation of the current device in degress. This is
usually given by a 4D Mouse. If the device doesn't support rotation
this value is always 0.0.</p>


<h3 class="fn"><a name="tangentialPressure" />float QTabletEvent.tangentialPressure (<i>self</i>)</h3><p>Returns the tangential pressure for the device. This is
typically given by a finger wheel on an airbrush tool. The range is
from -1.0 to 1.0. 0.0 indicates a neutral position. Current
airbrushes can only move in the positive direction from the
neutrual position. If the device does not support tangential
pressure, this value is always 0.0.</p>
<p><b>See also</b> <a href="qtabletevent.html#pressure">pressure</a>().</p>


<h3 class="fn"><a name="uniqueId" />int QTabletEvent.uniqueId (<i>self</i>)</h3><p>Returns a unique ID for the current device, making it possible
to differentiate between multiple devices being used at the same
time on the tablet.</p>
<p>Support of this feature is dependent on the tablet.</p>
<p>Values for the same device may vary from OS to OS.</p>
<p>Later versions of the Wacom driver for Linux will now report the
ID information. If you have a tablet that supports unique ID and
are not getting the information on Linux, consider upgrading your
driver.</p>
<p>As of Qt 4.2, the unique ID is the same regardless of the
orientation of the pen. Earlier versions would report a different
value when using the eraser-end versus the pen-end of the stylus on
some OS's.</p>
<p><b>See also</b> <a href="qtabletevent.html#pointerType">pointerType</a>().</p>


<h3 class="fn"><a name="x" />int QTabletEvent.x (<i>self</i>)</h3><p>Returns the x position of the device, relative to the widget
that received the event.</p>
<p><b>See also</b> <a href="qtabletevent.html#y">y</a>() and
<a href="qtabletevent.html#pos">pos</a>().</p>


<h3 class="fn"><a name="xTilt" />int QTabletEvent.xTilt (<i>self</i>)</h3><p>Returns the angle between the device (a pen, for example) and
the perpendicular in the direction of the x axis. Positive values
are towards the tablet's physical right. The angle is in the range
-60 to +60 degrees.</p>
<p class="centerAlign"><img alt="" src="images/qtabletevent-tilt.png" /></p>
<p><b>See also</b> <a href="qtabletevent.html#yTilt">yTilt</a>().</p>


<h3 class="fn"><a name="y" />int QTabletEvent.y (<i>self</i>)</h3><p>Returns the y position of the device, relative to the widget
that received the event.</p>
<p><b>See also</b> <a href="qtabletevent.html#x">x</a>() and
<a href="qtabletevent.html#pos">pos</a>().</p>


<h3 class="fn"><a name="yTilt" />int QTabletEvent.yTilt (<i>self</i>)</h3><p>Returns the angle between the device (a pen, for example) and
the perpendicular in the direction of the y axis. Positive values
are towards the bottom of the tablet. The angle is within the range
-60 to +60 degrees.</p>
<p><b>See also</b> <a href="qtabletevent.html#xTilt">xTilt</a>().</p>


<h3 class="fn"><a name="z" />int QTabletEvent.z (<i>self</i>)</h3><p>Returns the z position of the device. Typically this is
represented by a wheel on a 4D Mouse. If the device does not
support a Z-axis, this value is always zero. This is <b>not</b> the
same as pressure.</p>
<p><b>See also</b> <a href="qtabletevent.html#pressure">pressure</a>().</p>
<address><hr /><div align="center"><table border="0" cellspacing="0" width="100%"><tr class="address"><td align="left" width="25%">PyQt&#160;4.9.3 for X11</td><td align="center" width="50%">Copyright &#169; <a href="http://www.riverbankcomputing.com">Riverbank&#160;Computing&#160;Ltd</a> and <a href="http://www.qtsoftware.com">Nokia</a> 2012</td><td align="right" width="25%">Qt&#160;4.8.2</td></tr></table></div></address></body></html>