glibmm: Glib::SignalProxyDetailed< R(T...)> Class Template Reference
Proxy for signals with any number of arguments and possibly a detailed name. More...
#include <glibmm/signalproxy.h>
Public Types | |
using | SlotType = sigc::slot< R(T...)> |
using | VoidSlotType = sigc::slot< void(T...)> |
Public Member Functions | |
SignalProxyDetailed (ObjectBase* obj, const SignalProxyInfo* info, const Glib::ustring& detail_name) | |
sigc::connection | connect (const SlotType& slot, bool after) |
Connects a signal handler to a signal. More... | |
sigc::connection | connect (SlotType&& slot, bool after) |
Connects a signal handler to a signal. More... | |
sigc::connection | connect_notify (const VoidSlotType& slot, bool after=false) |
Connects a signal handler without a return value to a signal. More... | |
sigc::connection | connect_notify (VoidSlotType&& slot, bool after=false) |
Connects a signal handler without a return value to a signal. More... | |
Public Member Functions inherited from Glib::SignalProxyDetailedBase | |
~SignalProxyDetailedBase () noexcept | |
void | emission_stop () |
Stops the current signal emission (not in libsigc++) More... | |
Public Member Functions inherited from Glib::SignalProxyBase | |
SignalProxyBase (Glib::ObjectBase* obj) | |
Additional Inherited Members | |
Protected Member Functions inherited from Glib::SignalProxyDetailedBase | |
SignalProxyDetailedBase (Glib::ObjectBase* obj, const SignalProxyInfo* info, const Glib::ustring& detail_name) | |
Creates a proxy for a signal that can be emitted by obj. More... | |
sigc::slot_base& | connect_impl_ (bool notify, const sigc::slot_base& slot, bool after) |
Connects a signal handler to a signal. More... | |
sigc::slot_base& | connect_impl_ (bool notify, sigc::slot_base&& slot, bool after) |
Connects a signal handler to a signal. More... | |
Protected Attributes inherited from Glib::SignalProxyBase | |
ObjectBase* | obj_ |
Detailed Description
template<class R, class... T>
class Glib::SignalProxyDetailed< R(T...)>
Proxy for signals with any number of arguments and possibly a detailed name.
Use the connect() or connect_notify() method, with sigc::mem_fun() or sigc::ptr_fun() to connect signal handlers to signals.
This is the primary template. There is a specialization for signal handlers that return void
. The specialization has no connect_notify() method, and the after parameter in its connect() method has a default value.
Member Typedef Documentation
using Glib::SignalProxyDetailed< R(T...)>::SlotType = sigc::slot<R(T...)> |
using Glib::SignalProxyDetailed< R(T...)>::VoidSlotType = sigc::slot<void(T...)> |
Constructor & Destructor Documentation
|
inline |
Member Function Documentation
|
inline |
Connects a signal handler to a signal.
For instance, connect(sigc::mem_fun(*this, &TheClass::on_something), false);
For some signal handlers that return a value, it can make a big difference whether you connect before or after the default signal handler. Examples:
- Gio::Application::signal_command_line() calls only one signal handler. A handler connected after the default handler will never be called.
- X event signals, such as Gtk::Widget::signal_button_press_event(), stop calling signal handlers as soon as a called handler returns
true
. If the default handler returnstrue
, a handler connected after it will not be called.
- Parameters
-
slot The signal handler, usually created with sigc::mem_fun() or sigc::ptr_fun(). after Whether this signal handler should be called before or after the default signal handler.
- Returns
- A sigc::connection.
|
inline |
Connects a signal handler to a signal.
|
inline |
Connects a signal handler without a return value to a signal.
By default, the signal handler will be called before the default signal handler.
For instance, connect_notify( sigc::mem_fun(*this, &TheClass::on_something) );
If the signal requires signal handlers with a return value of type T, connect_notify() binds return T()
to the connected signal handler. For instance, if the return type is bool
, the following two calls are equivalent.
- Parameters
-
slot The signal handler, which should have a void
return type, usually created with sigc::mem_fun() or sigc::ptr_fun().after Whether this signal handler should be called before or after the default signal handler.
- Returns
- A sigc::connection.
|
inline |
Connects a signal handler without a return value to a signal.