From: <gk...@ke...> - 2010-12-26 15:52:59
|
Module: qt-gstreamer Branch: master Commit: 6c56049ceba594fe8f0dbe59874c005ad8ecf403 URL: http://cgit.freedesktop.org/gstreamer/qt-gstreamer/commit/?id=6c56049ceba594fe8f0dbe59874c005ad8ecf403 Author: George Kiagiadakis <geo...@co...> Date: Fri Dec 24 20:57:25 2010 +0200 Implement a Qt-like signal connection/disconnection system. Features: * New QGlib::disconnect method that behaves more or less like QObject::disconnect. * Automatic disconnection when either the sender or the receiver is destroyed (this adds the limitation that the receiver must inherit QObject, for now) * Future-proof. The exported methods are designed to be able to support different forms of connection in the future (such as connecting an arbitrary functor object instead of a member function). Support for different types of receivers (i.e. ones that do not inherit QObject) is also there. Other changes: * Moved all the connect/disconnect related stuff in connect.{h,cpp} * Removed the ugly SignalHandler class. QGlib::connect now returns bool. --- Doxyfile.in | 3 +- examples/player/main.cpp | 4 +- src/CMakeLists.txt | 2 + src/QGlib/Connect | 1 + src/QGlib/connect.cpp | 523 ++++++++++++++++++++++++++++++ src/QGlib/connect.h | 212 ++++++++++++ src/QGlib/connectimpl.h | 115 ++++---- src/QGlib/emitimpl.h | 3 +- src/QGlib/signal.cpp | 138 -------- src/QGlib/signal.h | 109 +------ src/QGst/Ui/videowidget.cpp | 15 +- tests/auto/bustest.cpp | 2 +- tests/auto/signalstest.cpp | 84 +++++- tests/compilation/CompilationTests.cmake | 44 +++ 14 files changed, 933 insertions(+), 322 deletions(-) Diff: http://cgit.freedesktop.org/gstreamer/qt-gstreamer/diff/?id=6c56049ceba594fe8f0dbe59874c005ad8ecf403 |