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 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<title>KCursor</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link rel="stylesheet" type="text/css" href="../common/doxygen.css" />
<link rel="stylesheet" media="screen" type="text/css" title="KDE Colors" href="../common/kde.css" />
</head>
<body>
<div id="container">
<div id="header">
<div id="header_top">
<div>
<div>
<img alt ="" src="../common/top-kde.jpg"/>
KDE 4.9 PyKDE API Reference
</div>
</div>
</div>
<div id="header_bottom">
<div id="location">
<ul>
<li>KDE's Python API</li>
</ul>
</div>
<div id="menu">
<ul>
<li><a href="../modules.html">Overview</a></li>
<li><a href="http://techbase.kde.org/Development/Languages/Python">PyKDE Home</a></li>
<li><a href="http://kde.org/family/">Sitemap</a></li>
<li><a href="http://kde.org/contact/">Contact Us</a></li>
</ul>
</div>
</div>
</div>
<div id="body_wrapper">
<div id="body">
<div id="right">
<div class="content">
<div id="main">
<div class="clearer"> </div>
<h1>KCursor Class Reference</h1>
<code>from PyKDE4.kdeui import *</code>
<p>
Inherits: QCursor<br />
<h2>Detailed Description</h2>
<p>The KCursor class extends QCursor with the ability to create an arbitrary
named cursor from the cursor theme, and provides a set of static
convenience methods for auto-hiding cursors on widgets.
</p>
<p>
<dl class="author" compact><dt><b>Author:</b></dt><dd> Kurt Granroth <granroth@kde.org> </dd></dl>
</p>
<table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="2"><br><h2>Methods</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KCursor">__init__</a> (self, QString name, <a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qt.html">Qt::CursorShape</a> fallback=Qt.ArrowCursor)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#KCursor">__init__</a> (self, QCursor cursor)</td></tr>
<tr><td colspan="2"><br><h2>Static Methods</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#autoHideEventFilter">autoHideEventFilter</a> (QObject a0, QEvent a1)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="#hideCursorDelay">hideCursorDelay</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setAutoHideCursor">setAutoHideCursor</a> (QWidget w, bool enable, bool customEventFilter=0)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="#setHideCursorDelay">setHideCursorDelay</a> (int ms)</td></tr>
</table>
<hr><h2>Method Documentation</h2><a class="anchor" name="KCursor"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">__init__</td>
<td>(</td>
<td class="paramtype"> <em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QString </td>
<td class="paramname"><em>name</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype"><a href="http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qt.html">Qt::CursorShape</a> </td>
<td class="paramname"><em>fallback=Qt.ArrowCursor</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Attempts to load the requested <b>name</b> cursor from the current theme.
</p>
<p>
This allows one to access cursors that may be in a theme but not in
the Qt.CursorShape enum.
</p>
<p>
If the specified cursor doesn't exist in the theme, or if KDE was
built without Xcursor support, the cursor will be loaded from the X11
cursor font instead. If the cursor doesn't exist in the cursor font,
it falls back to the Qt.CursorShape provided as the second parameter.
</p>
<p>
On platforms other than X11, the fallback shape is always used.
</p>
<p>
</p><dl compact><dt><b>Parameters:</b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td></td><td valign="top"><em>name</em> </td><td> the name of the cursor to try and load
<tr><td></td><td valign="top"><em>fallback</em> </td><td> the cursor to load if <b>name</b> cursor can not be loaded
</td></tr>
</table></dl>
<p>
</p></div></div><a class="anchor" name="KCursor"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">__init__</td>
<td>(</td>
<td class="paramtype"> <em>self</em>, </td>
<td class="paramname"></td>
</tr><tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QCursor </td>
<td class="paramname"><em>cursor</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Creates a copy of <b>cursor.</b>
</p></div></div><hr><h2>Static Method Documentation</h2><a class="anchor" name="autoHideEventFilter"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> autoHideEventFilter</td>
<td>(</td>
<td class="paramtype">QObject </td>
<td class="paramname"><em>a0</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">QEvent </td>
<td class="paramname"><em>a1</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>KCursor has to install an eventFilter over the widget you want to
auto-hide. If you have an own eventFilter() on that widget and stop
some events by returning true, you might break auto-hiding, because
KCursor doesn't get those events.
</p>
<p>
In this case, you need to call setAutoHideCursor( widget, true, true );
to tell KCursor not to install an eventFilter. Then you call this method
from the beginning of your eventFilter, for example:
<pre class="fragment">
edit = new KEdit( this, "some edit widget" );
edit->installEventFilter( this );
KCursor.setAutoHideCursor( edit, true, true );
[...]
bool YourClass.eventFilter( QObject *o, QEvent *e )
{
if ( o == edit ) // only that widget where you enabled auto-hide!
KCursor.autoHideEventFilter( o, e );
// now you can do your own event-processing
[...]
}
</pre>
</p>
<p>
Note that you must not call KCursor.autoHideEventFilter() when you
didn't enable or after disabling auto-hiding.
</p></div></div><a class="anchor" name="hideCursorDelay"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname">int hideCursorDelay</td>
<td>(</td>
<td class="paramtype"> </td>
<td class="paramname">)</td>
<td width="100%"> </td>
</tr>
</table>
</div>
<div class="memdoc"><p><dl class="return" compact><dt><b>Returns:</b></dt><dd> the current auto-hide delay time.
</dd></dl> </p>
<p>
Default is 5000, i.e. 5 seconds.
</p></div></div><a class="anchor" name="setAutoHideCursor"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> setAutoHideCursor</td>
<td>(</td>
<td class="paramtype">QWidget </td>
<td class="paramname"><em>w</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">bool </td>
<td class="paramname"><em>enable</em>, </td>
</tr>
<tr>
<td class="memname"></td>
<td></td>
<td class="paramtype">bool </td>
<td class="paramname"><em>customEventFilter=0</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Sets auto-hiding the cursor for widget <b>w.</b> Enabling it will result in
the cursor being hidden when
<li> a key-event happens </li>
<li> there are no key-events for a configured time-frame (see </li>
setHideCursorDelay())
</p>
<p>
The cursor will be shown again when the focus is lost or a mouse-event
happens.
</p>
<p>
Side effect: when enabling auto-hide, mouseTracking is enabled for the
specified widget, because it's needed to get mouse-move-events. So
don't disable mouseTracking for a widget while using auto-hide for it.
</p>
<p>
When disabling auto-hide, mouseTracking will be disabled, so if you need
mouseTracking after disabling auto-hide, you have to reenable
mouseTracking.
</p>
<p>
If you want to use auto-hiding for widgets that don't take focus, e.g.
a QCanvasView, then you have to pass all key-events that should trigger
auto-hiding to autoHideEventFilter().
</p></div></div><a class="anchor" name="setHideCursorDelay"></a>
<div class="memitem">
<div class="memproto">
<table class="memname"><tr>
<td class="memname"> setHideCursorDelay</td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"><em>ms</em></td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td>
<td></td>
<td width="100%"> </td>
</tr></table>
</div>
<div class="memdoc"><p>Sets the delay time in milliseconds for auto-hiding. When no keyboard
events arrive for that time-frame, the cursor will be hidden.
</p>
<p>
Default is 5000, i.e. 5 seconds.
</p></div></div>
</div>
</div>
</div>
<div id="left">
<div class="menu_box">
<div class="nav_list">
<ul>
<li><a href="../allclasses.html">Full Index</a></li>
</ul>
</div>
<a name="cp-menu" /><div class="menutitle"><div>
<h2 id="cp-menu-project">Modules</h2>
</div></div>
<div class="nav_list">
<ul><li><a href="../akonadi/index.html">akonadi</a></li>
<li><a href="../dnssd/index.html">dnssd</a></li>
<li><a href="../kdecore/index.html">kdecore</a></li>
<li><a href="../kdeui/index.html">kdeui</a></li>
<li><a href="../khtml/index.html">khtml</a></li>
<li><a href="../kio/index.html">kio</a></li>
<li><a href="../knewstuff/index.html">knewstuff</a></li>
<li><a href="../kparts/index.html">kparts</a></li>
<li><a href="../kutils/index.html">kutils</a></li>
<li><a href="../nepomuk/index.html">nepomuk</a></li>
<li><a href="../phonon/index.html">phonon</a></li>
<li><a href="../plasma/index.html">plasma</a></li>
<li><a href="../polkitqt/index.html">polkitqt</a></li>
<li><a href="../solid/index.html">solid</a></li>
<li><a href="../soprano/index.html">soprano</a></li>
</ul></div></div>
</div>
</div>
<div class="clearer"/>
</div>
<div id="end_body"></div>
</div>
<div id="footer"><div id="footer_text">
This documentation is maintained by <a href="mailto:simon@simonzone.com">Simon Edwards</a>.<br />
KDE<sup>®</sup> and <a href="../images/kde_gear_black.png">the K Desktop Environment<sup>®</sup> logo</a> are registered trademarks of <a href="http://ev.kde.org/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
<a href="http://www.kde.org/contact/impressum.php">Legal</a>
</div></div>
</body>
</html>
|