The Gtk--'s signal system function and object prototypes
All these are with no arguments and a return type and they scale
directly to many arguments. These might be useful in finding compile
time errors coming from the compiler. If there's any situations that
these cannot handle, let me know.
What kind of Signal -objects are there available?
(gtk-- provides signals up to 5 parameters)
Signal0 mysignal;
Signal1<int> mysignal_with_one_parameter;
Signal0_r<rettype> signal_with_return_type;
Signal1_r<rettype,int> signal_with_return_type_and_one_parameter;
Signals used for interfacing with C widget hierarchy
Signal_proxy0<rettype, widgettype> signal0;
Signal_proxy1<rettype, widgettype,P1> signal1;
What kind of connect function signatures does gtk-- provide?
template<class rettype, class T>
Connection connect_to_method(Signal0_r<rettype>& signal, T* receiver, rettype (T::*method)());
template<class T>
Connection connect_to_method(Signal0 &signal, T* receiver, void (T::*method()));
template<class rettype, class T, class E>
Connection connect_to_method(Signal0_r<rettype>& signal, T* receiver, rettype (T::*method)(E), E cbd);
template<class T, class E>
Connection connect_to_method(Signal0 &signal, T* receiver, void (T::*method)(E), E cbd);
template<class rettype>
Connection connect_to_function(Signal0_r<rettype> &signal, rettype(*func)());
template<class rettype, class M>
Connection connect_to_signal(Signal0_r<rettype> &signal, M& functionobject);
Connection connect_to_function(Signal0 &signal, void (*func)());
template<class M>
Connection connect_to_signal(Signal0 &signal, M& functionobject);
template<class rettype, class E>
Connection connect_to_function(Signal0_r<rettype> &signal, rettype (*func)(E),E cbd);
template<class rettype, class M, class E>
Connection connect_to_signal(Signal0_r<rettype> &signal, M& functionobject, E cbd);
template<class E>
Connection connect_to_function(Signal0 &signal, void (*func)(E), E cbd);
template<class E, class M>
Connection connect_to_signal(Signal0 &signal, M& functionobject, E cbd);
The next ones are for interfacing with C language widget hierarchy
template<class rettype, class widgettype, class T>
Connection connect_to_method(Signal_proxy0<rettype, widgettype> &signal, T* receiver, rettype (T::*method)());
template<class rettype,class widgettype, class T, class E>
Connection connect_to_method(Signal_proxy0<rettype,widgettype> &signal, T *receiver, rettype (T::*method)(E), E arg );
template<class rettype,class widgettype>
Connection connect_to_function(Signal_proxy0<rettype,widgettype> &signal, rettype (*method)() );
template<class rettype,class widgettype, class M>
Connection connect_to_signal(Signal_proxy0<rettype,widgettype> &signal, M &functionobject );
template<class rettype, class widgettype, class E>
Connection connect_to_function(Signal_proxy0<rettype,widgettype> &signal, rettype (*method)(E), E arg );
template<class rettype, class widgettype, class M, class E>
Connection connect_to_signal(Signal_proxy0<rettype,widgettype> &signal, M &functionobject, E arg );
Tero Pulkkinen (terop@modeemi.cs.tut.fi)