Qtopia Home - Classes - Hierachy - Annotated - Functions - Licenses - Reference |
|
The QSignal class can be used to send signals without parameters. More...
#include <qsignal.h>
QSignal is a simple extension of QObject 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 QMenuData class, which is not a QObject.
In general, we recommend inheriting QObject instead. QObject provides much more functionality.
Note that QObject is a private base class of QSignal, i.e. you cannot call any QObject member functions from a QSignal object.
Example:
#include <qsignal.h>
class MyClass
{
public:
MyClass();
~MyClass();
void doSomething();
void connect( QObject *receiver, const char *member );
private:
QSignal *sig;
};
MyClass::MyClass()
{
sig = new QSignal;
}
MyClass::~MyClass()
{
delete sig;
}
void MyClass::doSomething()
{
// ... does something
sig->activate(); // activates the signal
}
void MyClass::connect( QObject *receiver, const char *member )
{
sig->connect( receiver, member );
}
See also
See also isBlocked().
An activated signal disappears into hyperspace if it is blocked.
See also isBlocked(), activate(), and QObject::blockSignals().
See also disconnect() and QObject::connect().
See also connect() and QObject::disconnect().
The signal is not blocked by default.
See also block() and QObject::signalsBlocked().
Since QObject is a private base class, we have added this function, which calls QObject::name().
Since QObject is a private base class, we have added this function, which calls QObject::setName().
This file is part of the Qtopia platform, copyright © 1995-2005 Trolltech, all rights reserved.
| Copyright © 2005 Trolltech | Trademarks | Qtopia version 2.2.0
|