File: qsignal.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 (147 lines) | stat: -rw-r--r-- 7,583 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
<!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 - QSignal 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>QSignal Class Reference</h1><br clear="all">
<p>
The QSignal class can be used to send signals without parameters.
<a href="#details">More...</a>
<p>
<code>#include &lt;<a href="qsignal-h.html">qsignal.h</a>&gt;</code>
<p><a href="qsignal-members.html">List of all member functions.</a>
<h2>Public Members</h2>
<ul>
<li><div class="fn"><a href="#5d5636"><b>QSignal</b></a>(QObject*parent=0, constchar*name=0)</div>
<li><div class="fn"><a href="#f37d61"><b>~QSignal</b></a>()</div>
<li><div class="fn">constchar*<a href="#599025"><b>name</b></a>()const</div>
<li><div class="fn">virtualvoid<a href="#5e96d5"><b>setName</b></a>(constchar*name)</div>
<li><div class="fn">bool<a href="#50f483"><b>connect</b></a>(constQObject*receiver, constchar*member)</div>
<li><div class="fn">bool<a href="#8e558a"><b>disconnect</b></a>(constQObject*receiver, constchar*member=0)</div>
<li><div class="fn">bool<a href="#cd8c57"><b>isBlocked</b></a>()const</div>
<li><div class="fn">void<a href="#8f5269"><b>block</b></a>(boolb)</div>
<li><div class="fn">void<a href="#6d4413"><b>activate</b></a>()</div>
<li><div class="fn">void<a href="#43033f"><b>setParameter</b></a>(intvalue)</div>
<li><div class="fn">int<a href="#c639aa"><b>parameter</b></a>()const</div>
</ul>
<hr><h2><a name="details"></a>Detailed Description</h2>
The QSignal class can be used to send signals without parameters.
<p>
QSignal is a simple extension of <a href="qobject.html">QObject</a> that can send plain signals
without parameters.  If you want to send signals from a class that does
not inherit QObject, you can create an internal QSignal object to emit
the signal. You must also provide a function that connects the signal to
an outside object slot.  This is how we have implemented signals in the
<a href="qmenudata.html">QMenuData</a> class, which is not a QObject.
<p>In general, we recommend inheriting QObject instead.  QObject provides
much more functionality.
<p>Note that QObject is a <em>private</em> base class of QSignal, i.e. you cannot
call any QObject member functions from a QSignal object.
<p>Example:
<pre>    #include &lt;qsignal.h&gt;

    class MyClass
    {
    public:
        MyClass();
       ~MyClass();

        void doSomething();

        void connect( <a href="qobject.html">QObject</a> *receiver, const char *member );

    private:
        <a href="qsignal.html">QSignal</a> *sig;
    };

    MyClass::MyClass()
    {
        sig = new <a href="qsignal.html">QSignal</a>;
    }

    MyClass::~MyClass()
    {
        delete sig;
    }

    void MyClass::doSomething()
    {
        // ... does something
        sig-&gt;<a href="#6d4413">activate</a>();        // activates the signal
    }

    void MyClass::connect( <a href="qobject.html">QObject</a> *receiver, const char *member )
    {
        sig-&gt;<a href="#50f483">connect</a>( receiver, member );
    }
</pre>

<hr><h2>Member Function Documentation</h2>
<h3 class="fn"><a name="5d5636"></a>QSignal::QSignal(<a href="qobject.html">QObject</a>*parent=0, constchar*name=0)</h3>
<p>Constructs a signal object with the parent object <em>parent</em> and a <em>name.</em>
These arguments are passed directly to <a href="qobject.html">QObject</a>.
<h3 class="fn"><a name="f37d61"></a>QSignal::~QSignal()</h3>
<p>Destructs the signal.  All connections are removed, as is the case
with all QObjects.
<h3 class="fn">void<a name="6d4413"></a>QSignal::activate()</h3>
<p>Emits the signal.
<p>See also  <a href="#cd8c57">isBlocked</a>().
<h3 class="fn">void<a name="8f5269"></a>QSignal::block(boolb)</h3>
<p>Blocks the signal if <em>b</em> is TRUE, or unblocks the signal if <em>b</em> is FALSE.
<p>An activated signal disappears into hyperspace if it is blocked.
<p>See also  <a href="#cd8c57">isBlocked</a>(), <a href="#6d4413">activate</a>() and <a href="qobject.html#03d9ac">QObject::blockSignals</a>().
<h3 class="fn">bool<a name="50f483"></a>QSignal::connect(const<a href="qobject.html">QObject</a>*receiver, constchar*member)</h3>
<p>Connects the signal to <em>member</em> in object <em>receiver.</em>
<p>See also  <a href="#8e558a">disconnect</a>() and <a href="qobject.html#7f8e37">QObject::connect</a>().
<h3 class="fn">bool<a name="8e558a"></a>QSignal::disconnect(const<a href="qobject.html">QObject</a>*receiver, constchar*member=0)</h3>
<p>Disonnects the signal from <em>member</em> in object <em>receiver.</em>
<p>See also  <a href="#50f483">connect</a>() and <a href="qobject.html#3ca0ec">QObject::disconnect</a>().
<h3 class="fn">bool<a name="cd8c57"></a>QSignal::isBlocked()const</h3>
<p>Returns TRUE if the signal is blocked, or FALSE if it is not blocked.
<p>The signal is not blocked by default.
<p>See also  <a href="#8f5269">block</a>() and <a href="qobject.html#d714f8">QObject::signalsBlocked</a>().
<h3 class="fn">constchar*<a name="599025"></a>QSignal::name()const</h3>
<p>Returns the name of this signal object.
<p>Since <a href="qobject.html">QObject</a> is a private base class, we have added this function, which
calls <a href="qobject.html#53d9cc">QObject::name</a>().
<h3 class="fn">int<a name="c639aa"></a>QSignal::parameter()const</h3>
<p>Returns the signal's parameter.
<h3 class="fn">void<a name="5e96d5"></a>QSignal::setName(constchar*name) <code>[virtual]</code></h3>
<p>Sets the name of this signal object to <em>name.</em>
<p>Since <a href="qobject.html">QObject</a> is a private base class, we have added this function, which
calls <a href="qobject.html#ceac81">QObject::setName</a>().
<p>Reimplemented from <a href="qobject.html#ceac81">QObject.</a>
<h3 class="fn">void<a name="43033f"></a>QSignal::setParameter(intvalue)</h3>
<p>Sets the signal's parameter to <em>value</em>
<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>