File: qcustomevent.html

package info (click to toggle)
qt-embedded 2.3.2-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 68,608 kB
  • ctags: 45,998
  • sloc: cpp: 276,654; ansic: 71,987; makefile: 29,074; sh: 12,305; yacc: 2,465; python: 1,863; perl: 481; lex: 480; xml: 68; lisp: 15
file content (118 lines) | stat: -rw-r--r-- 5,913 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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Qt Toolkit - QCustomEvent Class</title><style type="text/css"><!--
h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; }
a:link { color: #004faf; text-decoration: none }
a:visited { color: #672967; text-decoration: none }body { background: white; color: black; }
--></style>
</head><body bgcolor="#ffffff">

<table width="100%">
<tr><td><a href="index.html">
<img width="100" height="100" src="qtlogo.png"
alt="Home" border="0"><img width="100"
height="100" src="face.png" alt="Home" border="0">
</a><td valign=top><div align=right><img src="dochead.png" width="472" height="27"><br>
<a href="classes.html"><b>Classes</b></a>
-<a href="annotated.html">Annotated</a>
- <a href="hierarchy.html">Tree</a>
-<a href="functions.html">Functions</a>
-<a href="index.html">Home</a>
-<a href="topicals.html"><b>Structure</b></a>
</div>
</table>

<h1 align=center>QCustomEvent Class Reference</h1><br clear="all">
<p>
The QCustomEvent class provides support for custom events.
<a href="#details">More...</a>
<p>
<code>#include &lt;<a href="qevent-h.html">qevent.h</a>&gt;</code>
<p>
Inherits <a href="qevent.html">QEvent</a>.
<p><a href="qcustomevent-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li><div class="fn"><a href="#6594f1"><b>QCustomEvent</b></a>(inttype)</div>
<li><div class="fn"><a href="#55fe59"><b>QCustomEvent</b></a>(Typetype, void*data)</div>
<li><div class="fn">void*<a href="#05f904"><b>data</b></a>()const</div>
<li><div class="fn">void<a href="#365999"><b>setData</b></a>(void*data)</div>
</ul>
<hr><h2><a name="details"></a>Detailed Description</h2>
The QCustomEvent class provides support for custom events.
<p>
QCustomEvent is a generic event class for user-defined events. User
defined events can be sent to widgets or other <a href="qobject.html">QObject</a> instances
using <a href="qapplication.html#96d77e">QApplication::postEvent</a>() or
<a href="qapplication.html#333290">QApplication::sendEvent</a>(). Subclasses of <a href="qwidget.html">QWidget</a> can easily receive
custom events by implementing the <a href="qwidget.html#6ecc2e">QWidget::customEvent</a>() event
handler function.
<p>QCustomEvent objects should be created with a type id that uniquely
identifies the event type. To avoid clashes with the Qt-defined
events types, the value should be at least as large as the value of
the "User" entry in the <a href="qevent.html#Type">QEvent::Type</a> enum.
<p>QCustomEvent contains a generic void* data member that may be used
for transferring event-specific data to the receiver. Note that
since events are normally delivered asynchronously, the data
pointer, if used, must remain valid until the event has been
received and processed.
<p>QCustomEvent can be used as-is for simple user-defined event types,
but normally you will want to make a subclass of it for your event
types. In a subclass, you can add data members that are suitable for
your event type.
<p>Example:
<pre>  class ColorChangeEvent : public QCustomEvent
  {
  public:
    ColorChangeEvent( <a href="qcolor.html">QColor</a> color )
        : <a href="qcustomevent.html">QCustomEvent</a>( 346798 ), c( color ) {};
    <a href="qcolor.html">QColor</a> color() const { return c; };
  private:
    <a href="qcolor.html">QColor</a> c;
  };

  // To send an event of this custom event type:

  ColorChangeEvent* ce = new ColorChangeEvent( blue );
  <a href="qapplication.html#96d77e">QApplication::postEvent</a>( receiver, ce );    // Qt will delete it when done

  // To receive an event of this custom event type:

  void MyWidget::customEvent( <a href="qcustomevent.html">QCustomEvent</a> * e )
  {
    if ( e-&gt;<a href="qevent.html#4d3e5b">type</a>() == 346798 ) {              // It must be a ColorChangeEvent
      ColorChangeEvent* ce = (ColorChangeEvent*)e;
      newColor = ce-&gt;color();
    }
  }
</pre>
<p>See also  <a href="qwidget.html#6ecc2e">QWidget::customEvent</a>() and <a href="qapplication.html#80dc5b">QApplication::notify</a>().

<hr><h2>Member Function Documentation</h2>
<h3 class="fn"><a name="55fe59"></a>QCustomEvent::QCustomEvent(<a href="qevent.html#Type">Type</a>type, void*data)</h3>
<p>Constructs a custom event object with the event type <em>type</em> and a
pointer to <em>data.</em> (Note that any int value may safely be cast to
<a href="qevent.html#Type">QEvent::Type</a>).
<h3 class="fn"><a name="6594f1"></a>QCustomEvent::QCustomEvent(inttype)</h3>
<p>Constructs a custom event object with event type <em>type.</em> The value
of <em>type</em> must be at least as large as QEvent::User. The data
pointer is set to 0.
<h3 class="fn">void*<a name="05f904"></a>QCustomEvent::data()const</h3>
<p>Returns a pointer to the generic event data.
<p>See also  <a href="#365999">setData</a>().
<h3 class="fn">void<a name="365999"></a>QCustomEvent::setData(void*data)</h3>
<p>Sets the generic data pointer to <em>data.</em>
<p>See also  <a href="#05f904">data</a>().
<hr><p>
Search the documentation, FAQ, qt-interest archive and more (uses
<a href="http://www.trolltech.com">www.trolltech.com</a>):<br>
<form method=post action="http://www.trolltech.com/search.cgi">
<input type=hidden name="version" value="2.3.2"><nobr>
<input size="50" name="search"><input type=submit value="Search">
</nobr></form><hr><p>
This file is part of the <a href="index.html">Qt toolkit</a>,
copyright &copy; 1995-2001
<a href="http://www.trolltech.com">Trolltech</a>, all rights reserved.<p><address><hr><div align="center">
<table width="100%" cellspacing="0" border="0"><tr>
<td>Copyright  2001 Trolltech<td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a>
<td align="right"><div align="right">Qt version 2.3.2</div>
</table></div></address></body></html>