diff options
author | Harald Fernengel <harry@kdevelop.org> | 2004-09-04 15:09:48 +0000 |
---|---|---|
committer | Harald Fernengel <harry@kdevelop.org> | 2004-09-04 15:09:48 +0000 |
commit | 970414569e3cbd6e2d99a3bd38129448a31a8f98 (patch) | |
tree | 7aba5ff0ee1eb1609a1f57bd94f0ce2edea0bb01 /qt | |
parent | 4a77a2dd972e817a08a4571220c8406709af8c48 (diff) |
patch by Jérôme Lodewyck <lodewyck@clipper.ens.fr> to enable integration
of an existing connection into the Qt main loop
Diffstat (limited to 'qt')
-rw-r--r-- | qt/connection.cpp | 7 | ||||
-rw-r--r-- | qt/connection.h | 1 | ||||
-rw-r--r-- | qt/integrator.cpp | 9 |
3 files changed, 15 insertions, 2 deletions
diff --git a/qt/connection.cpp b/qt/connection.cpp index ba161504..f426d698 100644 --- a/qt/connection.cpp +++ b/qt/connection.cpp @@ -156,6 +156,13 @@ void* Connection::virtual_hook( int, void* ) { } +void Connection::dbus_connection_setup_with_qt_main (DBusConnection *connection) +{ + d->setConnection( connection ); +} + + + ///////////////////////////////////////////////////////// #include "connection.moc" diff --git a/qt/connection.h b/qt/connection.h index ca962b10..7cb922e3 100644 --- a/qt/connection.h +++ b/qt/connection.h @@ -50,6 +50,7 @@ namespace DBusQt { Message borrowMessage(); Message popMessage(); void stealBorrowMessage( const Message& ); + void dbus_connection_setup_with_qt_main (DBusConnection *connection); public slots: void open( const QString& ); diff --git a/qt/integrator.cpp b/qt/integrator.cpp index 5cf72644..fff32b39 100644 --- a/qt/integrator.cpp +++ b/qt/integrator.cpp @@ -162,13 +162,18 @@ Integrator::Integrator( DBusServer *server, QObject *parent ) void Integrator::slotRead( int fd ) { - Q_UNUSED( fd ); + QIntDictIterator<Watch> it( m_watches ); + for ( ; it.current(); ++it ) + dbus_watch_handle ( it.current()->watch, DBUS_WATCH_READABLE ); + emit readReady(); } void Integrator::slotWrite( int fd ) { - Q_UNUSED( fd ); + QIntDictIterator<Watch> it( m_watches ); + for ( ; it.current(); ++it ) + dbus_watch_handle ( it.current()->watch, DBUS_WATCH_WRITABLE ); } void Integrator::slotTimeout( DBusTimeout *timeout ) |