TQSignal Class

Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# TQSignal Class Reference

The TQSignal class can be used to send signals for classes that don't inherit TQObject. More...

`#include <ntqsignal.h>`

Inherits TQObject.

List of all member functions.

## Public Members

- TQSignal ( TQObject * parent = 0, const char * name = 0 )
- ~TQSignal ()
- bool connect ( const TQObject * receiver, const char * member )
- bool disconnect ( const TQObject * receiver, const char * member = 0 )
- void activate ()
- bool isBlocked () const (obsolete)
- void block ( bool b ) (obsolete)
- void setParameter ( int value ) (obsolete)
- int parameter () const (obsolete)
- void setValue ( const TQVariant & value )
- TQVariant value () const

## Detailed Description

The TQSignal class can be used to send signals for classes that don't inherit TQObject.

If you want to send signals from a class that does not inherit TQObject, you can create an internal TQSignal 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 TQMenuData class, which is not a TQObject.

In general, we recommend inheriting TQObject instead. TQObject provides much more functionality.

You can set a single TQVariant parameter for the signal with setValue().

Note that TQObject is a private base class of TQSignal, i.e. you cannot call any TQObject member functions from a TQSignal object.

Example:

            #include <ntqsignal.h>

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

                void doSomething();

                void connect( TQObject *receiver, const char *member );

            private:
                TQSignal *sig;
            };

            MyClass::MyClass()
            {
                sig = new TQSignal;
            }

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

            void MyClass::doSomething()
            {
                // ... does something
                sig->activate(); // emits the signal
            }

            void MyClass::connect( TQObject *receiver, const char *member )
            {
                sig->connect( receiver, member );
            }

See also Input/Output and Networking and Miscellaneous Classes.

## Member Function Documentation

### TQSignal::TQSignal ( TQObject * parent = 0, const char * name = 0 )

Constructs a signal object called name, with the parent object parent. These arguments are passed directly to TQObject.

### TQSignal::~TQSignal ()

Destroys the signal. All connections are removed, as is the case with all TQObjects.

### void TQSignal::activate ()

Emits the signal. If the platform supports TQVariant and a parameter has been set with setValue(), this value is passed in the signal.

### void TQSignal::block ( bool b )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

Blocks the signal if b is TRUE, or unblocks the signal if b is FALSE.

An activated signal disappears into hyperspace if it is blocked.

See also isBlocked(), activate(), and TQObject::blockSignals().

### bool TQSignal::connect ( const TQObject * receiver, const char * member )

Connects the signal to member in object receiver.

See also disconnect() and TQObject::connect().

### bool TQSignal::disconnect ( const TQObject * receiver, const char * member = 0 )

Disonnects the signal from member in object receiver.

See also connect() and TQObject::disconnect().

### bool TQSignal::isBlocked () const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

Returns TRUE if the signal is blocked, or FALSE if it is not blocked.

The signal is not blocked by default.

See also block() and TQObject::signalsBlocked().

### int TQSignal::parameter () const

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### void TQSignal::setParameter ( int value )

This function is obsolete. It is provided to keep old source working. We strongly advise against using it in new code.

### void TQSignal::setValue ( const TQVariant & value )

Sets the signal's parameter to value

### TQVariant TQSignal::value () const

Returns the signal's parameter

This file is part of the TQt toolkit. Copyright © 1995-2007 Trolltech. All Rights Reserved.