summaryrefslogtreecommitdiffstats
path: root/tqtinterface/qt4/src/kernel/tqsignalmapper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tqtinterface/qt4/src/kernel/tqsignalmapper.cpp')
-rw-r--r--tqtinterface/qt4/src/kernel/tqsignalmapper.cpp183
1 files changed, 0 insertions, 183 deletions
diff --git a/tqtinterface/qt4/src/kernel/tqsignalmapper.cpp b/tqtinterface/qt4/src/kernel/tqsignalmapper.cpp
deleted file mode 100644
index 560640b..0000000
--- a/tqtinterface/qt4/src/kernel/tqsignalmapper.cpp
+++ /dev/null
@@ -1,183 +0,0 @@
-/****************************************************************************
-**
-** Implementation of TQSignalMapper class
-**
-** Created : 980503
-**
-** Copyright (C) 2010 Timothy Pearson and (C) 1992-2008 Trolltech ASA.
-**
-** This file is part of the kernel module of the TQt GUI Toolkit.
-**
-** This file may be used under the terms of the GNU General
-** Public License versions 2.0 or 3.0 as published by the Free
-** Software Foundation and appearing in the files LICENSE.GPL2
-** and LICENSE.GPL3 included in the packaging of this file.
-** Alternatively you may (at your option) use any later version
-** of the GNU General Public License if such license has been
-** publicly approved by Trolltech ASA (or its successors, if any)
-** and the KDE Free TQt Foundation.
-**
-** Please review the following information to ensure GNU General
-** Public Licensing requirements will be met:
-** http://trolltech.com/products/qt/licenses/licensing/opensource/.
-** If you are unsure which license is appropriate for your use, please
-** review the following information:
-** http://trolltech.com/products/qt/licenses/licensing/licensingoverview
-** or contact the sales department at sales@trolltech.com.
-**
-** This file may be used under the terms of the Q Public License as
-** defined by Trolltech ASA and appearing in the file LICENSE.TQPL
-** included in the packaging of this file. Licensees holding valid TQt
-** Commercial licenses may use this file in accordance with the TQt
-** Commercial License Agreement provided with the Software.
-**
-** This file is provided "AS IS" with NO WARRANTY OF ANY KIND,
-** INCLUDING THE WARRANTIES OF DESIGN, MERCHANTABILITY AND FITNESS FOR
-** A PARTICULAR PURPOSE. Trolltech reserves all rights not granted
-** herein.
-**
-**********************************************************************/
-
-#include "tqsignalmapper.h"
-#ifndef TQT_NO_SIGNALMAPPER
-#include "tqptrdict.h"
-
-struct TQSignalMapperRec {
- TQSignalMapperRec()
- {
- has_int = 0;
- str_id = TQString::null;
- }
-
- uint has_int:1;
-
- int int_id;
- TQString str_id;
- // extendable to other types of identification
-};
-
-class TQSignalMapperData {
-public:
- TQSignalMapperData()
- {
- dict.setAutoDelete( TRUE );
- }
-
- TQPtrDict<TQSignalMapperRec> dict;
-};
-
-/*!
- \class TQSignalMapper tqsignalmapper.h
- \brief The TQSignalMapper class bundles Q_SIGNALS from identifiable senders.
-
- \ingroup io
-
- This class collects a set of parameterless Q_SIGNALS, and re-emits
- them with integer or string parameters corresponding to the object
- that sent the signal.
-*/
-
-/*!
- Constructs a TQSignalMapper called \a name, with parent \a parent.
- Like all TQObjects, it will be deleted when the parent is deleted.
-*/
-TQSignalMapper::TQSignalMapper( TQObject* parent, const char* name ) :
- TQObject( parent, name )
-{
- d = new TQSignalMapperData;
-}
-
-/*!
- Destroys the TQSignalMapper.
-*/
-TQSignalMapper::~TQSignalMapper()
-{
- delete d;
-}
-
-/*!
- Adds a mapping so that when map() is signaled from the given \a
- sender, the signal mapped(\a identifier) is emitted.
-
- There may be at most one integer identifier for each object.
-*/
-void TQSignalMapper::setMapping( const TQObject* sender, int identifier )
-{
- TQSignalMapperRec* rec = getRec(sender);
- rec->int_id = identifier;
- rec->has_int = 1;
-}
-
-/*!
- \overload
-
- Adds a mapping so that when map() is signaled from the given \a
- sender, the signal mapper(\a identifier) is emitted.
-
- There may be at most one string identifier for each object, and it
- may not be empty.
-*/
-void TQSignalMapper::setMapping( const TQObject* sender, const TQString &identifier )
-{
- TQSignalMapperRec* rec = getRec(sender);
- rec->str_id = identifier;
-}
-
-/*!
- Removes all mappings for \a sender. This is done automatically
- when mapped objects are destroyed.
-*/
-void TQSignalMapper::removeMappings( const TQObject* sender )
-{
- d->dict.remove((void*)sender);
-}
-
-void TQSignalMapper::removeMapping()
-{
- removeMappings(const_cast<const TQObject*>(static_cast<TQObject*>(sender())));
-}
-
-/*!
- This slot emits Q_SIGNALS based on which object sends Q_SIGNALS to it.
-*/
-void TQSignalMapper::map()
-{
- const TQObject* s = const_cast<const TQObject*>(static_cast<TQObject*>(sender()));
- TQSignalMapperRec* rec = d->dict.find( (void*)s );
- if ( rec ) {
- if ( rec->has_int )
- emit mapped( rec->int_id );
- if ( !rec->str_id.isEmpty() )
- emit mapped( rec->str_id );
- }
-}
-
-TQSignalMapperRec* TQSignalMapper::getRec( const TQObject* sender )
-{
- TQSignalMapperRec* rec = d->dict.find( (void*)sender );
- if (!rec) {
- rec = new TQSignalMapperRec;
- d->dict.insert( (void*)sender, rec );
- connect( sender, TQT_SIGNAL(destroyed()), this, TQT_SLOT(removeMapping()) );
- }
- return rec;
-}
-
-/*!
- \fn void TQSignalMapper::mapped(int)
-
- This signal is emitted when map() is signaled from an object that
- has an integer mapping set.
-
- \sa setMapping()
-*/
-
-/*!
- \overload void TQSignalMapper::mapped(const TQString&)
-
- This signal is emitted when map() is signaled from an object that
- has a string mapping set.
-
- \sa setMapping()
-*/
-#endif //TQT_NO_SIGNALMAPPER